[มือใหม่] Insert ข้อมูลลงฐานข้อมูลไม่ได้ครับรบกวนช่วยดู Code ให้หน่อยครับ พี่ๆ
มือใหม่นะครับ
ผมทำระบบ ยืมจักรยานอะครับ อยากจะ insert ค่าลงตารางยืมคืน ครับ
แสดงหน้าเว็ปเป็น Save Done. แล้วครับ แต่ไปดูใน phpmyadmin ไม่มีข้อมูล insert เข้าไปครับ มำไงดีครับ T T
code
Code (PHP)
<?php
session_start();
// echo $_SESSION["link"];
//session_destroy(); // ลบ Session ทั้งหมด
//unset($_SESSION["link"]); // ลบ 1 session
?>
<html>
<head>
<title>Development Intelligent TU Bike’s Rental System</title>
</head>
<body>
<br><div align="center"><h1> กรุณาแตะบัตรนักศึกษาเพื่อยืนยันการยืม . . . </h1>
<blockquote>
<br><br><br><p> <a href="system"> <img src="../../../assets/images/exit.JPG" width="100" height="50" align = "left" /></a>
</blockquote>
<?php
$student_id = "5410610306" ;
$nowFormat = date('Y-m-d H:i:s');
$objConnect = mysql_connect("localhost","root","4869") or die("Error Connect to Database");
mysql_query("SET character_set_results=utf8");//ตั้งค่าการดึงข้อมูลออกมาให้เป็น utf8
mysql_query("SET character_set_client=utf8");//ตั้งค่าการส่งข้อมุลลงฐานข้อมูลออกมาให้เป็น utf8
mysql_query("SET character_set_connection=utf8");//ตั้งค่าการติดต่อฐานข้อมูลให้เป็น utf8
$objDB = mysql_select_db("tubicycle");
$strSQL = "SELECT * FROM student where s_id =$student_id" ;
$objQuery = mysql_query($strSQL) or die ("Error Query [".$strSQL."]");
if($objResult["s_id"] = $student_id )
{
//$objConnect = mysql_connect("localhost","root","4869") or die("Error Connect to Database");
// $objDB = mysql_select_db("tubicycle");
$sql = "INSERT INTO borrowreturn (s_id, b_id,datedue,datereturn,penalty,location,status_br,channel_id)
VALUES ($student_id, $1, $nowFormat,$null ,$0,$1,$1,$_SESSION[link])";
$objQuery = mysql_query($strSQL);
if($objQuery)
{
echo "Save Done.";
}
else
{
echo "Error Save [".$strSQL."]";
}
}
else
{
}
mysql_close($objConnect);
unset($_SESSION[link]);
?>
</body>
</html>
Tag : PHP
Date :
2015-04-03 02:04:02
By :
conan4869
View :
858
Reply :
16
Date :
2015-04-03 02:12:23
By :
conan4869
$1, $nowFormat,$null ,$0,$1,$1 ตัวแปรพวกนี้มาจากไหนครับ
อยู่ๆเอามาใส่ดื้อๆไม่ได้นะครับ ต้องกำหนดค่าให้มันก่อน
Date :
2015-04-03 07:00:55
By :
sabaitip
ใส่ค่าไปเลยได้ไหมครับ ไม่ต้องใช้ตัวแปร แต่มันก็ยังไม่เข้าฐานข้อมูลอะครับ
Date :
2015-04-03 16:14:44
By :
conan4869
Code (PHP)
$student_id = "5410610306" ;
$nowFormat = date('Y-m-d H:i:s');
$objConnect = mysql_connect("localhost","root","4869") or die("Error Connect to Database");
mysql_query("SET character_set_results=utf8");//ตั้งค่าการดึงข้อมูลออกมาให้เป็น utf8
mysql_query("SET character_set_client=utf8");//ตั้งค่าการส่งข้อมุลลงฐานข้อมูลออกมาให้เป็น utf8
mysql_query("SET character_set_connection=utf8");//ตั้งค่าการติดต่อฐานข้อมูลให้เป็น utf8
$objDB = mysql_select_db("tubicycle");
$strSQL = "SELECT * FROM student where s_id =$student_id" ;
$objQuery = mysql_query($strSQL) or die ("Error Query [".$strSQL."]");
if($objResult["s_id"] = $student_id )
{
//$objConnect = mysql_connect("localhost","root","4869") or die("Error Connect to Database");
// $objDB = mysql_select_db("tubicycle");
$sql = "INSERT INTO borrowreturn (s_id, b_id,datedue,datereturn,penalty,location,status_br,channel_id)
VALUES ($student_id, 1, $nowFormat,null ,0,1,1,$_SESSION[link])";
$objQuery = mysql_query($strSQL);
if($objQuery)
{
echo "Save Done.";
}
else
{
echo "Error Save [".$strSQL."]";
}
Date :
2015-04-03 16:18:21
By :
conan4869
เช็ค error ด้วยครับ
41.$sql = "INSERT INTO borrowreturn (s_id, b_id,datedue,datereturn,penalty,location,status_br,channel_id)
42.VALUES ($student_id, $1, $nowFormat,$null ,$0,$1,$1,$_SESSION[link])";
43.$objQuery = mysql_query($strSQL) or die ( mysql_error() . "<br>[[ $strSQL ]]") ;
เพิ่มสีแดง
Date :
2015-04-03 16:19:30
By :
Chaidhanan
เพิ่ม ERROR แล้วครับ แต่ข้อมูลยังไม่เข้า เวลา insert ต้องใส่ค่าทุก Field ป่าวครับ ค่าไหนไม่กำหนเค่า ก็ต้องใส่ null ด้วยรึป่าวครับ
ขอบคุณทุกคำตอบนะครับ
Date :
2015-04-03 16:31:28
By :
conan4869
แล้ว เออเร่อร์ มันแจ้งอะไรมาล่ะครับ อ่านที่ error message ก่อนครับจะได้รู้ว่ามันผิดเพราะอะไร
ปล. เพิ่มบันทัด ที่ 57 หน่อยครับ
55.else
56.{
57. echo $objResult["s_id"], " [[ student_id = ", $student_id , " ]]";
58.
59.}
ประวัติการแก้ไข 2015-04-03 16:47:47
Date :
2015-04-03 16:44:46
By :
Chaidhanan
ERROR นี้ขึ้นมาครับ
You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '17:02:39 ,1,1,2
)' at line 2
[[ INSERT INTO borrowreturn (s_id,b_id,datedue,location,status_br,channel_id) VALUES (5410610306,0001, 2015-04-03 17:02:39 ,1,1,2
) ]]
code ตอนนี้
Code (PHP)
<?php
session_start();
// echo $_SESSION["link"];
//session_destroy(); // ลบ Session ทั้งหมด
//unset($_SESSION["link"]); // ลบ 1 session
?>
<html>
<head>
<title>Development Intelligent TU Bike’s Rental System</title>
</head>
<body>
<br><div align="center"><h1> กรุณาแตะบัตรนักศึกษาเพื่อยืนยันการยืม . . . </h1>
<blockquote>
<br><br><br><p> <a href="system"> <img src="../../../assets/images/exit.JPG" width="100" height="50" align = "left" /></a>
</blockquote>
<?php
$student_id = "5410610306" ;
$nowFormat = date("Y-m-d H:i:s", mktime(date("H")-1, date("i")+0, date("s")+0, date("m")+0 , date("d")+0, date("Y")+0));
$objConnect = mysql_connect("localhost","root","4869") or die("Error Connect to Database");
mysql_query("SET character_set_results=utf8");//ตั้งค่าการดึงข้อมูลออกมาให้เป็น utf8
mysql_query("SET character_set_client=utf8");//ตั้งค่าการส่งข้อมุลลงฐานข้อมูลออกมาให้เป็น utf8
mysql_query("SET character_set_connection=utf8");//ตั้งค่าการติดต่อฐานข้อมูลให้เป็น utf8
$objDB = mysql_select_db("tubicycle");
$strSQL = "SELECT * FROM student where s_id =$student_id" ;
$objQuery = mysql_query($strSQL) or die ("Error Query [".$strSQL."]");
if($objResult["s_id"] = $student_id )
{
//$objConnect = mysql_connect("localhost","root","4869") or die("Error Connect to Database");
// $objDB = mysql_select_db("tubicycle");
$sql = "INSERT INTO borrowreturn (s_id,b_id,datedue,location,status_br,channel_id)
VALUES ($student_id,0001, $nowFormat ,1,1,$_SESSION[link])";
$objQuery = mysql_query($sql)or die ( mysql_error() . "<br>[[ $sql ]]");;
if($objQuery)
{
echo "Save Done.";
}
else
{
echo "Error Save [".$strSQL."]";
}
}
else
{ echo $objResult["s_id"], " [[ student_id = ", $student_id , " ]]";}
?>
<?php
mysql_close($objConnect);
unset($_SESSION[link]);
?>
</body>
</html>
Date :
2015-04-03 17:03:43
By :
conan4869
ERROR นี้ขึ้นมาครับ
You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '17:02:39 ,1,1,2
)' at line 2
[[ INSERT INTO borrowreturn (s_id,b_id,datedue,location,status_br,channel_id) VALUES (5410610306,0001, 2015-04-03 17:02:39 ,1,1,2
) ]]
จาก error บอกว่า syntax error
เอา single quote ครอบทุกตัวแปร
41.$sql = "INSERT INTO borrowreturn (s_id, b_id,datedue,datereturn,penalty,location,status_br,channel_id)
42.VALUES (
' $student_id' ,
' $1' ,
' $nowFormat' ,
' $null' ,
' $0' ,
' $1' ,
' $1' ,
' $_SESSION[link]'
)";
43.$objQuery = mysql_query($strSQL) or die ( mysql_error() . "<br>[[ $strSQL ]]");
Date :
2015-04-03 18:58:09
By :
Chaidhanan
ได้แล้วครับ
กราบขอบพระคุณ Chaidhanan อย่างมากครับพี่
ขอบคุณครับ
Date :
2015-04-03 21:49:32
By :
conan4869
ถามเพิ่มเติม หน่อยครับ
$student_id = "541061030623" เป็นค่าที่ไม่มีในฐานข้อมูล ถ้าไม่ตรงเงือนไข อยากให้ link ไปอีกหน้าหนึ่งจะทำอย่างไรดีครับ
ถ้า $student_id ,มีในฐานข้อมูล จะinsert ข้อมูลครับ ถ้าไม่มี ขึ้นอีกหน้าแจ้งเตือนข้อผิดพลาดครับ
$strSQL = "SELECT * FROM student where s_id = $student_id" ;
$objQuery = mysql_query($strSQL) or die ("Error Query [".$strSQL."]");
while($objResult = mysql_fetch_array($objQuery))
Date :
2015-04-04 01:50:00
By :
conan4869
Code (PHP)
$strSQL = "SELECT * FROM student where s_id = $student_id" ;
$objQuery = mysql_query($strSQL) or die ("Error Query [".$strSQL."]");
if( mysql_num_rows($objQuery)){
while($objResult = mysql_fetch_array($objQuery)){
//.....
}
}else echo 'Result record is empty';
ประวัติการแก้ไข 2015-04-04 08:17:05
Date :
2015-04-04 08:16:27
By :
Chaidhanan
ปกติผมใช้ link คำสั่ง นี้ ในการ auto ไปหน้าอื่นอะครับ แต่อยาก link แบบตรวจสอบเงื่อนไขได้ไหมครับ ใช้กับ if-else
เพราะ พอเอาคำสั่งนี้ไปใส่ใน if-else แล้ว ไม่ได้ อะครับ
คือ 1 หน้า ผมอยากให้ลิ้งไปได้ 2 หน้าครับ โดยตรวจสอบ if(link1)-else(link2) ครับ แบบ auto link อะครับ
พอจะมี code ไหมครับ
<?php
header("refresh:10; url=http://localhost/bicycle/borrow6.php");
?>
Date :
2015-04-05 11:18:00
By :
conan4869
error ที่แสดงนะครับ Warning: Cannot modify header information - headers already sent by (output started at C:\AppServ\www\bicycle\borrow4.php:8)
Date :
2015-04-05 11:27:17
By :
conan4869
ขอดูโค๊ด 10 บันทัดแรก และ บันทัดที่ ส่ง header หน่อยครับ
Date :
2015-04-05 12:13:51
By :
Chaidhanan
.
ประวัติการแก้ไข 2015-04-05 17:08:16 2015-04-07 14:15:17 2015-04-07 14:15:24
Date :
2015-04-05 13:23:51
By :
conan4869
Load balance : Server 00