我做了一个网页,从一个字符串中获取他的数据从一个可视化的基本项目,并将其发送到MySQL。现在它已经运行他的PHP后关闭浏览器(Internet Explorer)。现在我找到了一种方法来关闭它,但没有“脚本试图关闭浏览器”Promt,但它太快并且数据永远不会到达数据库。我希望它等待(最好是直到PHP脚本完成,但如果不可能,那么几秒钟)使javascript等待php
这里是我的PHP:提前
<!DOCTYPE html>
<html>
<body>
<?php
//variabelen terughalen
$user = $_GET['userw'];
$ip = $_GET['ipw'];
$pc = $_GET['laptopw'];
$keuze = $_GET['keuzew'];
echo "$user <br> $ip <br> $pc <br> $keuze <br>";
//Serverside info
$servername = "172.17.80.153";
$username = "connect";
$password = "123456";
$dbname = "vbtest";
// Connectie maken
$conn = new mysqli($servername, $username, $password, $dbname);
// connectie testen
if ($conn->connect_error) {
die("Connection failed: " . $conn->connect_error);
}
echo "Connected successfully <br>";
//regels voor de lengte van variabelen
if (strlen($user) <> 4) { echo "geen veranderingen toegestaan";
die ;}
if (strlen($ip) > 14) { echo "geen veranderingen toegestaan";
die ;}
if (strlen($keuze) > 3) { echo "geen veranderingen toegestaan";
die ;}
if (strlen($keuze) < 2) { echo "geen veranderingen toegestaan";
die ;}
//Entry toevoegen aan de MySQL
if ($keuze == 'ja') {
$sql = ("INSERT INTO testtbl(Gebruikersnaam, Computernaam, Ipaddress, Keuze) VALUES('".$user."', '".$pc."', '".$ip."', '".$keuze."')");
}
else
{
$sql = ("INSERT INTO testntbl(Gebruikersnaam, Computernaam, Ipaddress, Keuze) VALUES('".$user."', '".$pc."', '".$ip."', '".$keuze."')");
$sql2 = ("INSERT INTO testtbl(Gebruikersnaam, Computernaam, Ipaddress, Keuze) VALUES('".$user."', '".$pc."', '".$ip."', '".$keuze."')");
if (mysqli_query($conn, $sql2)) {
echo "<br>New second record created successfully";
} else {
echo "Error: " . $sql2 . "<br>" . mysqli_error($conn);
}
}
if (mysqli_query($conn, $sql)) {
echo "New record created successfully";
} else {
echo "Error: " . $sql . "<br>" . mysqli_error($conn);
}
?>
<script type="text/javascript">
window.open('javascript:window.open("", "_self", "");window.close();', '_self');
</script>
</body>
</html>
感谢
你在你的代码都SQL注入和XSS漏洞。 – Boann 2014-10-30 14:27:03
一旦PHP完成,您将不得不返回客户端。 – 2014-10-30 14:27:05
JavaScript已经“等待”了PHP,因为在上面的代码完成之前,PHP将不会回显JavaScript,因此不能成为数据库插入不起作用的原因。 – Boann 2014-10-30 14:30:38