繁体   English   中英

回显中的 PHP 提交按钮

[英]PHP submit button in echo

我正在尝试构建一个零食机,您可以在其中选择零食,获取价格,然后单击按钮付款。

喜欢:价格是 0,60 € 0.05(button) 0.10(button) .... 如果你按下 0.05-button 价格会降到 0,55€

为什么我点击按钮后没有得到“测试”回声?

这是我的代码

<?php
if(isset($_GET['mars']))
{
  $mars = "0,60";
  echo "Bitte Zahlen Sie noch <input type=\"button\" value=\"$mars\"> Euro<br>";
  echo "<input type=\"submit\" value=\"0,05\" name=\"fcent\">";
  if(isset($_GET['fcent']))
  {
   echo "test";
  }
}

?>

首先,您的代码中似乎没有表单标签。 如果没有表单标签,按下那个按钮实际上是通过 PHP 提交它会是一个奇迹。 换句话说,您需要将表单元素包装在<form></form>标签中。

其次,嵌套的if : if(isset($_GET['fcent']))无法访问,因为当您按下fcent按钮时; $_GET['mars']不在范围内,并且由于您的代码明确要求在$_GET['mars']设置时运行,所以不会发生任何事情。 下面的代码段考虑了这 2 点,您可以进一步微调它以满足您的需求......

注意:您必须确保您的 URL 读取类似于以下内容: http://localhost/index.php?mars=some-value

<?php

    $mars       = "0,60";
    $payForm    = "<form name='whatever' method='get' action=''><br>";
    $payForm   .= "Bitte Zahlen Sie noch <input type=\"button\" value=\"$mars\"> Euro<br>";
    $payForm   .= "<input type=\"submit\" value=\"0,05\" name=\"fcent\">";
    $payForm   .="</form>";
    if(isset($_GET['mars'])){
        echo $payForm;
    }
    if(isset($_GET['fcent'])){
        echo $payForm;
        echo "test";
    }

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM