我的 php 脚本有问题。对 php 很陌生,所以我知道它不是最好的。提交表单时出现以下错误。注意:未定义索引:第 6 行 C:\xampp\htdocs\AppX1\signin.php 中的用户名 注意:第 7 行 C:\xampp\htdocs\AppX1\signin.php 中未定义索引:密码 致命错误:未捕获错误:调用 C:\xampp\htdocs\AppX1\signin.php:13 中未定义的函数 mysql_real_escape_string() 堆栈跟踪:第 13 行 C:\xampp\htdocs\AppX1\signin.php 中抛出 #0 {main}我读过一些文章说要使用一种isset方法,尽管我不确定该将其放在哪里或者它是否适用于我的情况。<form action="signin.php" id="signInForm"> <fieldset> <label class="fieldLabel" for="uname">Email Address</label> <input class="fieldInput" type="text" id="uname" name="username"> <label class="fieldLabel" for="pword">Password</label> <input class="fieldInput" type="password" id="pword" name="password"> <input class="submitBtn" type="submit" value="Submit"> </fieldset></form><?php $username = $_POST['username']; $password = $_POST['password']; // sql injection prevention $username = stripcslashes($username); $password = stripcslashes($password); $username = mysql_real_escape_string($username); $password = mysql_real_escape_string($password); //connect to server and select SQLiteDatabase mysql_connect("localhost", "root", ""); mysql_select_db("user"); //query db for user $result = mysql_query("SELECT * FROM user where email = '$username' and password = '$password'") or die("Failed to query database ".mysql_error()); $row = mysql_fetch_array($result); if ($row['email'] == $username && $row['password'] == $password) { echo "Login Success!".$row['email']; } else { echo "Login Failed"; }?>
2 回答
慕标5832272
TA贡献1966条经验 获得超4个赞
<form action="signin.php" id="signInForm">
你缺少你的形式方法。 <form action="signin.php" id="signInForm" method="post" >
守着一只汪
TA贡献1872条经验 获得超3个赞
致命错误:未捕获错误:调用 C:\xampp\htdocs\AppX1\signin.php 中未定义的函数 mysql_real_escape_string():13
如果您使用 PHP 7,mysql_real_escape_string
该功能将被删除。尝试使用mysqli_real_escape_string
替代方法并确保您已mysqli
在 php.ini 中加载 PHP 模块(使用phpinfo()
或php -I | grep -i mysqli
从命令行检查模块是否已加载)
- 2 回答
- 0 关注
- 118 浏览
添加回答
举报
0/150
提交
取消