|
|
|
จะเช็คนามสกุลไฟล์อย่างไร เมื่อ มีการ Upload file มากกว่า 1 ไฟล์ |
|
|
|
|
|
|
|
คือผมหัดเขียนโปรแกรม webboard โดยเวลาตั้งกระทู้ใหม่ ผมจะมี input file อยู่ 2 อัน คือแยกเป็น รับแต่ไฟล์ ภาพ และ ไฟล์เอกสาร โดยโปรแกรมจะสามารถตรวจสอบก่อนว่า ข้อมูล รายละเอียด ครบหรือไม่ ถ้าไม่ครบ จะมีการเตือน และกลับไปแก้ไข .. แต่ถ้า มีการกรอกรายละเอียดครบหมดแล้ว อยากให้โปรแกรม ตรวจสอบด้วย ว่ามีการอัลโหลดไฟล์มาหรือไม่ และตรวจสอบว่าไฟล์นั้น ถูกต้องตามที่กำหนดไว้หรือปล่าว . . . คือผมสามารถตรวจสอบไฟล์ภาพได้แล้ว ติดตรงที่ ตรวจสอบไฟล์ เอกสาร คือผมไม่รู้ว่าจะโค้ดตรวจสอบไว้ตรงไหนดี
Code (PHP)
<!--<meta http-equiv=Content-Type content="text/html; charset=tis-620"> -->
<META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=windows-874">
<?php
include("config.inc.php");
//print_r($_POST);
//print_r($_FILES);
if (empty($_POST['qtopic']) || empty($_POST['qmessage']) || empty($_POST['qname']) || empty($_POST['qdiv'])) {
echo "<font color=red><b><center><h3><B>ใส่ข้อมูลไม่ครบ</B></h></center></b></font><br>";
echo "<a href=javascript:history.back();><center>กลับไปแก้ไข</center></a>";
exit();
} //end if empty
if(is_uploaded_file($_FILES['images']['tmp_name'])) {
$imgname = date("YmdHis").$type;
$imgtype = $_FILES['images']['name'];
list($name,$type)= explode(".",$imgtype);
echo "TYPE==".$type;
if((!$type=="jpg") || (!$type=="gif")|| (!$type=="bmp")) {
echo "<center>ไฟล์ผิดพลาด</center>";
echo "<a href=javascript:history.back();><center>กลับไปแก้ไข</center></a>";
exit();
}
else{
}
}
//บันทึกข้อมูลลงสู่ฐานข้อมูล
$qdate=date("j - F - Y");
$qip=$_SERVER['REMOTE_ADDR'];
$sql="insert into $tblquestion (qid, qtopic, qmessage, qname, qdiv, qdate, qreply, qip, images, doc) values ('$qid', '$qtopic', '$qmessage', '$qname', '$qdiv', '$qdate', 0, '$qip', '$imgname', '$docname')";
$result=mysql_db_query($db,$sql);
if ($result){
echo"<center>";
echo "<font color=green><h3><b>บันทึกข้อมูลเรียบร้อย</b></h></font><br><br>";
echo "<a href=main_webboard.php>กลับไปหน้าเว็ปบอร์ด</a>";
echo"</center>";
}else {
echo"<center>";
echo "<font color=red><h3><b>ไม่สามารถเพิ่มข้อมูลได้</b></h></font><br>";
echo"<a href=main_webboard.php>กลับไปหน้าเว็บบอร์ด</a>";
echo"</center>";
}
mysql_close();
?>
Tag : PHP, MySQL
|
|
|
|
|
|
Date :
2011-07-01 11:02:40 |
By :
SAthpaorn |
View :
2937 |
Reply :
7 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ใช้ if ก็ถูกแล้วน่ะครับ ว่าแต่ติดตรงไหนครับ
|
|
|
|
|
Date :
2011-07-01 11:55:55 |
By :
webmaster |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
if อันนี้ มันตรวจแค่ไฟล์ ที่เป็น รูปภาพครับ อยากให้มันตรวจสอบไฟล์ ที่เป็น เอกสารด้วย ถ้าเกิดมีการ อัพโหลดไฟล์ เอกสารมาด้วย เพราะ ที่ฟอร์มตั้งกระทู้ จะมีให้อัพโหลด 2 อันครับคือ ไม่อัพโหลดก็ได้ , อัพรูปอย่างเดียว , อัพเอกสารอย่างเดียว และ อัพมาทั้ง 2 แบบ
|
|
|
|
|
Date :
2011-07-01 12:36:30 |
By :
SAthaporn |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Code (PHP)
if((!$type=="jpg") || (!$type=="gif")|| (!$type=="bmp")) {
echo "<center>ไฟล์ผิดพลาด</center>";
echo "<a href=javascript:history.back();><center>กลับไปแก้ไข</center></a>";
exit();
}
if((!$type=="jpg") || (!$type=="gif")|| (!$type=="bmp")) {
echo "<center>ไฟล์ผิดพลาด</center>";
echo "<a href=javascript:history.back();><center>กลับไปแก้ไข</center></a>";
exit();
}
if((!$type=="jpg") || (!$type=="gif")|| (!$type=="bmp")) {
echo "<center>ไฟล์ผิดพลาด</center>";
echo "<a href=javascript:history.back();><center>กลับไปแก้ไข</center></a>";
exit();
}
//***** Do ****//
ใส่ if ได้หลายตัวครับ ไม่ต้องมี else ครับ เพราะคุณใช้ exit(); ไปแล้ว
|
|
|
|
|
Date :
2011-07-01 12:58:39 |
By :
webmaster |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
$imgname = date("YmdHis").$type; ถ้าต้องการเชื่อมให้กลับไปเปลี่ยนไฟล์ภาพตามที่อัพโหลดมา ทำยังไงคับ เพราะ ไฟล์ที่เซฟมันมีแค่ชื่อ ไม่มีนามสกุลไฟล์ที่อัพโหลดมา
|
|
|
|
|
Date :
2011-07-01 13:12:31 |
By :
SAthaporn |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Code (PHP)
<!--<meta http-equiv=Content-Type content="text/html; charset=tis-620"> -->
<META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=windows-874">
<?php
include("config.inc.php");
//print_r($_POST);
//print_r($_FILES);
if (empty($_POST['qtopic']) || empty($_POST['qmessage']) || empty($_POST['qname']) || empty($_POST['qdiv'])) {
echo "<font color=red><b><center><h3><B>ใส่ข้อมูลไม่ครบ</B></h></center></b></font><br>";
echo "<a href=javascript:history.back();><center>กลับไปแก้ไข</center></a>";
exit();
} //end if empty
if (!empty($_FILES['images']) or !empty($_file['doc'])) {
if (is_uploaded_file($_FILES['images']['tmp_name']) or is_uploaded_file($_FILES['doc']['tmp_name'])){
$imgname = date("U");
$imgtype = $_FILES['images']['name'];
$docname = date("U");
$doctype = $_FILES['doc']['name'];
list($name,$type)=explode(".",$imgtype);
list($name,$type2)=explode(".",$doctype);
if((!$type=="jpg") || (!$type=="gif") || (!$type=="jpeg")){
echo "<center>Img Error</center>";
echo "<a href=javascript:history.back();><center>กลับไปแก้ไข</center></a>";
exit();
}
else{
move_uploaded_file($_FILES['images']['tmp_name'],"upload_images/".$imgname);
}
if((!$type2=="doc") || (!$type2=="xls") || (!$type2=="pdf")){
echo "<center>Docu Error</center>";
echo "<a href=javascript:history.back();><center>กลับไปแก้ไข</center></a>";
exit();
}
else{
move_uploaded_file($_FILES['doc']['tmp_name'],"upload_images/".$docname);
}
if((!$type=="jpg") || (!$type=="gif") || (!$type=="jpeg") || (!$type2=="doc") || (!$type2=="xls") || (!$type2=="pdf")){
echo "<center>Docu Error</center>";
echo "<a href=javascript:history.back();><center>กลับไปแก้ไข</center></a>";
exit();
}
else{
move_uploaded_file($_FILES['images']['tmp_name'],"upload_images/".$imgname);
move_uploaded_file($_FILES['doc']['tmp_name'],"upload_images/".$docname);
}
//บันทึกข้อมูลลงสู่ฐานข้อมูล
$qdate=date("j - F - Y"); $qip=$_SERVER['REMOTE_ADDR'];
$sql="insert into $tblquestion (qid, qtopic, qmessage, qname, qdiv, qdate, qreply, qip, images, doc) values ('$qid', '$qtopic', '$qmessage', '$qname', '$qdiv', '$qdate', 0, '$qip', '$imgname', '$docname')";
$result=mysql_db_query($db,$sql);
if ($result){
echo"<center>";
echo "<font color=green><h3><b>บันทึกข้อมูลเรียบร้อย</b></h></font><br><br>";
echo "<a href=main_webboard.php>กลับไปหน้าเว็ปบอร์ด</a>";
echo"</center>";
}else {
echo"<center>";
echo "<font color=red><h3><b>ไม่สามารถเพิ่มข้อมูลได้</b></h></font><br>";
echo"<a href=main_webboard.php>กลับไปหน้าเว็บบอร์ด</a>";
echo"</center>";
}
mysql_close();
?>
*อันนี้ลองแก้ดู มันยัง error อยู่ ดูให้หน่อยครับ ผมผิดตรงไหน
|
|
|
|
|
Date :
2011-07-01 13:29:29 |
By :
SAthaporn |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ทำได้ละครับ อิอิ . . ตอนนี้มาติดตรง ไม่สามารถ กรอกข้อมูลภาษาไทยได้อ่า เหอะๆ .
|
|
|
|
|
Date :
2011-07-01 15:49:40 |
By :
SAthaporn |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Load balance : Server 02
|