输入文本输入后,php动态更改变量值

时间:2014-01-21 10:49:30

标签: php dynamic

我有一个输入框,我希望在输入框中键入文本后动态更改变量值,但不按任何按钮,仅在文本更改时。 例如:

Input box= $5
$text= input box value * 2

任何人都知道如何做到这一点?

编辑:我知道我必须使用JavaScript,但我不擅长它而且我不知道如何编写代码。

EDIT2:我有这张桌子:

<tr>
 <td>Mogući dobitak:</td>
 <td colspan='2'>" . $dobitak . "</td>
</tr>
<tr>
 <td>Ulog:</td>
 <td><input type='text' id='ulog' name='ulog' size='10' value='1' ></td>
 <td><input type='submit' name='submit' value='Uplati'></td>
</tr>

因此,在输入框(id ='ulog')中输入值(默认值为1)后,我想更改变量&amp; dobitak。 让我们说,对于这种情况,输入框值= $ dobitak(我稍后会添加* 2)。

4 个答案:

答案 0 :(得分:1)

你不能直接在PHP中这样做,因为它只在服务器上运行;即,它不知道用户何时与网页交互。相反,您可以使用AJAX方法。它将使用客户端脚本(例如JavaScript)来检测文本何时更改,然后向服务器发送请求。服务器处理数据并返回响应。

重要的是要注意,这不能改变已经运行的PHP脚本中的变量。它只能在脚本开头提供数据。

答案 1 :(得分:0)

使用对每个textchange事件触发的服务器的ajax调用

答案 2 :(得分:0)

你不能只使用PHP,因为它适用于服务器端,而不是客户端。 所以你必须使用javascrpit拦截这个动作。我认为这更好。

答案 3 :(得分:0)

PHP是一种服务器sidde脚本语言,它创建一个HTML然后终止,并且在生成html之后它不知道客户端发生了什么。只有在向其发送请求时它才会响应。 要在HTML中的事件之后发送请求,您必须使用如下的ajax:

HTML&amp; jQuery的

<script src='http://code.jquery.com/jquery-1.9.1.js'></script>

<input type='text' id="text" onblur="change()" />
<script>
function change() {
    var text = $("#text").val();
    $.post('1.php',{text:text},function(e){
        $("#text").val(e);
    });
}
</script>

1.PHP

<?php
if($_POST['text']){
    die($_POST['text']." --- changes"); //or whatever changes that you want to do
} 
?>

它将“ ---更改”添加到输入模糊的输入值的末尾,您可以进行所需的任何更改。