在编写输入类型文本后存储PHP变量

Store PHP variable just after writing input type text

本文关键字:存储 PHP 变量 文本 类型 输入      更新时间:2023-09-26

我需要在用户写入后立即将输入类型文本的值保存在PHP变量中。我发现JQuery中的blur事件可以触发写入输入类型文本后发生的事件,因此我有以下内容:

<script>
     $("document").ready( function() 
     { 
       $("#primerApellido").blur(function() {
            alert('out');
            <?php 
                $primerApellidoForm = 
                "<script type=''text/javascript''>
                    $('#primerApellido').val();
                </script>
                ";
            ?>                
        });
     }); 
 </script>
这里是我的输入类型text:
<input type="text" id="primerApellido" name="primerApellido" value="<?php echo $primerApellidoForm?>"/>
因此,正如您所看到的,我需要在用户离开文本框后立即保存在PHP变量的输入中键入的内容。现在它保存的是Javascript变量赋值,而不是我需要的值。

我如何将文本框上键入的值传递给我的PHP变量?

我想你可能有点混淆PHP和Javascript。PHP只在服务器上运行。Javascript只能在浏览器上运行。

你不能直接从javascript修改PHP变量

你可以做的是,使一个ajax调用到另一个页面做一些事情与该变量,如保存在会话或到数据库。

查看Javascript jQuery ajax命令。使用此命令,您可以运行另一个页面,而无需离开当前页面。您可以将该页面设置为一个PHP页面,该页面接收该变量并对其执行操作。

试试这个…

$("#primerApellido").onkeyup(function() {
    var user_input = $(this).val();
    $.ajax({
        type:'GET', 
        url: 'path/to/your/phppage',
        data:{user_input:user_input}, 
        success: function(response) {
            //alert(response);
        }
    });
});

我遵循Mark Carpenter的建议使用Ajax函数,下面是我想要的代码:

$("document").ready( function() 
$("#primerApellido").blur(function() {
    $.ajax({
    type: "GET",
        url: "destinationURL.php",
        data: "primerApellidoForm="+$('#primerApellido').val(),
        success: function(msg){
            alert( "Data Saved: "+msg);
         }
      });
   });
});

现在PHP变量"primerApellidoForm"的值从$('#primerApellido').val()输入类型。

不确定你想做什么是可能的。一旦加载了页面,就无法运行php代码(但是可以发出ajax请求)。

如何使用JavaScript变量作为PHP变量?

你可以试试这个…

<script type="text/javascript">
$("#primerApellido").blur(function() {
<?php $primerApellidoForm  = "<script>document.write($(this).val());</script>"?> 
});  
</script>