【发布时间】:2016-03-31 20:01:52
【问题描述】:
请帮忙,这快把我逼疯了!我想,我有一个简单的注册表单,我正在尝试使用 PHP 将数据发送到 Webmatrix 中的 MySQL。 (PHP 5.5 在 webmatrix 3 中向 MySQL 5.7 添加数据)但是,我在 Chrome 中收到以下错误:
本地主机页面不工作 localhost 当前无法处理此请求。 500
这是 PHP:
<?php
$db_user = 'root';
$db_pass = '';
$db_name = 'MySQL10';
$db_host = 'localhost';
$fname = $_POST('fname')
$lname = $_POST('lname')
$email = $_POST('email')
//Create Connection
$conn = new mysqli ( $db_host, $db_user, $db_pass, $db_name);
//Check connection
if ($conn->connect_error) {
die("Connection failed:" . $conn->connect_error);
}
$sql = "INSERT INTO table_1 (fname_1, lname_1, email_1)
VALUES ('$fname', '$lname', '$email')";
$conn->close();
?>
这里是标记:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Test Page</title>
</head>
<body>
<div class="registration">
<form name="test" method="post" action="demo.php" autocomplete="on">
<p>First name:<input type="text" name="fname" value=""></p>
<p>Last name:<input type="text" name="lname" value=""></p>
<p>Email Address:<input type="email" name="email" value=""></p>
<input type="submit" value="Submit">
</form>
</div>
</body>
</html>
【问题讨论】:
-
500 错误非常普遍。检查服务器的错误日志。
-
当您看到 500 服务器错误时,您必须查看 Apache 错误日志以了解发生了什么。在上面的代码中,您必须在
$fname = $_POST('fname')的末尾添加一个分号 (;) 并遵循两行。 -
@fusion3k 分号会有所帮助,但
$_POST是一个数组,因此正确的语法是$_POST['fname'] -
谢谢大家。我添加了
[]和;并检查了输入:if ($conn->query($sql) === TRUE) { echo "New record created successfully"; } else { echo "Error: " . $sql . "<br>" . $conn->error; }我被提醒我没有为数据库中的 ID 设置默认值!
标签: php mysql mysqli webmatrix webmatrix-3