我试图用PHP将用户添加到我的MYSQL数据库,不知何故它无法正常工作。检查下面的我的脚本。我做错了什么?
<html>
<head>
</head>
<body>
<form action="index2.php" method="post">
Voornaam: <input type="text" name="voornaam"><br />
<input type="submit" name="submit">
</form>
<?php
if (isset($_POST['submit'])) {
$con = mysql_connect("localhost","hakan","hakan");
if (!$con) {
die ("Can not connect: " . mysql_error());
}
mysql_select_db("projectfys",$con);
$sql = "INSERT INTO gebruikers (voornaam) VALUES ('voornaam')";
mysql_query($sql,$con);
mysql_close($con);
}
?>
</body>
</html>
答案 0 :(得分:1)
$ con需要排在第一位
E.g。
mysql_select_db($con,'db');
mysql_query($con,$sql);
随处改变方向。
另外,将所有内容更改为mysqli,您可以找到大量的mysqli或PDO教程
这个块应该看起来像(使用mysqli):
$con = new mysqli("localhost","hakan","hakan","projectfys");
$con -> set_charset ( 'utf8' );
if ($con->connect_errno) {
printf("Connect failed: %s\n", $con->connect_error);
exit();}
mysqli_query($con, "INSERT INTO gebruikers (voornaam) VALUES ('voornaam')");
$con -> close();
修改
使用您的查询,您将始终插入字符串&#34; voornaam&#34;在你的桌子里。
您需要在此之前执行此操作:
$voornaam = $_POST['voornaam'];
$voornaam = mysqli_real_escape_string($con,$voornaam);
在连接之后和查询之前添加此项。在查询中,替换第二个&#39; voornaam&#39;与&#39; $ voornaam&#39;
mysqli_query($con, "INSERT INTO gebruikers (voornaam) VALUES ('$voornaam')");