所以我有这个网页:
<head>
<meta charset="utf-8">
<link rel="stylesheet" href="css/inputstyle.css">
<title>Database Input</title>
</head>
<body>
<h1> Database Input Page </h1>
<p> Here you can input to the Database </p>
<a href="View.html">View Database.</a>
<form submit="submit.php" method="post">
<p>First Name: <input type="text" name="firstname" /></p>
<p>Surname: <input type="text" name="surname" /></p>
<p>Age: <input type="text" name="age" /></p>
<p><input type="submit" /></p>
</form>
</body>
这个php脚本:
<?php
$username="root";
$password="password";
$database="posts";
$firstname=$_POST['firstname'];
$surname=$_POST['surname'];
$age=$_POST['age'];
mysql_connect(serverip,$username,$password);
@mysql_select_db($database) or die( "Unable to connect to Database");
$query = "INSERT INTO input
VALUES('$firstname','$surname','$age')";mysql_query($query);mysql_close();
?>
在我的mySQL数据库中,我有数据库&#39;帖子&#39;和表input
。使用输入表我只有3列,按顺序排列firstname
,surname
和age
。
我需要让这个适用于学校项目,但是当我尝试提交表单时,我收到错误405 Not Allowed
。这是我第一次使用php和mySQL,所以我不确定我是否犯了任何错误。此外,我的所有网络文件都位于/usr/share/nginx/html
内,但我确实有一个包含css的子文件夹。
答案 0 :(得分:2)
您有:(提交)
<form submit="submit.php" method="post">
^^^^^^
将其更改为:(操作)
<form action="submit.php" method="post">
POST变量区分大小写。
你有:
<input type="text" name="firstname" />
使用$firstname=$_POST['First Name'];
这有两个原因。
$firstname=$_POST['firstname'];
您还有:
<input type="text" name="surname" />
$surname=$_POST['Surname'];
调用应为$surname=$_POST['surname'];
然后
<input type="text" name="age" />
$age=$_POST['Age'];
调用,但应为$age=$_POST['age'];
这行我不确定mysql_connect(serverip,$username,$password);
serverip
未定义。
<强>脚注:强>
mysql_*
函数弃用通知:
http://www.php.net/manual/en/intro.mysql.php
从PHP 5.5.0开始,不推荐使用此扩展,不建议用于编写新代码,因为将来会删除它。相反,应使用mysqli或PDO_MySQL扩展名。在选择MySQL API时,另请参阅MySQL API Overview以获得进一步的帮助。
这些功能允许您访问MySQL数据库服务器。有关MySQL的更多信息,请访问»http://www.mysql.com/。
可以在»http://dev.mysql.com/doc/找到MySQL的文档。