我有一个表单,我从mysql获取表单的初始值,然后javascript更改值(每秒该值增加1)但是当我提交表单时,它提交的初始值我得到的mysql。
请告诉我如何提交更新的值,例如,如果我从MySQL检索到40作为表单值,那么它会继续增加,但是当我提交时,表单值来自MySQL只提交40但实际上我的表单值每秒增加请告诉我如何在MySQL中提交更新的值。这是我的代码。
答案 0 :(得分:1)
我意识到了你的问题:你在UPDATE
之前获取值,所以你总是得到旧值。确保在<{em> SELECT
之后运行UPDATE
,以便获取新值。尝试这样的事情:
// Only update if a value was posted
if (isset($_POST['Time_Spent1']))
{
// Cast to integer or use mysql_real_escape_string() here to protect the query
$new_value = (integer) $_POST['Time_Spent1'];
sql_query( "update jcow_accounts set Time_Spent = '{$new_value}' where id = '{$client['id']}' " );
}
// Run SELECT afterwards, in case the value was updated
$res = sql_query("select * from jcow_accounts where id='{$client['id']}'");
$row = sql_fetch_array($res);
$Time = $row['Time_Spent'];
echo '<form name="form1" method="post" action="">
<p>Earning: <input name="Time_Spent1" value="'.$Time.'" id="Time_Spent1" type="text" size="7" /></p>
<input type="submit" name="Submit" value="submit" />
</form>'
因此,它与$_POST
值无关,用于从数据库重新填充表单输入的值是“旧”。还有很多其他的东西我可以挑剔代码,我很想,但这应该会让你前进。