Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/267.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 提交其值正在更改的表单_Php_Javascript_Mysql_Html - Fatal编程技术网

Php 提交其值正在更改的表单

Php 提交其值正在更改的表单,php,javascript,mysql,html,Php,Javascript,Mysql,Html,我有一个表单,我从mysql获取表单的初始值,然后javascript更改该值(该值每秒钟增加1),但当我提交表单时,它会提交我从mysql获得的初始值 请告诉我如何提交更新值,例如,如果我从MySQL中检索到40作为表单值,那么它会继续增加,但当我提交时,表单值来自MySQL,它只提交40,但实际上我的表单值每秒都会增加。请告诉我如何在MySQL中提交更新值。这是我的代码。我意识到了你的问题:你在更新之前获取值,所以你总是获取旧值。确保在更新后运行选择,以便获得新值。试着这样做: // Onl

我有一个表单,我从mysql获取表单的初始值,然后javascript更改该值(该值每秒钟增加1),但当我提交表单时,它会提交我从mysql获得的初始值


请告诉我如何提交更新值,例如,如果我从MySQL中检索到40作为表单值,那么它会继续增加,但当我提交时,表单值来自MySQL,它只提交40,但实际上我的表单值每秒都会增加。请告诉我如何在MySQL中提交更新值。这是我的代码。

我意识到了你的问题:你在
更新之前获取值,所以你总是获取旧值。确保在
更新后运行
选择
,以便获得新值。试着这样做:

// 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>'
//仅在发布值时更新
如果(isset($\u POST['Time\u Spent1']))
{
//强制转换为整数或在此处使用mysql\u real\u escape\u string()来保护查询
$new_value=(整数)$_POST['Time_Spent1'];
sql_查询(“更新jcow_帐户设置时间_花费=“{$new_value}”,其中id=“{$client['id']}”);
}
//如果值已更新,请在之后运行选择
$res=sql_查询(“从jcow_帐户中选择*,其中id='{$client['id']}'”;
$row=sql\u fetch\u数组($res);
$Time=$row[‘花费的时间’];
回声'
收入:

'

因此,这与
$\u POST
值无关,用于从数据库重新填充表单输入的值是“old”。关于代码,我还有很多其他的地方可以挑剔,我很想这样做,但这应该会让你更进一步。

我已经分享了完整的php代码,在之前的邮件中我也给出了javascript,我的表单脚本也在我上面提到的代码中。请帮助我,它对我来说很好,不确定是什么问题。在将
$Time\u Spent1
发送到数据库之前检查其值时,您会得到什么?我在数据库中得到相同的初始值。我希望数据库中的值增加。在您的情况下,它也不起作用,因为当您在echo中提交时,它表明您已提交最新的值,但在形式值中,它应该是更新的值,但它仅为40。假设您提交了90,然后在回显中显示您已经提交了90,但当它刷新后,在表单字段中,它应该从90开始,而不是从40开始。我猜
sql\u query()
应该是其他内容(比如
mysql\u query()
),或者它是一个用户定义的功能…你会非常感谢它的工作就像一个魅力爱你的兄弟。能告诉我你的电子邮件地址吗???