繁体   English   中英

无法重定向到下一页

[英]Not able to redirect to next page

我正在使用Win XP操作系统和XAMPP。 我使用eclipse作为编辑器。 在Eclipes中,我无法重定向下一页,所以现在我已经安装了Zend Development Environment。

现在我也遇到了同样的问题。

我的代码是

HomePage.php

<html>
<body>
<form name="Form1" id="FormId" action="Welcome.php" method="post">
    name : <input type="text" name="txtName">
    Phone Number : <input type="text" name="txtPnum">
    <input type="submit" name="SubmitIt" value="Submit It">     
</form>
</body>
</html>


And Welcome.php is

<?php
    ob_start(); 
    session_start();    
    if(!($_SESSION['UName']))
    {
        $_SESSION['UName']=$_POST['txtName'];
    }
    if(!($_SESSION['Ph Num']))
    {
        $_SESSION['Ph Num']=$_POST['txtPnum'];
    }
?>
<html>
<body>
Welcome <?php   
    if(isset($_SESSION['UName']))
    {
        echo  $_SESSION['UName'];
    }
    else
    {
        echo "Session not set<br/>";    
        echo "{$_SESSION['UName']}";        
        echo "The session contains <br>";
        print_r($_SESSION);
    }           
    ?>
</body>
</html>

它在浏览器中工作正常(重定向到下一页),但它不能在调试模式下工作。 在Eclipse和Zend Development Environment中都有。

它不显示下一页的内容,而是显示页面名称。(在我的示例中为Welcome.php)。

我是否需要安装任何其他额外的软件或代码本身....这是什么问题。 请建议我。

提前致谢....!

哪个部分应该进行重定向,我没有看到任何标题('Location:redirect.php')或其他东西

为什么在这里使用ob_start()

你没有释放输出缓冲区添加ob_get_clean(); 到底

<?php
    ob_start(); 
    session_start();    
    if(!($_SESSION['UName']))
    {
        $_SESSION['UName']=$_POST['txtName'];
    }
    if(!($_SESSION['Ph Num']))
    {
        $_SESSION['Ph Num']=$_POST['txtPnum'];
    }
    ob_end_flush();
?>
<html>
<body>
Welcome <?php   
    if(isset($_SESSION['UName']))
    {
        echo  $_SESSION['UName'];
    }
    else
    {
        echo "Session not set<br/>";    
        echo "{$_SESSION['UName']}";        
        echo "The session contains <br>";
        print_r($_SESSION);
    }           
    ?>
</body>
</html>

尝试在代码的末尾添加这个我很确定它是因为你没有释放输出缓冲区,虽然我认为它应该自动完成

echo ob_get_clean();

更新:

我不确定你为什么在这里使用$ _SESSION变量,但是你想解决这个问题,你可以使用例如$ uname而不是$ _SESSION ['UName'];

Welcome.php

<?php // at the beginning of your file, no spaces or newline
    session_start();
    $uName=$_POST['txtPnum'];
    $txtPnum=$_POST['txtPnum'];
    $_SESSION['UName'] = $uName;
    $_SESSION['PhNum'] = $uName;
?>
<html>
<body>
Welcome <?php echo  $_SESSION['UName']; ?>

</body>
</html>

你仍在调试你的代码,你摆脱了ob开始。 并一次尝试一步。 祝你好看。

暂无
暂无

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

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