在php中替换退出的另一个命令?

时间:2012-08-25 11:54:27

标签: php command exit

我们可以使用任何其他命令作为exit()的替代方法;在php。

因为如果不满足条件并且脚本必须退出,它会在页面末尾打破我的html代码。

或者,如果有人有任何其他想法来解决这个问题???

由于

更新

html code...

<?php
if username is not in correct format
echo "Please check your username";
exit();

if Username and Password didn't match
echo "Wrong Username or Password.";
exit();

if some other condition not met
echo "Condition not met";
exit();
?>

html code continues...

现在问题是如果不满足任何条件并且脚本必须退出,则它下面的html代码(整个网页)不显示...

请...我不是电脑爱好者,有问题所以问过它,但为什么人们会对这个问题投反对票?不明白......

2 个答案:

答案 0 :(得分:3)

您应该将代码包装成if语句:

<?php
    if($code == 'ok'){
        echo 'ok';
    } else {
        echo 'not ok';
    }
?>

您的脚本不需要exit(),您可以根据需要添加语句以及如何添加语句。

答案 1 :(得分:0)

顾名思义,PHP exit()语句将导致您的PHP脚本在此处退出,而不会执行任何其他操作。如果您希望它继续处理其余代码,请不要使用exit()

查看您的代码,您似乎的目标是向用户显示错误,然后(我猜)会重新显示他们填写错误的表单。

为什么不将它们存储到变量中,而不是仅仅在发现它们时回显错误,然后可以在HTML中的适当位置显示它们?即使是最基本的脚本也可以从一些基本的代码结构中受益。

作为一个例子(我强调这不是这种事情的唯一真实模式),你可以安排你的文件:

if ( /* form has been submitted */ )
{
     $errors = validate_form();
     if ( count($errors) > 0 )
     {
         display_form($errors);
     }
     else
     {
         display_success_message();
     }
}
else
{
     display_form();
}

function validate_form()
{
     $errors = array();

     // Series of if conditions, each adding a message to $errors if appropriate

     return $errors;
}

function display_form($errors=array())
{
     // HTML <ul> list displaying the contents of $errors, if any
     // HTML for form
}

function display_success_message()
{
     // HTML thanking user for a successful form submission
}