Page 1 of 2

รบกวนช่วยดู error นี้หน่อยนะคะ Warning: mysql_num_rows() expects parameter 1 ...

Posted: 25/02/2011 12:09 pm
by เด็กอนุบาลหนึ่ง
สวัสดีค่ะ
เป็นน้องใหม่หัดทำเว็บ เเละ เรียน php ค่ะ
คือตอนนี้กำลังทำหน้า login ช่วงเริ่มต้นมาก้อเจอปัญหาเลย ค่ะ คือพื้นฐานไม่แน่นเลยอาศัยทำตามเว็บต่างๆที่เค้าสอน เเก้เเล้วแก้อีกหลายแบบ เเต่ก็ยังเจอ error เเบบนี้ค่ะ


Warning: mysql_num_rows() expects parameter 1 to be resource, boolean given in D:\XAMPP\htdocs\kinderkids\checkUser.php on line 24

Code: Select all

<?php

	$username=$_POST['username'];
	$password=$_POST['password'];
	
if ($username && $password)
	{
		// connect to db
	$host = "localhost";
	$user = "root";
	$pass = "";
	$dbname = "kinderkids";
	$connection = mysql_connect($host, $user, $pass) or die ("cannot connect to DB");
	mysql_select_db($dbname,$connection) or die ("Couldn't find db");
	
	// mysql_select_db("kinderkids",$connection) or die ("Couldn't find db");
	//	$query = "SELECT * FROM userlogin WHERE username='$username'", $connection;
	// 	$query= mysql_query("SELECT * FROM userlogin WHERE username='$username'", $connection);	

	$query = mysql_query("SELECT * FROM userlogin WHERE username='$username' AND password='password' ", $connection);
	
	$numrows = mysql_num_rows($query);
		
	if ($numrows != 0)
	{ // code to login
	
		while ($row = mysql_fetch_assoc($query))
		{
			$dbusername =  $row['username'];
			$dbpassword =  $row['password'];
		
		}
		
		// check
		
		if($username== $dbusername && $password==$dbpassword)
		{
			echo "Welcome to kinderkids.com";
		
		} else
			echo"Incorrect password!";
				
	}
	else
	die ("That user does not exist!");
		
}
else
die ("Please enter username and password");

?>


คือพยายามลองมาหลายแบบค่ะ เเต่ก็ยังแก้ไม่ได้

ขอรบกวนพี่ๆช่วยเช็คให้หน่อยนะคะ

Re: รบกวนช่วยดู error นี้หน่อยนะคะ Warning: mysql_num_rows() expects parameter 1 ...

Posted: 25/02/2011 12:49 pm
by 333822
น่าจะ error เพราะ หาข้อมูลไม่เจอนะครับ (มั้งนะ ผมมะแน่ใจ อิอิ)

ยังไงก็ลองเอาโค้ดนี้ไปศึกษาดูครับ

Code: Select all

<?php
$usename = $_POST["usename"];
$pass = $_POST["pass"];

$connect = mysql_connect("localhost","root","024541466");
mysql_select_db("demo");
$cmd = "select * from user where usename='$usename' and pass='$pass'";
$result = mysql_query($cmd);
$num = mysql_num_rows($result);
if($num>=1){
	$num1 = mysql_fetch_array($result);
	setcookie("id1","$num1[0]");
	setcookie("use1","$num1[1]");
	setcookie("pass1","$num1[2]");
}else{
	echo "ERROR รหัสไม่ถูกต้อง";
	echo exit();
}
mysql_close($connect);
?>
<a href="come.php">ไปหน้าแรก</a>
ลองเอาไปศึกษาดูครับ ผมใช้โค้ดนี่แหละ

Re: รบกวนช่วยดู error นี้หน่อยนะคะ Warning: mysql_num_rows() expects parameter 1 ...

Posted: 25/02/2011 12:51 pm
by 333822
Warning: mysql_num_rows() expects parameter 1 to be resource, boolean given

ถ้าขึ้น error แบบนี้ ลองใช้คำสั่ง echo ดูครับ ว่า ข้อมูลที่เราต้องการจะเก็บมีอยู่จิงๆรึเปล่า

ได้ผลยังไงละ ตอบด้วยยนะคับ ^^

Re: รบกวนช่วยดู error นี้หน่อยนะคะ Warning: mysql_num_rows() expects parameter 1 ...

Posted: 25/02/2011 1:44 pm
by เด็กอนุบาลหนึ่ง
ขอบคุณมากๆค่ะ
จะลองพยายามดูอีกทีนะคะ และได้ผลยังงัยจะมาบอก :-D

Re: รบกวนช่วยดู error นี้หน่อยนะคะ Warning: mysql_num_rows() expects parameter 1 ...

Posted: 25/02/2011 5:32 pm
by mindphp
คำสั่ง sql ก่อน หน้านั้นที่รันไป มีปัญหา ครับ
อาจจะมาจาก หลายๆ สาเหตุต้องเช็คย้อนกลับไปว่ามีปัญหา ที่ไหน
เบื้องต้นให้ เช็คคำสั่ง sql ลองเอามารันเองดูก่อน

Re: รบกวนช่วยดู error นี้หน่อยนะคะ Warning: mysql_num_rows() expects parameter 1 ...

Posted: 26/02/2011 5:45 pm
by เด็กอนุบาลหนึ่ง
ขอบคุณอีกหนึ่งความเห็นค่ะ จนถึงตอนนี้ก็ยังหาไม่เจอเลยว่าผิดตรงไหน :(
กำลังจะเริ่มใหม่อีกครั้ง อ่ะค่ะ อาจจะดีกว่า :P

Re: รบกวนช่วยดู error นี้หน่อยนะคะ Warning: mysql_num_rows() expects parameter 1 ...

Posted: 26/02/2011 5:54 pm
by 333822
อะนะลองเปลี่ยนจาก if ($numrows != 0)
เป็น if ($numrows > 0)

ดูครับ

Re: รบกวนช่วยดู error นี้หน่อยนะคะ Warning: mysql_num_rows() expects parameter 1 ...

Posted: 27/02/2011 1:56 am
by mindphp
ผิดที่คำสั่ง sql ที่จะเอามา query ครับ

Code: Select all

   $query = mysql_query("SELECT * FROM userlogin WHERE username='$username' AND password='password' ", $connection);
ต้องการ

Code: Select all

password='$password' 
หรือเปล่า