当前位置: 首页 > 知识库问答 >
问题:

提交后保留值

公宜春
2023-03-14

我正在尝试构建一个带有按钮的PHP计算器。我的问题之一是我不能有超过一个数字的值。例如,当我尝试输入一个值(例如33)时,文本框中的结果变为3,因为当我对所有数字使用submit时,页面被刷新。只能使用一个PHP页面。这个解决方案是向我建议的,但它不能解决我的问题,因为它使用了多个页面。此外,一个以上的数字似乎不起作用。

<input type="text" value="<?php
if(isset($_GET['number'])){
$number = $_GET['number'];
echo '<input type="hidden" value="'. print ($number) .'"';
} ?">

另外,这里是我的HTML的一个示例

 <input type="submit" value="9" name="number"class="button1">

这是我的用户界面的图片,一个我的用户界面的例子

共有1个答案

东深
2023-03-14

可以使用会话变量在页面加载之间保存数据。基本上,你把这个:

session_start();

在你想要共享变量的每一页的开头,然后你像这样声明/调用它们:

$_SESSION["number"] = 3;

因此,如果您发布/重新加载/导航到作为会话一部分的另一个页面,$\u会话[“number”]仍将是3,您可以在其中再添加3。

更进一步,您通常不希望以超文本标记语言形式提交您添加的每个数字的结果。您可能需要使用一个AJAX调用来返回计算字段的内容。这样你就可以实时计算,而不必重新加载整个页面,因为听起来这就是你想要的。

jQuery的AJAX方法在这方面非常好。

其工作方式是您有两个php文件,一个是视图,另一个是控件。视图是一个页面,它与表单和任何其他GUI元素一起保持加载状态,并且每次在视图中进行更改时都会调用控制器。控制器不是返回整个页面,而是数学运算,因此它只返回您正在执行的操作的数字部分,您可以在需要时将其重新加载到视图中。

[跟进]

对于纯php/html的简单解决方案,请尝试以下方法:

<?php
  session_start();
  If (!isset($_SESSION['start'])) {$_SESSION['start'] = true;}
  if ($_GET['clear'] == true || $_SESSION['start'] == true){
    $_SESSION['number'] = "";
    $_SESSION['start'] = false;
  }
  if(isset($_GET['number'])){
    $_SESSION['number'] = $_SESSION['number'].$_GET['number'];
  } 
?>
<input type="text" value="<?=$_SESSION['number']?>">
 类似资料:
  • 如果说在众多提交中,已某个提交为基准,只保留上游众多提交中的某个或者某几个,可以使用 cherry-pick命令,具体是: git cherry-pick <commit id> 如果没有冲突,则回显示如下: Finished one cherry-pick. # On branch dev # Your branch is ahead of 'origin/dev' by 3 commits.

  • 我有三个下拉列表,分别是国家、州和城市。首先,国家/地区下拉列表将显示所有国家/地区。当选择一个国家/地区时,将从MySQL数据库中提取相应的国家/地区,并显示在“国家/地区”下拉列表中。与选择州一样,相应的城市将从MySQL数据库中提取,并显示在cities下拉列表中。 下面是我选择国家,州,城市并单击提交按钮之前的默认显示。 在我选择国家,州,城市,并点击提交按钮,如下所示。它将刷新并返回默认

  • 用户提交表单后如何保留他们的输入? 例如: 如果用户键入 fname 和 lname,是的,它会回显出来。但是我想在输入类型中保留他们的名字和姓氏,这样如果表单很长,用户就不需要再次填写。

  • 抱歉,我无法理解这个问题的现有答案,也无法理解大多数问题,因为答案是模棱两可的,答案是什么正在完成的。我做了: git clone .... 使用我最喜欢的编辑器编辑文件“文件” 添加文件 git 提交文件 我想在2点后返回美国。还有3点之前。 如果您的答案包含任何git命令的参数,请不要忘记解释这些参数(例如HEAD~32)。 我的问题似乎是一个“重复的问题”。在搜索“撤销git提交”时,我没有

  • 我正在处理一个表单,其中我有一个动态字段,我可以在其中添加和删除输入和下拉字段。 我的问题是我不知道如何使我添加的字段和该字段上的数据在提交后保留下来。 我尝试使用这段代码使select标记保持值,但没有起作用。 这是我的示例代码。 自举 我希望你能帮助我,谢谢。

  • 我正在我的项目中使用yii2小部件datetimepicker。我想在提交页面后保留它的价值。 如何保留选定的日期时间值?任何帮助将高度赞赏。