今天通过php做一个注册系统,但是现在php不能链接到数据库,求解是为什么
这个是注册页面的HTML代码
<code> <form action="regcheck.php" method="post"> 用户名:<input type="text" name="username"> <br> 密 码:<input type="password" name="password"> <br> 确认密码:<input type="password" name="confirm"> <br> <input type="Submit" name="Submit" value="注册"> </form> </code>
这个是链接数据库,检测,insert的php文件
<code>if(isset($_POST["Submit"]) && $_POST["Submit"] == "注册") { $user = $_POST["username"]; $psw = $_POST["password"]; $psw_confirm = $_POST["confirm"]; if($user == "" || $psw == "" || $psw_confirm == "") { echo "<script>alert('请确认信息完整性!'); history.go(-1);</script>"; } else { if($psw == $psw_confirm) { mysql_connect("localhost","root","qwepoi"); //连接数据库 mysql_select_db("FootballManager"); //选择数据库 mysql_query("set names 'gdk'"); //设定字符集 $sql = "select username from users where username = '$_POST[username]'"; //SQL语句 $result = mysql_query($sql); //执行SQL语句 $num = mysql_num_rows($result); //统计执行结果影响的行数 if($num) //如果已经存在该用户 { echo "<script>alert('用户名已存在'); history.go(-1);</script>"; } else //不存在当前注册用户名称 { $sql_insert = "insert into users (username,password,phone,address) values('$_POST[username]','$_POST[password]','','')"; $res_insert = mysql_query($sql_insert); //$num_insert = mysql_num_rows($res_insert); if($res_insert) { echo "<script>alert('注册成功!'); history.go(-1);</script>"; } else { echo "<script>alert('系统繁忙,请稍候!'); history.go(-1);</script>"; } } } else { echo "<script>alert('密码不一致!'); history.go(-1);</script>"; } } } else { echo "<script>alert('提交未成功!'); history.go(-1);</script>"; } </code>
?>
数据库密码,名字,table的名字均是正确的,但是始终无法链接至书库,是哪一步出现问题了嘛?
今天通过php做一个注册系统,但是现在php不能链接到数据库,求解是为什么
这个是注册页面的HTML代码
<code> <form action="regcheck.php" method="post"> 用户名:<input type="text" name="username"> <br> 密 码:<input type="password" name="password"> <br> 确认密码:<input type="password" name="confirm"> <br> <input type="Submit" name="Submit" value="注册"> </form> </code>
这个是链接数据库,检测,insert的php文件
<code>if(isset($_POST["Submit"]) && $_POST["Submit"] == "注册") { $user = $_POST["username"]; $psw = $_POST["password"]; $psw_confirm = $_POST["confirm"]; if($user == "" || $psw == "" || $psw_confirm == "") { echo "<script>alert('请确认信息完整性!'); history.go(-1);</script>"; } else { if($psw == $psw_confirm) { mysql_connect("localhost","root","qwepoi"); //连接数据库 mysql_select_db("FootballManager"); //选择数据库 mysql_query("set names 'gdk'"); //设定字符集 $sql = "select username from users where username = '$_POST[username]'"; //SQL语句 $result = mysql_query($sql); //执行SQL语句 $num = mysql_num_rows($result); //统计执行结果影响的行数 if($num) //如果已经存在该用户 { echo "<script>alert('用户名已存在'); history.go(-1);</script>"; } else //不存在当前注册用户名称 { $sql_insert = "insert into users (username,password,phone,address) values('$_POST[username]','$_POST[password]','','')"; $res_insert = mysql_query($sql_insert); //$num_insert = mysql_num_rows($res_insert); if($res_insert) { echo "<script>alert('注册成功!'); history.go(-1);</script>"; } else { echo "<script>alert('系统繁忙,请稍候!'); history.go(-1);</script>"; } } } else { echo "<script>alert('密码不一致!'); history.go(-1);</script>"; } } } else { echo "<script>alert('提交未成功!'); history.go(-1);</script>"; } </code>
?>
数据库密码,名字,table的名字均是正确的,但是始终无法链接至书库,是哪一步出现问题了嘛?
你的mysql操作有点小问题
<code>...省略 //你需要保存$conn这个连接句柄,以备后用 $conn = mysql_connect("localhost","root","qwepoi"); //连接数据库 mysql_select_db("FootballManager"); //选择数据库 mysql_query("set names 'gdk'"); //设定字符集 $sql = "select username from users where username = '$_POST[username]'"; //SQL语句 //在使用mysql_query()类的函数时,第二个参数要加上刚刚那个连接句柄 $result = mysql_query($sql, $conn); //执行SQL语句 ...省略</code>
额外附加
1.如果你这个连报错都看不到的话,最好在php.ini中开启php的错误日志,并设置错误级别,这在以后开发遇到错误时能够很快的解决问题
<code>display_errors = On display_startup_errors = On error_reporting = -1 log_errors = On</code>
2.如果你使用的是php7的话,那mysql扩展已经被移除了,如果是php7之前的版本还可以用。
<code>mysql_connect</code>
的值打印出来
错误报告也打开
如果在linux下,把localhost换成127.0.0.1吧。
试试将mysql端口写到mysql_connect参数中
使用mysqli把升级版哈哈
先在命令行下看看能不能连接吧