|
|
|
สามถามเรื่องการ upload file ภาพ หน่อยครับ พอดี code ที่ผมเขียน มานไม่ยอมทำงานครับ |
|
|
|
|
|
|
|
ใช่เลยครับ อยู่ในรูป แบบ array ครับ เดียวผมลองทำไปดูก่อน ไม่ได้เขียนนาน พอมาเขียนอีกทีลืมหมด ผม ขอบคุณมากครับ
|
|
|
|
|
Date :
2013-04-02 18:06:08 |
By :
SOUL |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Code (PHP)
<?php
for($i=1;$i<=50;$i++)
{
if($_GET["Line"] == $i)
{
$sel = "selected";
}
else
{
$sel = "";
}
?>
<option value="<?=$_SERVER["PHP_SELF"];?>?Line=<?=$i;?>" <?=$sel;?>><?=$i;?></option>
<?php
}
?>
</select>
<?php
$line = $_GET["Line"];
if($line == 0){$line=1;}
for($i=1;$i<=$line;$i++)
{
?>
<table width="950" border="1">
<tr bgcolor="#999999">
<th ></th>
<td > คนที่ <?php echo"$i";?></td>
</tr>
<tr>
<td > <div align="center">รหัสบัตรประจำตัว</div></td>
<td><input type="text" name="txtid_number<?=$i;?>" size="15"></td>
</tr>
<tr>
<th > <div align="center">ชื่อ</div></th>
<td><input type="text" name="txtname<?=$i;?>" size="20"></td>
</tr>
<tr>
<th > <div align="center">สกุล </div></th>
<td><input type="text" name="txtlast_name<?=$i;?>" size="20"></td>
</tr>
<tr>
<th > <div align="center">วัน/เดือน/ปี (เกิด)</div></th>
<td><input type="text" name="txtdate_birth<?=$i;?>" size="10"></td>
</tr>
<tr>
<th > <div align="center">ที่อยู่ </div></th>
<td ><input type="text" name="txtaddress<?=$i;?>" size="50"></td>
</tr>
<tr>
<th > <div align="center">วันที่ออกบัตร </div></th>
<td ><input type="text" name="txtdate_issue<?=$i;?>" size="10"></td>
</tr>
<tr>
<th > <div align="center">วันที่หมดอายุ </div></th>
<td ><input type="text" name="txtdate_expiry<?=$i;?>" size="10"></td>
</tr>
<tr>
<th > <div align="center">อัพโหลดรูปภาพ </div></th>
<td ><input type="file" name="filUpload<?=$i?>" >รูปแฟ้มประวัติที่ <?php echo"$i";?>
</td>
</tr>
<?php
}
?>
</table>
<input type="submit" name="submit" value="จัดเก็บข้อมูล">
<input type="hidden" name="hdnLine" value="<?=$i;?>">
</form>
code ด้านบนนี้ผมใช้เป็น code ที่ส่งข้อมูลไปครับ โดยมีการเก็บค่า เป็น array ครับ แล้วส่งไปใ้ห้ codeฝั่งรับข้อมูล ทำงานครับ แต่ดันเจอปัญหาว่า ข้อมูลที่เป็น Text สามารถ save ลงฐานข้อมูลได้ แต่ รูปภาพไม่ได้ถูก Upload ไปด้วยครับ
ด้านล่างนี่เป็น code รับข้อมูลนะครับ
Code (PHP)
<?php
include"../../cpx/cnn.php";
for($i=1;$i<=$_POST["hdnLine"];$i++)
{
if($_POST["txtid_number$i"] != "")
{
$number=$_POST["txtid_number$i"];
$name=$_POST["txtname$i"];
$l_name=$_POST["txtlast_name$i"];
$birth=$_POST["txtdate_birth$i"];
$address=$_POST["txtaddress$i"];
$issue=$_POST["txtdate_issue$i"];
$exp=$_POST["txtdate_expiry$i"];
$pic=$_POST["filUpload".$i];
echo"$pic";
//echo"$number <br> $name <br> $l_name <br> $birth <br> $address <br> $issue <br> $exp <br> $pic";
$strSQL = "INSERT INTO table_peple";
$strSQL .="(id_number,name,last_name,date_birth,address,date_issue,date_expiry,images_pic) ";
$strSQL .="VALUES ";
$strSQL .="('$number','$name','$l_name','$birth','$address','$issue','$exp','$pic' )";
$objQuery = mysql_query($strSQL);
mysql_close($objConnect);
echo"<br>บันทึก Text เรียบร้อยแล้วครับ";
}
}
$chkfolder="../../photo";
if (file_exists($chkfolder))
{
echo"<br>ค้นหา สถานที่เก็บเจอแล้ว";
}
else
{
$part=mkdir($chkfolder);
chmod($chkfolder,0777);
}
for($i=0;$i<count($_FILES["fileUpload"]["name"]);$i++)
#ใช้สำหรับการ Upload รูปโดยเฉพาะ
{
if($_FILES["fileUpload"]["name"][$i] != "")
{
if(copy($_FILES["fileUpload".$i]["tmp_name"],"$chkfolder/".$_FILES["fileUpload".$i]["name"]))
{
echo "Copy/Upload ".$_FILES["fileUpload".$i]["name"]." completed.<br>";
}
else
{
echo"<br>upload ไม่้สำเร็จครับเจ้านาย";
}
}
}
?>
|
|
|
|
|
Date :
2013-04-03 10:37:09 |
By :
SOUL |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
form
Code (PHP)
<?
for($i=1;$i<=50;$i++)
{
if($_GET["Line"] == $i)
{
$sel = "selected";
}
else
{
$sel = "";
}
?>
<option value="<?=$_SERVER["PHP_SELF"];?>?Line=<?=$i;?>" <?=$sel;?>><?=$i;?></option>
<?php
}
?>
</select>
<?php
$line = $_GET["Line"];
if($line == 0){$line=1;}
for($i=1;$i<=$line;$i++)
{
?>
<table width="950" border="1">
<tr bgcolor="#999999">
<th ></th>
<td > คนที่ <?php echo"$i";?></td>
</tr>
<tr>
<td > <div align="center">รหัสบัตรประจำตัว</div></td>
<td><input type="text" name="txtid_number[]" size="15"></td> // รับค่า txtbox[] แบบ array
</tr>
<tr>
<th > <div align="center">ชื่อ</div></th>
<td><input type="text" name="txtname[]" size="20"></td>
</tr>
<tr>
<th > <div align="center">สกุล </div></th>
<td><input type="text" name="txtlast_name[]" size="20"></td>
</tr>
<tr>
<th > <div align="center">วัน/เดือน/ปี (เกิด)</div></th>
<td><input type="text" name="txtdate_birth[]" size="10"></td>
</tr>
<tr>
<th > <div align="center">ที่อยู่ </div></th>
<td ><input type="text" name="txtaddress[]" size="50"></td>
</tr>
<tr>
<th > <div align="center">วันที่ออกบัตร </div></th>
<td ><input type="text" name="txtdate_issue[]" size="10"></td>
</tr>
<tr>
<th > <div align="center">วันที่หมดอายุ </div></th>
<td ><input type="text" name="txtdate_expiry[]" size="10"></td>
</tr>
<tr>
<th > <div align="center">อัพโหลดรูปภาพ </div></th>
<td ><input type="file" name="filUpload[]" >รูปแฟ้มประวัติที่ <?php echo"$i";?>
</td>
</tr>
<?php
}
?>
</table>
<input type="submit" name="submit" value="จัดเก็บข้อมูล">
</form>
action
Code (PHP)
<?php
include"../../cpx/cnn.php";
$number=$_POST['txtid_number']; // ดึงค่า method จาก form
$name=$_POST["txtname"];
$l_name=$_POST["txtlast_name"];
$birth=$_POST["txtdate_birth"];
$address=$_POST["txtaddress"];
$issue=$_POST["txtdate_issue"];
$exp=$_POST["txtdate_expiry"];
$pic_tmp=$_POST["filUpload"]['tmp_name']; // file tmp
$pic_name=$_POST['filUpload']['name']; //file name
for($i=0;$i<=count($number);$i++){ // นับจำนวน array ที่มีอยู่ใน $number
if(copy($pic_tmp[$i],"$chkfolder/".$pic_name[$i])){ // copy file แต่ละ array เข้าสู้ folder
$strSQL = mysql_query("INSERT INTO tb_example (number,images_pic) VALUES ('".$number[$i]."','".$pic_name[$i]."')") or die (mysql_error()); // ถ้าเป็น True insert ข้อมูลของ array นั้นๆ
}
}
?>
|
ประวัติการแก้ไข 2013-04-03 11:12:42 2013-04-03 11:13:28
|
|
|
|
Date :
2013-04-03 11:12:01 |
By :
Ex-[S]i[L]e[N]t |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
สิ่งที่ผมต้องการคือ การรับข้อมูล เป็นแบบหลายชุด ครับโดย เราสามารถกรอกข้อมูลของคนได้มากกว่า 1 คน ถ้าผมเขียนแบบที่คุณบอกมานจะเป็นการรับข้อมูลเพียงครั้งเดียว แต่เก็บค่าเป็น array เท่านั้นเอง อะครับ นะตอนนี้ผมมีปัญหาคือ code upload ไม่ทำงาน เลยอยากจะถามครับว่า ถ้าเป็นแบบนี้ ควรแก้อย่างไรครับ
|
|
|
|
|
Date :
2013-04-06 16:36:20 |
By :
SOUL |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Load balance : Server 00
|