从javascript中的不同形式获取值并存储在php会话中

Get a value from a different form in javascript and store in a php session

本文关键字:存储 php 会话 获取 javascript      更新时间:2023-09-26

我试图从不同的表单中获取值以存储在会话中。当用户单击窗体 1 上的"计算"时,它将打开窗体 2。在窗体二中,用户在文本字段中输入一个值。现在,如果用户再次按下计算按钮,我希望页面在会话中将值存储在表单二中,以便在表单二重新出现时存储值。

有没有办法使用 JavaScript 将其存储在 PHP 会话中

<?php
if(isset($_POST['calculate']))
{
   $_SESSION['ss'] = '<script>doument.form[frm2].ss.value</script>'; 
}
?>
<form action="" method="post" name="frm1" id = "frm1" enctype="multipart/form-data" onkeypress="return event.keyCode != 13;">
<input type="text" name="id" value="<?php echo $id; ?>" />
<input type="submit" name="calculate" id="calculate">
<form>
<?php 
 if(isset($_POST['calculate'])){        
?>          ?>
<form action="go.php" method="post" name="frm2" id = "frm1" enctype="multipart/form-data" onkeypress="return event.keyCode != 13;">
<input type="text" name="ss" value="" />
<input type="submit" name="submit" id="submit">
<form>
<?php 
}
?>
如果您

正在使用jQuery可以尝试这种方式。

首先在表单 1 中定义一个隐藏字段

<form action="" method="post" name="frm1" id = "frm1" enctype="multipart/form-data" onkeypress="return event.keyCode != 13;">
<input type="text" name="id" value="<?php echo $id; ?>" />
<input type="hidden" id="hidden_ss" name="hidden_ss" value=""/>
<input type="submit" name="calculate" id="calculate">
</form>

然后在 jQuery 中更改frm2 -> ss值时将值添加到隐藏字段

$("input[name='ss']").change(function(){
    $("#hidden_ss").val($(this).val());
});

然后文你创建计算按钮

<?php
   $ss = trim($_POST['hidden_ss']);
?>
<form action="" method="post" name="frm1" id = "frm1" enctype="multipart/form-data" onkeypress="return event.keyCode != 13;">
<input type="text" name="id" value="<?php echo $id; ?>" />
<input type="hidden" id="hidden_ss" name="hidden_ss" value=""/>
<input type="submit" name="calculate" id="calculate">
</form>
<?php 
 if(isset($_POST['calculate'])){        
?>          ?>
<form action="go.php" method="post" name="frm2" id = "frm1" enctype="multipart/form-data" onkeypress="return event.keyCode != 13;">
<input type="text" name="ss" value="<?php echo $ss; ?>" />
<input type="submit" name="submit" id="submit">
</form>
<?php 
}
?>

我相信你不需要JavaScript。
就像这样:

<form action="" method="post" name="frm1" id = "frm1" enctype="multipart/form-data" onkeypress="return event.keyCode != 13;">
    <input type="text" name="id" value="<?=htmlentities($_SESSION['id'])?>" />
    <input type="submit" name="calculate" id="calculate">
</form>
<?php 
 if(isset($_POST['calculate']))
 {
    $_SESSION['id'] = $_POST['id'];
    ?>
     <form action="go.php" method="post" name="frm2" id = "frm1" enctype="multipart/form-data" onkeypress="return event.keyCode != 13;">
         <input type="text" name="ss" value="<?=htmlentities($_SESSION['id'])?>" />
         <input type="submit" name="submit" id="submit">
     </form>
<?php 
 }
?>