我有一个带有提交按钮的表格。当我单击此按钮时,我不想重定向到 action =“” 中列出的页面connection.php。但是,我要让它只显示显示成功或不成功的弹出窗口,并让connection2.php在后台执行操作。
HTML:
<form action="connection2.php" method="post">
<input type="date" name="date" placeholder="Name" required="">
<input type="submit" name="submit" id="submit" class="strelka-send" value="Insert">
<div class="clear"> </div>
</form>
CONNECTION2.PHP:
<?php
# Connection
$servername = "";
$connectionInfo = array(
"Database"=>"",
"UID"=>"",
"PWD"=>""
);
$conn = sqlsrv_connect($servername, $connectionInfo);
if( $conn === false ) {
echo "Error (sqlsrv_connect): ".print_r(sqlsrv_errors(), true);
exit;
}
# Parameters
$Date = $_POST['date'];
$params = array
(&$Date);
# Statement
$sql = "INSERT INTO table([Date]) VALUES
(?)";
$stmt = sqlsrv_prepare($conn, $sql, $params);
if ($stmt === false) {
echo "Error (sqlsrv_prepare): ".print_r(sqlsrv_errors(), true);
exit;
}
if (sqlsrv_execute($stmt)) {
echo "Statement executed.\n";
} else {
echo "Error (sqlsrv_execute): ".print_r(sqlsrv_errors(), true);
}
# End
sqlsrv_free_stmt($stmt);
sqlsrv_close($conn);
?>
<!DOCTYPE html>
<html>
<body>
<br>
<h1>SUCCESS</h1>
<script>
setInterval(function(){
window.location.href="link_to_index.html" }, 5000);
</script>
</body>
</html>
到目前为止,我已经在页面connection2.php上设置了计时器,该页面在提交表单后打开,然后返回上一页。但这不是最好的解决方案。
答案 0 :(得分:1)
如果您不希望在表单提交中重定向,则必须使用AJAX技术,例如JQUERY 看看Submitting HTML form using Jquery AJAX
答案 1 :(得分:0)
使用此代码将表单提交到弹出窗口中。
此代码在提交表单后将其提交到弹出窗口。
<form action="connection2.php" method="post" target="popupwindow" onsubmit="window.open('connection2.php', 'popupwindow', 'scrollbars=yes,width=550,height=520');return true">
<input type="date" name="date" placeholder="Name" required="">
<input type="submit" name="submit" id="submit" class="strelka-send" value="Insert">
</form>
我尚未测试此代码。
但是希望这对您有用。