【发布时间】:2015-01-28 01:06:45
【问题描述】:
我正在尝试将表单与 ipboard 数据库链接起来,但由于我是 PHP 编码的初学者,我一直在兜圈子,不知道该怎么做,只需要链接就可以了。
29-Nov-2014 16:18:30 UTC] PHP Warning: mysql_num_rows() expects parameter 1 to be resource, null given in /home/rise718c/public_html/Sean/Login/checklogin.php on line 40
[29-Nov-2014 16:20:57 UTC] PHP Notice: Undefined variable: link in /home/rise718c/public_html/Sean/Login/checklogin.php on line 40
[29-Nov-2014 16:20:57 UTC] PHP Warning: mysql_query() expects parameter 2 to be resource, null given in /home/rise718c/public_html/Sean/Login/checklogin.php on line 40
[29-Nov-2014 16:20:57 UTC] PHP Warning: mysql_num_rows() expects parameter 1 to be resource, null given in /home/rise718c/public_html/Sean/Login/checklogin.php on line 41
以上是错误日志
现在这是我要整理的代码**
<?php
$count = 0;
$host="localhost"; // Host name
$username="login"; // Mysql username
$password="password"; // Mysql password
$db_name="dbname"; // Database name
$tbl_name="members"; // Table name
// Connect to server and select database.
mysql_connect("$host", "$username", "$password")or die("cannot connect");
mysql_select_db("dbname")or die("cannot select DB");
// username and password sent from form
$myusername=$_POST['myusername'];
$mypassword=$_POST['mypassword'];
// encrypt password
$encrypted_mypassword= md5( $mypassword ) ;
$sql="SELECT * FROM $tbl_name WHERE name='$myusername' and members_pass_hash='$encrypted_mypassword'";
$result=mysql_query($sql);
// To protect MySQL injection (more detail about MySQL injection)
$myusername = stripslashes($myusername);
$mypassword = stripslashes($encrypted_mypassword);
$myusername = mysql_real_escape_string($myusername);
$mypassword = mysql_real_escape_string($encrypted_mypassword);
$sql="SELECT 'members_pass_hash','name' FROM $tbl_name WHERE name='$myusername' and members_pass_hash='$encrypted_mypassword'";
mysql_real_escape_string($myusername);
mysql_real_escape_string ($encrypted_mypassword);
$result=mysql_query($sql);
if (!$result) {
die('Invalid query: ' . mysql_error());
}
// Mysql_num_row is counting table row
mysql_connect($host, $username, $password);
$result = mysql_query("SELECT * FROM table1", $link);
$num_rows = mysql_num_rows($result);
echo "$num_rows Rows\n";
// If result matched $myusername and $mypassword, table row must be 1 row
if($count==1){
// Register $myusername, $mypassword and redirect to file "login_success.php"
session_register("myusername");
session_register("mypassword");
header("location:login_success.php");
}
else {
echo "Wrong Username or Password";
}
?>
如果您能帮助纠正我的错误,我们将不胜感激。
【问题讨论】:
-
请不要在本网站上分享您的登录名和密码。这对你来说可能很危险。
-
$link 定义在哪里?