|
|
|
script แจ้งเตือนค่าว่าง ไม่ทำงานครับ ผมทำพลาดตรงไหนครับ |
|
|
|
|
|
|
|
บรรทัดไหนที่ไม่ทำงานตามที่ออกแบบไว้ครับ
|
|
|
|
|
Date :
2016-10-26 13:44:50 |
By :
apisitp |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ต้องใส่ even ด้วยหรือปล่าวครับ เช่น onclick onblur functionจะได้ทำงาน
|
|
|
|
|
Date :
2016-10-26 13:46:27 |
By :
thesin18598 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
name="filUpload<?php echo $i;?>"
กับ document.frmEdit.filUpload.value
ไม่เท่ากันนะ
|
|
|
|
|
Date :
2016-10-26 14:02:46 |
By :
progamer2000 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
คุณดู code ตอนมัน render หน้าเวบนะคระบว่า input file name มัน มีชื่อว่าอะไรอะ
เห็นวน ใน loop while
ชื่อแต่ละตัวมันก็ควรจะเป็น
filUpload1
filUpload2
filUpload3
filUpload4
แต่ตัว javascript
document.frmEdit.filUpload.value
มัน filUpload เฉยๆ มันจะไปเชคได้ไงครับ
|
|
|
|
|
Date :
2016-10-26 14:12:45 |
By :
progamer2000 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Code (PHP)
...
<script>
function formSubmit(event){
event.preventDefault();
var form = document.frmEdit;
var input = frmEdit.getElementsByTagName('input');
var loop = input.length;
var valid = true;
var chkExt = 'csv';
for(i=0;i<loop;i++){
if(input[i].type == "file"){
var ext = input[i].value.split('.');
ext = ext[ext.length-1].toLowerCase();
if(ext != chkExt){
valid = false;
}
}
}
if(valid){
document.frmEdit.submit();
}else{
alert('กรุณาใส่ไฟล์ฐานข้อมูลCSVเท่านั้น');
}
}
</script>
...
<form name="frmEdit" method="post" action="editpicsave1.php" enctype="multipart/form-data" onSubmit="formSubmit(event);">
...
|
|
|
|
|
|
|
|
|
|
|
|
|
|
หา jquery .each ครับ เช็คทุกๆ input ....
|
|
|
|
|
Date :
2016-10-26 15:03:09 |
By :
apisitp |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
แนะนำใช้ jquery ชีวิตง่ายขึ้นเยอะ 55
|
|
|
|
|
Date :
2016-10-26 15:26:13 |
By :
progamer2000 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ยังแก้ไม่ได้เลยครับรบกวนผู้รู้หน่อยครับบ
|
|
|
|
|
Date :
2016-10-26 19:25:58 |
By :
fzjameza |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ใช้ คลาส อ้างอิง แทน name (ไม่ต้องเอา name ออกเพราะใช้อ้างอิงตอน post)
Code (JavaScript)
<input type=file class='fileuploads' name="<?=xxxxx?>">
<input type=file class='fileuploads' name="<?=yyyyy?>">
<script>
var upload = frmEdit.getElementsByClassName('flieUploads');
|
|
|
|
|
Date :
2016-10-26 19:57:57 |
By :
Chaidhanan |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ผมลองก็อป html มาทดสอบดูก็ทำงานได้ปกตินะครับ
Code (PHP)
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
</head>
<body>
<h1 align="center">ข้อมูลนักเรียน</h1>
<script>
function formSubmit(event){
event.preventDefault();
var form = document.frmEdit;
var input = frmEdit.getElementsByTagName('input');
var loop = input.length;
var valid = true;
var chkExt = 'csv';
for(i=0;i<loop;i++){
if(input[i].type == "file"){
var ext = input[i].value.split('.');
ext = ext[ext.length-1].toLowerCase();
if(ext != chkExt){
valid = false;
}
}
}
if(valid){
document.frmEdit.submit();
}else{
alert('กรุณาใส่ไฟล์ฐานข้อมูลCSVเท่านั้น');
}
}
</script>
<form name="frmEdit" method="post" action="editpicsave1.php" enctype="multipart/form-data" onSubmit="formSubmit(event);">
<table width="70%" border="1" align="center">
<th width="40%"> <div align="center">ชือนักเรียน</div></th>
<th width="15%"> <div align="center">รหัสนักเรียน </div></th>
<th width="10%"> <div align="center">ชั้นมัธยม</div></th>
<th width="10%">ห้อง</th>
<th width="15%">ผลการเรียน</th>
<th width="20%"> <div align="center">แก้ไขข้อมูล</div></th>
</tr>
<input type="hidden" name="hdnid1" value="1">
<tr>
<td>a</td>
<td><div align="center">b</div></td>
<td align="center">c</td>
<td align="center">d</td>
<td align="center">img/1.csv</td>
<td align="center"><input type="file" name="filUpload1" size="20" value="img/1.csv"></td>
</tr>
<tr>
<td>a</td>
<td><div align="center">b</div></td>
<td align="center">c</td>
<td align="center">d</td>
<td align="center">img/1.csv</td>
<td align="center"><input type="file" name="filUpload2" size="20" value="img/1.csv"></td>
</tr>
</table>
<p> </p>
<div align="center"><input type="submit" name="btnSubmit" value="บันทึกข้อมูล" > <a href="editm1.php"> ย้อนกลับ</a></div>
<input type="hidden" name="hdnLine" value="1">
</form>
</body>
</html>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ได้ละครับผมขอบคุณมากครับบบบบ
|
|
|
|
|
Date :
2016-10-26 22:24:06 |
By :
fzjameza |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
คงต้องไล่กระบวนการใหม่ จากนั้นทำความเข้าใจการทำงานของ javascript ลองหัด Debug พอรู้แล้วจะเพิ่มจะเติมจะแต่งมันก็ง่ายครับ...ยิ่งถ้าหาอ่าน jquery ซึ่งข้อมูลมันมีมากมาย เรื่องพวกนี้ก็จะง่ายขึ้นครับ...ถ้าจะดัก Error ช่องว่าง ปลั๊กอินสำเร็จ วิธีการมีเยอะครับ...ถ้าไม่รีบ(ซึ่งเดาว่าน่าจะรีบ) ค่อยหา validate jquery มี ตย.เยอะครับ อยู่ที่ว่าจะเลือกอันไหน....
ที่สำคัญ พวก javascript หรือ jquery ถ้าเลือก Element ถูกมันก็จะง่าย เลือกใช้ได้หมดครับ ทั้ง id class ฯลฯ .... ถ้าไม่ใช่โปรเจ็ครีบจบ ศึกษาเพิ่มเติมครับ
|
|
|
|
|
Date :
2016-10-27 08:51:01 |
By :
apisitp |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ใช้ได้ละครับ ผมพลาดเอง ผมลอง JPG ตัวใหญ่ แล้วใส่ข้อมูล .jpg ตัวเล็กไปทำให้ติด alert ขอบคุณทุกคนมากครับบ ใกล้เสร็จแล้ว
|
|
|
|
|
Date :
2016-10-27 09:45:19 |
By :
fzjameza |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ลองหาแล้วเพิ่มเติมดูครับ แก้ปัญหานามสกุลไฟล์ตัวใหญ่ .toLowerCase()
var ext = $(this).val().split('.').pop().toLowerCase();
if($.inArray(ext, ['gif','png','jpg','jpeg']) == -1) {
alert('ไฟล์ไม่ถูกต้อง');
}else{
alert('ไฟล์ถูกต้อง');
}
|
|
|
|
|
Date :
2016-10-27 13:31:16 |
By :
apisitp |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Load balance : Server 01
|