我没有用PHP或SQL以前的经验,所以我没有听清的一切,我已经由以前的各种模板/例子做到了这一点,我管理我的形式连接到数据库,但它创建在我输入数据和记录提交之前记录,然后按提交,我无法弄清楚为什么,当我填写表单并按下提交时,它会把我带到主页,如果它这样做(并且不填写表中的数据),这里是代码和提前谢谢!为什么PHP输入数据之前我按下提交
<html>
<body>
<?php
$servername = "10.253.---.--";
$username = "intranet";
$password = "----";
$dbname = "intranet";
// Create connection
$conn = mysqli_connect($servername, $username, $password, $dbname);
// Check connection
if (!$conn) {
die("Connection failed: " . mysqli_connect_error());
}
$sql = "INSERT INTO AdresarGIS (Adresa, Broj, Mesto, Agent, Komentar)
VALUES ('$_POST[Adresa]','$_POST[Broj]','$_POST[Mesto]','$_POST[Agent]','$_POST[Komentar]')";
if (mysqli_query($conn, $sql)) {
echo "New record created successfully";
} else {
echo "Error: " . $sql . "<br>" . mysqli_error($conn);
}
mysqli_close($conn);
?>
<form method="post" action="<?php echo $_SERVER['PHP_SELF']; ?>">
<p>
<label for="Adresa">Adresa</label><br/>
<input type="text" name="Adresa" />
</p>
<p>
<label for="Broj">Broj</label><br/>
<input type="text" name="Broj" />
</p>
<p>
<label for="Mesto">Mesto</label><br/>
<input type="text" name="Mesto" />
</p>
<p>
<label for="Agent">Agent</label><br/>
<input type="text" name="Agent" />
</p>
<p>
<label for="Komentar">Komentar</label><br/>
<input type="text" name="Komentar" />
</p>
<p>
<input type="submit" name="submit" value="Pošalji" />
</p>
</form>
</body>
</html>
因为您不检查表单是否已提交,因此代码在页面加载时执行 –
ouch,您是否觉得SQL注入尚未完成? –
我该怎么做? ($ _POST [“submit”] ===“submit” 我想像这样: Adresa]”, '$ _ POST [Broj]', '$ _ POST [梅斯托]', '$ _ POST [代理]', '$ _ POST [Komentar]')“; } –