【发布时间】:2014-01-25 01:07:56
【问题描述】:
我是 Web 开发的新手,我刚刚安装了 xampp。控制面板显示一切正常。所有服务都在运行。
我使用 phpMyAdmin 在 mySQL 中创建了一个数据库,使用 phpMyAdmin 一切正常。我正在尝试制作一个简单的表单,使我能够在数据库表中添加数据。我的html表单和php代码如下。这两个文件都在 htdocs 文件夹中:
form.html
<form action="signup.php" method="post">
Email: <input type="text" name="email"> <br>
Firstname: <input type="text" name="f_name"> <br>
Lastname: <input type="text" name="l_name"> <br>
Password: <input type="password" name="password"> <br>
Stream: <input type="text" name="stream"> <br>
<input type="submit">
</form>
</body>
</html>
注册.php:
$sql="INSERT INTO student (email,f_name,l_name,password,stream)
VALUES
('$_POST[email]','$_POST[f_name]','$_POST[l_name]','$_POST[password]','$_POST[stream]')";
if (!mysqli_query($con,$sql))
{
die('Error: ' . mysqli_error($con));
}
echo "1 record added";
mysqli_close($con);
?>
当我点击表单中的提交按钮时,我的浏览器 Google Chrome 会将我带到 file:///C:/xampp/htdocs/signup.php 并显示 php 脚本的内容而不是运行它。
如果我手动输入地址栏http://localhost/signup.php 脚本将被执行,并且所有属性为空白的记录被插入student 表中。所以我的结论是php运行正常。
当我提交表单时如何运行 php 脚本?谢谢:)
【问题讨论】:
-
在您的浏览器中,请确保您的网址是localhost/form.html
-
顺便说一句,像这样使用
mysqli仍然会让您面临SQL 注入。考虑使用prepared statements。 -
在地址栏中检查你的 URL 你的 URL 应该是 localhost/form.html