if语句php无法正常工作

时间:2014-11-06 02:19:05

标签: php if-statement

我有if else声明。代码逻辑是第一个if语句将获得所需的所有必要信息,第二个if语句将打印在第一个if语句中生成的所有信息。问题是当它触发第二个if语句时,它会忽略存储在第一个if语句中的所有数据。 任何人都可以帮我解决这个问题吗?谢谢

这只是一个示例代码,但代码的过程和逻辑在某种程度上是相同的。

<head>
    <title>Sample PHP Web</title>
</head>

<body>
    <form method = "post">
    <input type = "submit" value = "submit" name = "submit">
    <?php
    if(isset($_POST['submit']))
    {
        $nn[0] = "man";
        $nn[1]= "men";
        echo'<input type = "submit" value = "print" name = "print">';
    }
    ?>
    </form>
    <?php
    if(isset($_POST['print'])) 
    {   
        echo $nn[0];
        echo $nn[1];
    }
    ?>
</body>

1 个答案:

答案 0 :(得分:2)

处理初始表单提交后,您设置为PHP变量的值将丢失。它们不会持续跨页面请求。如果您希望它们持久存在,则需要使用sessions

<?php
session_start();
?>
<head>
    <title>Sample PHP Web</title>
</head>

<body>
    <form method = "post">
    <input type = "submit" value = "submit" name = "submit">
    <?php
    if(isset($_POST['submit']))
    {
        $_SESSION['nn'][0] = "man";
        $_SESSION['nn'][1]= "men";
        echo'<input type = "submit" value = "print" name = "print">';
    }
    ?>
    </form>
    <?php
    if(isset($_POST['print'])) 
    {   
        echo  $_SESSION['nn'][0];
        echo " "; // seperate words with a space
        echo  $_SESSION['nn'][1];
    }
    ?>
</body>