作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在尝试插入 mySQL 数据库,但出现此错误:
if (mysql_num_rows($login) == 1){
这是 php,php 确实将用户添加到数据库中。我想不通。
<?
session_start();
require("config.php");
$u = $_GET['username'];
$pw = $_GET['password'];
$pwh = $_GET['passwordhint'];
$em = $_GET['email'];
$zc = $_GET['zipcode'];
$check = "INSERT INTO family (loginName, email, password, passwordhint, location) VALUES ('$u', '$pw', '$pwh', '$em', '$zc')";
$login = mysql_query($check, $link) or die(mysql_error());
if (mysql_num_rows($login) == 1) {
$row = mysql_fetch_assoc($login);
echo 'Yes';exit;
} else {
echo 'No';exit;
}
mysql_close($link);
?>
谢谢,
最佳答案
您正在执行一个INSERT
查询,因此$login
将不包含任何结果集,它是true
或假的
。
所以不是这个:
if (mysql_num_rows($login) == 1) {
您可以这样做:
if (mysql_affected_rows($link) == 1) {
或者这个:
if ($login == true) {
此外,您不再需要这一行:
$row = mysql_fetch_assoc($login);
与您的问题无关,但在执行 SQL 查询时要记住一件非常重要的事情:您需要使用 mysql_real_escape_string()
转义所有 $_GET
数据|就在插入之前,以防止SQL injection .
关于PHP/MySQL 错误 : mysql_num_rows(): supplied argument is not a valid MySQL result,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3008157/
我是一名优秀的程序员,十分优秀!