簡體   English   中英

從具有開關的php函數中調用ajax($ this-> method)

[英]calling ajax from within a php function having a switch ($this->method)

當在具有這樣的代碼的php文件中創建XMLrequest時...我正在使用MVC(模型-視圖-控制器結構),這是一個控制器php文件。

Controller_Institute extends Controller_Default{



function register(){
    try {

        $this->requireLogin();

        switch($this->method){
            case 'GET':
                $content = $this->render('institute_registration_confirm');
                break;
                case 'POST':

$result = mysql_query("SELECT * FROM password WHERE         pass='".mysql_real_escape_string($_POST['pass'])."'");
$num=mysql_num_rows($result);
if($num==2)
{
$content = $this->render('institute_registration');
}
else
{                   
                $content = $this-  >render("message",array('msg'=>'Your password is incorrect'));

}
break;
}                   
                $institute = R::dispense('institute');
                $institute- >import($_POST,'name,latitude,state,longitude,address,phone,year,url');
                $id = R::store($institute);

                }
                catch(exception $e){
        //If there was an error anywhere, go to the error page.
        $content = $this->render('error',array('exception'=>$e));   
    }
            $page = $this->render('default',array('content'=>$content));
            return $page;

}

我正在從函數內發送ajax請求 ...所以當ajax發送回請求時,它陷入了開關情況...然后響應文本成為函數返回值替換了實際文本...任何想法如何防止xml響應進入切換情況...? institute_registration是視圖文件,我正在將該文件包含在我的框架中,然后從該文件中觸發ajax函數以檢查密碼(啟用注冊表單)是否正確...

考慮到有限的信息和偽代碼,我建議設置一個獨立的頁面,例如say ...“ ajax.php”,該頁面是獨立的,並且不會基於請求方法返回值。 使用AJAX的頁面將需要從該頁面進行POST或GET。

如果確定是否通過請求方法返回常規輸出與AJAX輸出,那么您將通過兩種方式限制自己。 第一個是您將無法在網頁上執行一項或兩項(GET與POST),而不能同時執行兩項。 另外,第二,涉及到AJAX,您將無法運行GET&POST AJAX請求,是的,您可以同時使用AJAX: http : //net.tutsplus.com/tutorials/javascript-ajax / 5方式使帶有jquery的ajax調用/

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM