我正在将数据从表单发送到 php 脚本,该脚本应连接到数据库,然后更新表。它基本上是所有注册用户的数据库。由于某种原因,数据库表未使用值进行更新。
表单代码是:
<body>
<div class="header">
Registration
</div>
<div class="content" style="text-align:center";>
<form name="input" action="success.php" method="post"><br>
First name: <input type="text" name="firstname"><br/>
Last name: <input type="text" name="lastname"><br/>
Age: <input type="text" name="age"><br/>
Date of Birth: <input type="text" name="dateofbirth"><br/>
Email: <input type="text" name="email"><br/>
<input type="submit" value="Submit"><br/><br>
</form>
</div>
<br><br><a href="index.html" style="font-size: 22px";>Back</a>
</body>
我的 php 代码是:
<?php
$con=mysqli_connect("example.com","myname","123","database1");
$sql="INSERT INTO user (fname, lname, age, dob, email) VALUES ('$_POST[firstname]','$_POST[lastname]','$_POST[age]','$_POST[dateofbirth]','$_POST[email]')";
mysqli_query($sql);
mysqli_close($con);
?>
有人可以告诉我哪里出错了吗?数据库没有更新。我的表中没有输入任何值。
最佳答案
首先,请使用 PDO 或 mySQLi 的准备语句。
其次,数据库没有更新,因为您需要连接(再次强调,请不要这样做!)值,如下所示:
$sql="INSERT INTO user (...) VALUES (".$_POST['firstname'].",".$_POST[]."...)";
但这非常危险,所以我强烈...强烈建议研究 PDO。
还有
正如您帖子的评论中所述,mysqli_query
的语法是错误的。
关于php - 数据库未从 php 更新,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19460230/