如何正确设置PHP处理表单?
问题描述:
我刚刚开始学习如何在网站中实现数据库,因此一直在尝试将登录功能添加到我自己的网站。但是,按提交登录时,出现错误:解析错误:语法错误,第13行中的/opt/lampp/htdocs/login/process.php中出现意外的'$ result'(T_VARIABLE)。如何正确设置PHP处理表单?
下面是我的processing.php文件的代码:
<?php
$username = $_POST['username'];
$password = $_POST['password'];
$username = stripcslashes($username);
$password = stripcslashes($password);
$username = mysql_real_escape_string($username);
$password = mysql_real_escape_string($password);
mysql_connect("localhost", "root", "");
mysql_select_db("login")
$result = mysql_query("select * from users where username = '$username' and password = '$password'")
or die("Failed to query database ".mysql_error());
$row = mysql_fetch_array($result);
if($row['username'] == $username && $row['password'] == $password && ("" !== $username || "" !== $password)) {
echo "Login Success! Welcome, ".$row['username'];
} else {
echo "Failed to Login!";
}
?>
任何帮助表示赞赏。
答
你错过了在最后半列下面的行
mysql_select_db("login")
应用半栏将解决这个问题。
+1
有关基本PHP语法错误的问题不应回答。它们应该作为[PHP分析/语法错误;和如何解决它们?](// stackoverflow.com/questions/18050071)。请参阅:[应该建议关闭主题问题?](// meta.stackoverflow.com/q/276572/1768232)。题外话题可以被关闭和删除,无论如何可能会使你的贡献无效。 –
您忘记了上一行的';'。投票结束,因为问题是由打字造成的。 – Quentin
**危险**:您正在使用已[已删除](http://php.net/)的[已过时的**数据库API](http://stackoverflow.com/q/12859942/19068)手册/ en/mysql.php)来自PHP。您应该选择[现代替代品](http://php.net/manual/en/mysqlinfo.api.choosing.php)。 – Quentin
**危险**:盲目地从数据中剥离斜线会破坏数据。这是针对多年前从PHP中删除的魔术引号的防御。 – Quentin