Eror php ช่วยที่งับ Warning: mysql_num_rows(): supplied argument is not a valid MySQL result resource
Warning: mysql_num_rows(): supplied argument is not a valid MySQL result resource in C:\AppServ\www\www\vacadd.php on line 123
Add ข้อมูลลง Table เสร็จเรียบร้อยแล้ว
มันผิดตรงไหนครับ พอผมไปเช็คในฐานข้อมูลกลายเป็นฐานข้อมูลป่าวไม่มีอ่ะไรเลย
โค้ดผม
<?
$host="localhost";
$username="root";
$password="1234";
$db="vac";
$tb="data_vac";
$connect= mysql_connect($host,$username,$password) or die ("ติดต่อฐานข้อมูลไม่ได้");
mysql_select_db($db) or die("เลือกฐานข้อมูลไม่ได้");
mysql_db_query($db,"SET NAMES tis620");
$sql="select * from $tb where id=$id";
$db_query=mysql_db_query($db,$sql);
$num_rows=mysql_num_rows($db_query);
if($num_rows !=0)/*ตรวจสอบ ID นี้มีอยู่หรือยัง */
{
echo"<center><br>รหัส ID นี้มีอยู่แล้ว </center>";
exit();
}
else
{
mysql_query("INSERT INTO $tb(id,name,year,sum1,sum2,sum3,sum4,sum5)
values('$id','$name','$year','$sum1','$sum2','$sum3','$sum4','$sum5')") or die ("Add ข้อมูล Table ลงไม่ได้");
echo "Add ข้อมูลลง Table เสร็จเรียบร้อยแล้ว";
}
mysql_close($connect);
?>
Tag : - - - -
Date :
13 ต.ค. 2551 12:17:40
By :
เด็กฝึกหัด
View :
1138
Reply :
5
น่าจะไม่มีค่า id ครับ ให้ใส่ ' ' ตรง id ด้วยครับ
$sql="select * from $tb where id='$id'";
Date :
13 ต.ค. 2551 13:17:49
By :
อิอิ
ใส่แล้วครับ คราวนี้ไม่มี Error แต่ไปดูที่ฐานข้อมูลกลับว่างป่าวไม่มีอ่ะไรเลย มีแต่แถวว่างๆๆ 1 แถวในฐานข้อมูล
ผมใช้ appserv 2.6.0
Date :
13 ต.ค. 2551 14:49:16
By :
เด็กฝึกหัด
มันจะมีข้อมูลได้ไงคับก้อไม่มีการรับค่ามาเลยเช่น
<?
$id=$_POST['name'];
$year=$_POST['year'];
$num2=$_POST['num1'];
$num2=$_POST['num2'];
$num3=$_POST['num3'];
$host="localhost";
$username="root";
$password="1234";
$db="vac";
$tb="data_vac";
$connect= mysql_connect($host,$username,$password) or die ("ติดต่อฐานข้อมูลไม่ได้");
mysql_select_db($db) or die("เลือกฐานข้อมูลไม่ได้");
mysql_db_query($db,"SET NAMES tis620");
$sql="select * from $tb where id=$id";
$db_query=mysql_db_query($db,$sql);
$num_rows=mysql_num_rows($db_query);
if($num_rows !=0)/*ตรวจสอบ ID นี้มีอยู่หรือยัง */
{
echo"<center><br>รหัส ID นี้มีอยู่แล้ว </center>";
exit();
}
else
{
mysql_query("INSERT INTO $tb(id,name,year,sum1,sum2,sum3,sum4,sum5)
values('$id','$name','$year','$sum1','$sum2','$sum3','$sum4','$sum5')") or die ("Add ข้อมูล Table ลงไม่ได้");
echo "Add ข้อมูลลง Table เสร็จเรียบร้อยแล้ว";
}
mysql_close($connect);
?>
ไม่งั้นมันก้อจะมีแต่ค่าว่าง
Date :
13 ต.ค. 2551 15:15:14
By :
Tum
รับค่ามาจาก text field ซึ่งอยู่อีกหน้าหนึ่งครับ
values('$id','$name','$year','$sum1','$sum2','$sum3','$sum4','$sum5')")
ค่าที่อยู่ใน values นี้คือ
text field ตัวที่1 ใช้ชื่อว่า '$id'
text field ตัวที่2 ใช้ชื่อว่า '$name'
text field ตัวที่3 ใช้ชื่อว่า '$year'
.......
ดังนั้นผมรับค่ามาจาก text field ซึ่งรับข็อมูลมาแล้วครับ จึงไม่ใช่ค่าว่าง
เมื่อบันทึกลงฐานข้อมูล กลับเป็นค่าว่างทันที
Date :
13 ต.ค. 2551 15:51:44
By :
เด็กฝึกหัด
ลอง echo คำสั่ง sql ดูครับ ดูว่าค่าที่จะบันทึกมันมีมั้ย ถ้ามีอาจจะเป็นเพราะ type ในฐานข้อมูลไม่ตรงกับข้อมูลที่เราส่งเข้าไปนะครับ ลองดู
Date :
13 ต.ค. 2551 17:43:24
By :
frintstone
Load balance : Server 04