在页面刷新时提交输入字段

时间:2014-11-25 16:07:04

标签: php

我目前正在使用PHP将健康用户的值设置为用户ID的值,并将其传递给数据库查询。我还通过JS在页面上设置了刷新,最后添加了一个输入文本框,从服务器中提取值,并允许输入我选择的任何其他用户ID。

<?php
$user_name = str_replace("MY_DOMAIN\\", "", $_SERVER['AUTH_USER']);
?>

<script language="JavaScript">
<!--

var sTargetURL = "dashboard.php";    // what this page should refresh to next

function doRedirect()
{
setTimeout("timedRedirect()", 600*1000);   // number before operator is the seconds     before refresh
}

function timedRedirect()
{
window.location.href = sTargetURL;
}

//-->
</script>

</head>
<body onload="doRedirect()">

<FORM NAME ="form1" METHOD ="POST" ACTION = "dashboard.php">

<INPUT TYPE = "TEXT" VALUE ="<?php echo ($user_name); ?>" NAME ="username">
<INPUT TYPE = "Submit" Name = "Submit1" VALUE = "Enter">

</FORM>

<div id="right-dashboard">
<div id="titlebox-unassigned">
<h1>SRs to Close</h1>
</div>

<?php
Include 'Inc/srtoclose.php'
?>

</div>

包含文件中的数据库查询代码看起来有点像这样:

<?php

 $dbName = "C:\my.mdb";
if (!file_exists($dbName)) {
die("Could not find database file.");
 }

try {
$db = new PDO("odbc:DRIVER={Microsoft Access Driver (*.mdb)}; DBQ=$dbName; Uid=; Pwd=;");
}
catch(PDOException $e)
{
echo $e->getMessage();
}


$sql = "SELECT SR.one, SR.two, SR.three
FROM SR
 where SR.two = 'my team' 
 and SR.three = 'Closure'
 ". $full_user_name ." 
order by SR.one";

$result = $db->query($sql);

echo "<table><tr id=\"header\"><td>one</td><td>two</td><td>three</td><tr>";

echo "<tr><td><b>" . $row["one"] . "</b></td><td>" . $row["two"] . "</td><td>" . $row["three"]."</td>".
"</tr>
}
echo "</table>";
?>

我想要做的是,在页面刷新时,重新提交当前在texbox中的值。目前发生的事情是页面刷新为空白,输入框中的作者用户名要求最终用户点击输入按钮重新运行查询。

当页面自然刷新时,有没有办法根据当前输入打开会话?

2 个答案:

答案 0 :(得分:0)

使用

window.location.href = sTargetURL;

只是重定向页面,它不会提交它。

要提交表单,请改用它。

document.getElementById("form1").submit();

哦,并给表单一个id

<form id="form1" name="form1" method="POST" action="dashboard.php">

此外,您不必大喊所有HTML标记和属性。

答案 1 :(得分:0)

使用jquery在页面刷新时使用id =“#someId”提交表单,您可以使用以下代码

$(window).bind('beforeunload',function(){

    $("#someId").submit();

});

以下是http://jsfiddle.net/okrba54m/

的示例