PHP 在会话中存储按钮名称


PHP store Button Name in Session

我对php非常陌生,并且一直在运行一些教程。我有一个简单的页面,有三个按钮。当用户单击按钮时,我想在会话中存储按钮的名称。这是我所拥有的:

<?php
    session_start();
    $rep = $_SESSION[' *** selected button name ***'];
?>
<body>
  <form method='post' action='dpuform.php' target='_blank'>
    <input type='submit' name='sales' value='Sales'/><br/>
    <input type='submit' name='engineering' value='Engineering'/><br/>
    <input type='submit' name='production' value='Production'/><br/>
  </form>
</body>

然后我需要在下一页"dpuform.php"中检索此值...

您实际上无法存储在同一页面的会话变量中单击的按钮,因为那是客户端代码。还有其他方法(1. ajax,2. 添加到表单使用$_POST值提交的页面上的会话变量,以及...),最简单的方法如下: 如果您只需要访问从"dpuform.php"单击的按钮,则可以使用该页面中的$_POST变量来获取所选按钮的值。

双歧.php

if(isset($_POST['sales'])){
   //sales button
} else if(isset($_POST['engineering'])){
   //sales button
} else if(isset($_POST['production'])){
   //sales button
} else{
   //error handling
}

您将在此任务中面临的基本问题是HTML在客户端(在浏览器中)运行,而PHP代码在服务器端运行。这意味着,为了在会话中存储任何内容,您实际上需要将数据传输到服务器端,例如通过表单提交。因此,HTML代码被发送到浏览器,用户在那里填写并将其提交回服务器。然后,您可以存储数据,而不是之前。这意味着没有"直接"的方法将PHP代码连接到HTML,您必须从请求变量($_GET,$ _POST等)中取出提交的数据并单独处理。