ช่วยเช็คหน่อยครับ insert ไม่ลง ไฟล์ upload นะครับ การใช้ $_POST
upload.php
Code
<?php
session_start() ;
include("../config.inc.php") ;
// เริ่มติดต่อฐานข้อมูล
mysql_connect($hostname, $user, $password) or die("ติดต่อฐานข้อมูลไม่ได้");
// เลือกฐานข้อมูล
mysql_select_db($dbname) or die("เลือกฐานข้อมูลไม่ได้");
$tblname='tb_user';
$result = mysql_query("select * from $tblname where user_user='$login_true_student'") or die ("Err Can not to result") ;
$dbarr = mysql_fetch_array($result) ;
?>
<CENTER>
<table border=1 cellpadding=2 cellspacing=0>
<tr bgcolor=000000>
<td height="37" align=center bgcolor="#33CC66"> <div align="center"><font size=3 color=white bgcolor=000000><strong>
ส่งงาน</strong></font></div></td>
</tr>
<tr>
<td bgcolor="#33CC99"><table border=0>
<tr>
<tr>
<tr>
<CENTER><font face="MS sans Serif">
<p><font face="MS Sans Serif"=>เลือกรายวิชา
<select name="sub_name">
<?
$host="localhost";
$user="root";
$password="1234";
$dbname="zend";
$connection=mysql_connect($host,$user,$password) or die("เชื่อมต่อฐานข้อมูลไม่ได้");
mysql_select_db($dbname) or die("ไม่สามารถเลือกฐานข้อมูลได้");
$sql="select * from tb_sub";
$dbquery=mysql_db_query($dbname,$sql);
while($result=mysql_fetch_array($dbquery)){
if($sub_name == $result[sub_name]){ //เพื่อให้ แสดง $cat_id ที่ส่งค่ามาให้
?>
<option value="<?=$result[sub_name];?>" selected="selected"><?=$result[sub_name];?></option>
<?
}else{?>
<option value="<?=$result[sub_name];?>"><?=$result[sub_name];?></option>
<?
} }
?></CENTER>
<tr>
<CENTER><font face="MS sans Serif">
<p><font face="MS Sans Serif"=>เลือกการบ้าน
<select name="ass_title">
<?
$host="localhost";
$user="root";
$password="1234";
$dbname="zend";
$connection=mysql_connect($host,$user,$password) or die("เชื่อมต่อฐานข้อมูลไม่ได้");
mysql_select_db($dbname) or die("ไม่สามารถเลือกฐานข้อมูลได้");
$sql="select * from tb_ass";
$dbquery=mysql_db_query($dbname,$sql);
while($result=mysql_fetch_array($dbquery)){
if($ass_title == $result[ass_title]){ //เพื่อให้ แสดง $cat_id ที่ส่งค่ามาให้
?>
<option value="<?=$result[ass_title];?>" selected="selected"><?=$result[ass_title];?></option>
<?
}else{?>
<option value="<?=$result[ass_title];?>"><?=$result[ass_title];?></option>
<?
} }
?></CENTER>
<td align=right valign=top>ผู้ส่ง(ห้ามเปลี่ยน): </td>
<td> <input name="files_user" type="text" value="<?php echo $dbarr['user_user'] ; ?>"> </td>
</tr>
<CENTER></tr>
</tr>
</table></td>
</tr>
</table>
<br>
<tr>
</tr>
<a name="show"></a>
</form>
<p><font> </font></p>
<font>
<font size=1 face="MS Sans Serif"> </font></font>
<table width="600" height="27" border="0" cellpadding="0" cellspacing="0">
</table>
<font><font size=1 face="MS Sans Serif"><font><font size=1 face="MS Sans Serif"><strong><span class="style1"></span></strong></font></font></font></font>
</center>
<CENTER><html>
<head>
<title>ระบบจัดการการส่งงาน</title>
</head>
<body>
<form name="form1" method="post" action="upload2.php" enctype="multipart/form-data">
<input type="file" name="filUpload[]"><br>
<input type="file" name="filUpload[]"><br>
<input type="file" name="filUpload[]"><br>
<input type="file" name="filUpload[]"><br>
<input type="file" name="filUpload[]"><br>
<input type="file" name="filUpload[]"><br>
<input type="file" name="filUpload[]"><br>
<input name="btnSubmit" type="submit" value="Submit">
</form>
</body>
</html>
</CENTER>
upload2.php
Code
<html>
<head>
<title>ระบบจัดการการส่งงาน</title>
</head>
<body>
<?
include("../config.inc.php") ;
// เริ่มติดต่อฐานข้อมูล
mysql_connect($hostname, $user, $password) or die("ติดต่อฐานข้อมูลไม่ได้");
// เลือกฐานข้อมูล
mysql_select_db($dbname) or die("เลือกฐานข้อมูลไม่ได้");
$tblname='tb_user';
$result = mysql_query("select * from $tblname where user_user='$login_true_student'") or die ("Err Can not to result") ;
$dbarr = mysql_fetch_array($result) ;
$ass_title= $_POST['ass_title'];
$ass_title= $_GET['ass_title'];
$ass_title = $_REQUEST['ass_title'];
$sub_name= $_POST['sub_name'];
$sub_name= $_GET['sub_name'];
$sub_name = $_REQUEST['sub_name'];
$files_user= $_POST['files_user'];
$files_user= $_GET['files_user'];
$files_user = $_REQUEST['files_user'];
$sql1 = "INSERT INTO files_join (ass_title,sub_name, files_user,files_id) VALUES ('$ass_title', '$sub_name', '$files_user','$files_id')";
$result1 = mysql_db_query($dbname,$sql1);
if(!$result1) { echo "Error : Can not save to database"; exit(); }
?>
<?
$objConnect = mysql_connect("localhost","root","1234") or die("Error Connect to Database");
$objDB = mysql_select_db("zend");
include("../config.inc.php");
// ....................
$tblname = "tb_ass"; //ชื่อตาราง
$tblname2 = "tb_sub"; //ชื่อตาราง
// เริ่มติดต่อฐานข้อมูล
mysql_connect($hostname, $user, $password) or die("ติดต่อฐานข้อมูลไม่ได้");
// เลือกฐานข้อมูล
mysql_select_db($dbname) or die("เลือกฐานข้อมูลไม่ได้");
for($i=0;$i<count($_FILES["filUpload"]["name"]);$i++)
{
if($_FILES["filUpload"]["name"][$i] != "")
{
if(copy($_FILES["filUpload"]["tmp_name"][$i],"myfile/".$_FILES["filUpload"]["name"][$i]))
{
//*** Insert Record ***//
$strSQL = "INSERT INTO files ";
$strSQL .="(FilesName) VALUES ('".$_FILES["filUpload"]["name"][$i]."')";
$objQuery = mysql_query($strSQL);
}
}
}
echo "Copy/Upload Complete<br>";
?>
<a href="upload3.php">View files</a>
</body>
</html>
ผมจะเก็บค่า $_POST ลง จาก upload.php ลงฐานข้อมูล files_join ไม่ได้ครับ มันขึ้นแค่ files_id
Quote: ฐานข้อมูลมีดังนี้ครับ
-tb
files
-Field
FilesID
FilesName
-tb
files_join
-Field
ass_title
sub_name
files_user
files_id(pk)
Tag : - - - -
Date :
2009-04-18 16:52:21
By :
phillips
View :
1135
Reply :
17
ส่วนไฟล์ อัพได้ตามปกติครับ
Date :
2009-04-18 17:01:58
By :
phillips
ใครก็ได้ช่วยหน่อยครับ วันจันทร์จะส่ง project แล้ว ช่วยให้คำปรึกษาก็ยังดีครับ ขอร้องหล่ะครับ นอนไม่หลับมา หลายวันแล้ว ทำถึงตี5 ทุกวันยังตันอยู่เลย T_T
MSN:
[email protected]
ช่วยให้คำปรึกษาผมทีนะครับ ถ้าเสร็จแล้วจะให้ผมทำไรตอบแทนให้ก็ยอมครับ ไหว้หล่ะครับ (-//\\-)
ขอบคุณมากครับ
Date :
2009-04-18 18:01:55
By :
phillips
ผมไม่เห็น <form ใน upload.php ครับ
Date :
2009-04-18 18:42:10
By :
plakrim
อ๋อ คุณมี tag form ที่ส่งไปยัง upload2.php แค่ตรงอัพโหลด
<form name="form1" method="post" action="upload2.php" enctype="multipart/form-data">
<input type="file" name="filUpload[]"><br>
<input type="file" name="filUpload[]"><br>
<input type="file" name="filUpload[]"><br>
<input type="file" name="filUpload[]"><br>
<input type="file" name="filUpload[]"><br>
<input type="file" name="filUpload[]"><br>
<input type="file" name="filUpload[]"><br>
<input name="btnSubmit" type="submit" value="Submit">
มันก็เลยส่งแค่ตัว filefield ไปให้ upload2.php
Date :
2009-04-18 18:45:05
By :
plakrim
ขอบคุณครับ เอา <form name="form1" method="post" action="upload2.php" enctype="multipart/form-data"> เลือ่นๆไปดานบนน่าจะได้นะครับ ขอลองก่อน
Date :
2009-04-18 18:47:39
By :
phillips
<a name="show"></a>
</form>
<p><font> </font></p>
เอาตรงตัวหนาออกด้วยนะครับ ไม่งั้นเดียว ไม่ส่ง filefield ไปอีกยุ่งอีกละ
Date :
2009-04-18 18:51:31
By :
plakrim
เย้ ขึ้นแล้วครับ เก่งที่สุดเลยครับๆๆ ขอบคุณมากครับ
ผมขอ email ท่านได้ไหมครับ PlaKriM
เผื่อติดตรงไหนจะรบกวนถามครับ ช่วยหน่อยนะครับ
ขอบคุณมากครับ ขอกราบงามๆสัก 10ที (-//\\-)
Date :
2009-04-18 18:58:20
By :
phillips
ถ้าผมจะเปลี่ยน เก็บข้อมูล
ass_title
sub_name
files_user
ไปใน tb files อันเดียว จะ insert into อย่างไรดีครับ
ถ้าตารางเหลือตารางเดียวนะ
-tb
files
-Field
FilesID
FilesName
ass_title
sub_name
files_user
ตรง
$strSQL = "INSERT INTO files ";
$strSQL .="(FilesName) VALUES ('".$_FILES["filUpload"]["name"][$i]."')";
ผมจะให้ เพิ่ม Field เหล่านี้ไปพร้อมกันเลย id(เดียวกันด้วย)
ass_title,sub_name, files_user,) VALUES ('$ass_title', '$sub_name', '$files_user')";
เพิ่มตรง $strSQL ด้วยเลยจะเขียนยังไงดีครับ
ผม INSERT INTO ไม่ถูกครับ
Date :
2009-04-18 19:10:22
By :
phillips
โพสต์ถามก็ได้ครับ คนอื่นจะได้ดูด้วย เผื่อมีปัญหาเหมือนๆ กัน
ส่วนคำถามด้านบน ผมงงครับ รบกวนอธิบายระบบการทำงานหรือความต้องการนิดนึงครับ
Date :
2009-04-18 19:18:42
By :
plakrim
แบบนี้ครับ ผมโหลดมาจาก
https://www.thaicreate.com/php/php-multi-file-field-upload-mysql.html
นะครับ
ฐานข้อมูลก็มีตามนี้ครับ
Code
CREATE TABLE `files` (
`FilesID` int(4) NOT NULL auto_increment,
`FilesName` varchar(100) NOT NULL,
PRIMARY KEY (`FilesID`)
) ENGINE=MyISAM AUTO_INCREMENT=1 ;
ส่วนตอน INSERT INTO Files ก็คือตอนนี้ใช่ป่ะครับ upload แบบปกติ
Quote: $strSQL = "INSERT INTO files ";
$strSQL .="(FilesName) VALUES ('".$_FILES["filUpload"]["name"][$i]."')";
แล้วทีนี้ผมเพิ่ม ass_title sub_name files_user ลง tb files
Code
CREATE TABLE `files` (
`FilesID` int(4) NOT NULL auto_increment,
`FilesName` varchar(100) NOT NULL,
`ass_title` varchar(100) NOT NULL,
`sub_name` varchar(100) NOT NULL,
`files_user` varchar(100) NOT NULL,
PRIMARY KEY (`FilesID`)
) ENGINE=MyISAM AUTO_INCREMENT=1 ;
เข้าไปใน db
ผมก็รับค่า upload.php
ด้วย
Code
$ass_title= $_POST['ass_title'];
$ass_title= $_GET['ass_title'];
$ass_title = $_REQUEST['ass_title'];
$sub_name= $_POST['sub_name'];
$sub_name= $_GET['sub_name'];
$sub_name = $_REQUEST['sub_name'];
$files_user= $_POST['files_user'];
$files_user= $_GET['files_user'];
$files_user = $_REQUEST['files_user'];
ใช่ไหมครับ
ผมจะ INSERT INTO อย่างไรครับ
แบบนี้หรือเปล่าครับ
ีupload2.php
Code
$strSQL = "INSERT INTO files ";
$strSQL .="(ass_title,sub_name, files_user,FilesName) VALUES (''$ass_title', '$sub_name', '$files_user',".$_FILES["filUpload"]["name"][$i]."')";
Date :
2009-04-18 21:58:13
By :
phillips
เศร้า ไม่มีใครชช่วยตอบหน่อยครับ
Date :
2009-04-19 11:33:47
By :
xz
$strSQL = "INSERT INTO files ";
$strSQL .="(ass_title,sub_name, files_user,FilesName ) VALUES (''$ass_title', '$sub_name', '$files_user',".$_FILES["filUpload"]["name"][$i]."' )";
ตรงตัวหนาเอาออกไปครับ มัน join กันด้วย files_user อยู่แล้ว ว่าไฟล์นี้ของ user ไหนแล้ว FilesName มันก็ไม่มีใน table files ด้วย
Date :
2009-04-19 14:58:57
By :
plakrim
ขอบคุณสำหรับคำตอบนะครับ ผมถามไม่เข้าใจเอง สับสนไปหมดแล้ว T_T
จริงๆแล้ว
$strSQL .="(FilesName) VALUES ('".$_FILES["filUpload"]["name"][$i]."')";
คือมัน code ของตัว upload หน่ะครับ เวลา upload ไฟล์ ใช่ป่ะครับ มันก็upload ได้ปกติ
แล้วมันก็ลงบันทึกใน db
ผมเลยจะเพิ่ม ass_title sub_name files_user เพื่อให้ทราบว่า
ไฟล์ upload นี้เป้นของใคร ชื่ออะไร อ่ะครับ
ขอโทษครับ ที่รบกวนนะครับ
Date :
2009-04-19 15:20:05
By :
phillips
ง่ายๆ เลยครับ เพิ่มฟิลด์ user_id ลงใน table files แค่นั้นก็รู้แล้วว่าของใคร
Date :
2009-04-19 15:33:20
By :
plakrim
ลองแล้วไม่เข้าครับ T_T
Date :
2009-04-19 16:16:44
By :
phillips
อยากตาย T________________T'
Date :
2009-04-19 16:28:11
By :
phillips
Load balance : Server 02