Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/73.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 如何使用';如果';_Php_Html - Fatal编程技术网

Php 如何使用';如果';

Php 如何使用';如果';,php,html,Php,Html,我想检查表单的变量。这里我希望“a”和“b”是介于5和99之间的数字。如果这是真的,我想自动重定向到下一页,如果不保留到这个页面 让我通过展示我编写的代码来解释: (很抱歉,我花了15分钟来理解如何在这里编写代码,但我不懂,所以必要时我会使用空格) 对于这个可能很简单的问题,我很抱歉,但我在谷歌上只找到了愚蠢的答案。首先,你必须先检查一下,然后再回应一些东西。然后使用标题(“Location:mylogin_page.php”)当用户有可能看不到某个内容时,回显该内容有什么意义?然后在ht

我想检查表单的变量。这里我希望“a”和“b”是介于5和99之间的数字。如果这是真的,我想自动重定向到下一页,如果不保留到这个页面

让我通过展示我编写的代码来解释: (很抱歉,我花了15分钟来理解如何在这里编写代码,但我不懂,所以必要时我会使用空格)




对于这个可能很简单的问题,我很抱歉,但我在谷歌上只找到了愚蠢的答案。

首先,你必须先检查一下,然后再回应一些东西。然后使用
标题(“Location:mylogin_page.php”)
当用户有可能看不到某个内容时,回显该内容有什么意义?然后在html输出之前使用标题。

在回显内容之前,必须首先检查标题。然后使用
标题(“Location:mylogin_page.php”)
当用户有可能看不到某个内容时,回显该内容有什么意义?然后在html输出之前使用标题。

因为您已经将内容输出到屏幕,所以不能使用
标题('Location:mypage.php')
。如果您不能或不想这样做,另一种选择是使用javascript重定向:

echo "<script>document.location.replace = 'mypage.php';</script>";
echo“document.location.replace='mypage.php';”;

因为您已经将内容输出到屏幕,所以不能使用
标题('Location:mypage.php')
。如果您不能或不想这样做,另一种选择是使用javascript重定向:

echo "<script>document.location.replace = 'mypage.php';</script>";
echo“document.location.replace='mypage.php';”;





首先,在将任何html代码发送到浏览器后,您不能使用
header
,因此您的php代码应该位于另一个文件中,因此您应该:

first step.php
,其中包含:

<?php
   session_start();
?>
<html>
   <head>
   </head>
   <body>
   <?php
      if(isset($_SESSSION['error'])) {
         echo $_SESSION['error'];
         unset($_SESSION['error']);
      }
   ?>
   <form action="actions.php?step=1" method="POST">
     <input type="text" name="a"><br>
     <input type="text" name="b"><br>
     <input type="submit" value="GO!">
   </form>
   </body>
</html>

首先,在将任何html代码发送到浏览器后,您不能使用
header
,因此您的php代码应该位于另一个文件中,因此您应该:

first step.php
,其中包含:

<?php
   session_start();
?>
<html>
   <head>
   </head>
   <body>
   <?php
      if(isset($_SESSSION['error'])) {
         echo $_SESSION['error'];
         unset($_SESSION['error']);
      }
   ?>
   <form action="actions.php?step=1" method="POST">
     <input type="text" name="a"><br>
     <input type="text" name="b"><br>
     <input type="submit" value="GO!">
   </form>
   </body>
</html>


标题(“位置:my_page.php”);退出()
重定向回显“corect”的位置不起作用,因为他以前正在输出内容。没错,当他来发送新标题时,标题总是被发送的。因此,他应该将PHP代码移动到页面顶部。
标题(“Location:my_page.PHP”);退出()
重定向回显“corect”的位置不起作用,因为他以前正在输出内容。没错,当他来发送新标题时,标题总是被发送的。因此,他应该将PHP代码移到页面的顶部。因为他之前有HTML输出,这将失败,标题已发送错误。我知道echo在那里是不可用的…@Point89:这不是关于
echo
,而是关于开始时的
输入
标记。当然,
echo
也不应该在那里。因为他以前有HTML输出,这将失败,因为已经发送了一个标题错误。我知道echo在那里是不可用的…@Point89:这不是关于
echo
,而是关于开始时的
输入
标记。当然,
echo
也不应该在那里。好的解决方案是,可以将
type=“text/javascript”
添加到
script
-标记中,这样就可以了。:)不需要脏东西。只要稍微改变一下逻辑——我更感兴趣的是这个概念,而不是他的HTML版本:)@DenisErmolin我同意!但有时事情并不像那样简单。我目前正在开发一个系统,在这个系统中,需要花费数小时的工作才能改变它。有时,脏是唯一的选择:(更改什么?在任何输出之前编写一些代码?好的解决方案,也许可以将
type=“text/javascript”
添加到
脚本
-标记中,只是为了拥有它。:)不需要脏东西。只要稍微改变一下逻辑——我更感兴趣的是这个概念,而不是他的HTML版本:)@DenisErmolin我同意!但有时事情并不像那样简单。我目前正在开发一个系统,在这个系统中,需要花费数小时的工作才能改变它。有时肮脏是唯一的选择:(更改什么?在任何输出之前写一些代码?我不明白。你的脚本什么都不做…我不明白。你的脚本什么都不做…带有difrent文件的idea是有意义的。谢谢!(mersi!)欢迎:)(特写placere!)带有difrent文件的idea是有意义的。谢谢!(梅西!)欢迎:)(铜砂矿!)
<?php
   session_start();
?>
<html>
   <head>
   </head>
   <body>
   <?php
      if(isset($_SESSSION['error'])) {
         echo $_SESSION['error'];
         unset($_SESSION['error']);
      }
   ?>
   <form action="actions.php?step=1" method="POST">
     <input type="text" name="a"><br>
     <input type="text" name="b"><br>
     <input type="submit" value="GO!">
   </form>
   </body>
</html>
<?php
  session_start();

  switch($_GET['step']) {
     case 1:
       if(is_numeric($_POST["a"]) && is_numeric($_POST["b"]) && $_POST["a"]<100 && $_POST["a"]>4 && $_POST["b"]<100 && $_POST["b"]>4)
       {
         header('Location: second-step.php');
         exit;
       }
       else
       {
         $_SESSION['error'] = 'my error';
         header('Location: first-step.php');
       }
     break;
   }
?>