将jsp确认框的结果分配给php变量

时间:2010-01-23 08:13:21

标签: php javascript

//this is in php.
function msgbox($msg, $type)
    {
    if ($type == "alert")
        {
        // Simple alert window
        ?> <script language="JavaScript"> alert("<? echo $msg; ?>"); </script> <?
        }
    elseif ($type == "confirm")
        {
        // Enter Confirm Code Here and assign the $result variable for use
        // Should include "OK" and "Cancel" buttons.
        ?>
           <script language="JavaScript">
           if (confirm("<? echo $msg; ?>"))
                {
                <? $result == "ok"; ?>
                }
           else
                {
                <? $result == "cancel"; ?>
                }
           </script>
        <?
        }
    }



if ($page_title->exists())

{msgbox("page exists,do you want to delete", "confirm");

}
if ($result == "ok")

 //code.. 

问题是$result没有从确认框中读取值,我认为因为if子句没有被执行而且程序流正在没有if子句的情况下进行。

1 个答案:

答案 0 :(得分:1)

您必须了解PHP和JavaScript代码何时执行。首先,服务器运行您的PHP代码。这会生成HTML输出,并传递给您的浏览器,浏览器会执行JavaScript代码。这意味着当您在JavaScript中运行confirm()时,您的PHP代码已经完成(并且可能正在提供另一个请求)。

您需要重新考虑用户互动。

(顺便说一下,JSP意味着Java Servlet Pages,而不是JavaScript)