将“返回”值添加到div

时间:2013-06-08 18:28:13

标签: php

我想知道是否可以将PHP中的返回值添加到页面内容中,而不仅仅是显示为错误。

目前,提交表单时会生成以下内容:

enter image description here

我想要的是,当提交表单并显示错误/成功消息时,页面的内容也应该存在。像这样:

enter image description here

这是我的代码:

if($_POST)
{
    $newTopic = $forum->newTopic();


        /*
         * Return codes:
         * 1: No title
         * 
         * 100: Success
         */

    switch($newTopic)
    {

            case 1:
                $error = 'You have not entered any title.';
                $stop = true;
            break;

            //If no error = success.    
            case 100:
                $success = "Success! TOpic created";
            break;
    }

    die($error);
}

我怎样才能获得这个?

修改

页面的HTML生成如下:

loadmodule('forum');
$forum= new Forum;

if(file_exists(HEADER)) { include_once(HEADER); }
if($contents) { print $contents; }  
if($_POST)
{
    $newTopic = $forum->newTopic();


        /*
         * Return codes:
         * 1: No title
         * 
         * 100: Success
         */

    switch($newTopic)
    {

            case 1:
                $error = 'You have not entered any title.';
                $stop = true;
            break;

            //If no error = success.    
            case 100:
                $success = "Success! TOpic created";
            break;
    }

    die($error);
}


if(file_exists(FOOTER)) { include_once(FOOTER); }

3 个答案:

答案 0 :(得分:1)

当然,请使用echo代替die。请阅读PHP手册中的介绍。 echo实际上是您学习的PHP中的第一个字。

答案 1 :(得分:1)

您可以使用新的echo语句更新同一页面。说在页面的末尾删除die()并添加一个echo()。在此echo语句中,您可以按照所需的格式显示响应。加载您当前使用的相同页面以输入值而不是任何其他错误页面以显示错误消息。

答案 2 :(得分:0)

<?php
if($_POST)
{
$newTopic = $forum->newTopic();


    /*
     * Return codes:
     * 1: No title
     * 
     * 100: Success
     */

switch($newTopic)
{

        case 1:
            $mssg = 'You have not entered any title.';
            $stop = true;
        break;

        //If no error = success.    
        case 100:
            $mssg = "Success! TOpic created";
        break;
    }


 }
 ?>
 <html>
 <head>
 </head>
 <body>
 <div>
    <p><?php if(!empty($mssg)) echo $mssg;?></p>
 </div>
 <div>
   ------------------
   -----------------
</div>
</body>
</html>