2012-04-24 3 views
0

次のjqueryとcakephpコードは、localhost上で正しいresult_strを警告しますが、リモートサーバでは機能しません。私はローカルホストとリモートサーバの両方の出力を最後に含めました。jquery cakephp:postメソッドは正しい結果文字列をローカルに警告しますが、リモートサーバでは動作しません

postメソッドは動作していますが、正しい出力をリモートで表示することはできません。

私は既に入力しているメールIDがリモートDBに存在していることを確認しました。

merry_parentモデルのdebug($ merryparent_info)は、ローカルとリモートの両方で表示されません。ユーザーが親情報電子メールIDを入力し、タブボタンを押すと

ポップアップし、link to my site

で2つの警告ボックスを見てみてください。最初のメソッドはpostメソッドで渡されたemail_idを表示し、2番目の警告はresult_strを表示します。

誰かが間違っている場所を教えてもらえますか?私はこの4日間問題を解決しようとしてきました。ありがとうございました。

<script type="text/javascript"> 
     $(document).ready(function(){ 
      $("#MerryParentEmail").change(function(){ 
      //txt=$("#MerryParentEmail").val(); 
      email_id=$("#MerryParentEmail").serialize(); 
      $.post("/students/get_parent_info",email_id,function(result_str){ 
           alert("result_str: "+result_str); 
      }); 
      }); 
    </script> 

students_controller.php

function get_parent_info(){ 
//$this->layout=false; 
if (!empty($this->data)){ 

    $merryparent_info=$this->Student->MerryParent->getMerryParents($this->data['MerryParent']['email']); 
    print_r($merryparent_info); 
    echo $merryparent_info['MerryParent']['initial'].'*****'; 
    echo $merryparent_info['MerryParent']['name'].'*****'; 
    echo $merryparent_info['MerryParent']['landline'].'*****'; 
    echo $merryparent_info['MerryParent']['mobile'].'*****'; 
    echo $merryparent_info['MerryParent']['address'].'*****'; 
    echo $merryparent_info['MerryParent']['state_id'].'*****'; 
    echo $merryparent_info['MerryParent']['city_id'].'*****'; 
    echo $merryparent_info['MerryParent']['postal_code'].'*****'; 
    } 
} 

merry_parent.phpモデル

function getMerryParents($field_value){ 
    if (is_int($field_value)) 
     $conditions=array('merryParent.id'=>$field_value); 
    else 
     $conditions=array('merryParent.email'=>$field_value); 

    //debug($conditions); 

    $merryparent_info=$this->find('first',array(
           'conditions'=>$conditions, 
           'recursive'=>-1 //fetches merry_parents table data only not the associated data 
           )); 
      debug($merryparent_info); 
    return $merryparent_info; 
} 

ローカルホスト出力:

最初の警告

email_id: data%5BMerryParent%5D%5Bemail%5D=banana8%40gmail.com 

二警告

result_str: Array 
    (
    [MerryParent] => Array 
     (
      [id] => 38 
      [initial] => Ms 
      [name] => banana kaur 
      [username] => banana8 
      [email] => [email protected] 
      [password] => 7b311dc3e6d4862caf024b65410c793adfc530bc 
      [landline] => 
      [mobile] => 8487234783 
      [address] => 99 fruits road 
      [state_id] => 14 
      [city_id] => 81 
      [postal_code] => 877979 
      [created] => 2012-02-08 05:24:49 
      [modified] => 2012-02-15 15:46:05 
     ) 
) 
    Ms*****banana kaur**********8487234783*****99 fruits road*****14*****81*****877979***** 

リモートサーバ出力:

最初の警告

email_id: data%5BMerryParent%5D%5Bemail%5D=banana8%40gmail.com 

二警告

result_str: **************************************** 
+0

'$ this-> data ['MerryParent'] ['email']'のデバッグを 'get_parent_info()'関数に投稿できますか?そして、あなたは '$ this-> Student-> MerryParent-> getMerryParents($ this-> data ['MerryParent'] ['email']);'? – pbond

答えて

0

[OK]を、問題は、コードMerryParentモデルとありました。 jqueryコードに間違いはありませんでした。 MerryParentモデルで

function getMerryParents($field_value){   
if (is_int($field_value))   
    $conditions=array('merryParent.id'=>$field_value);   
else   
    $conditions=array('merryParent.email'=>$field_value);   

//debug($conditions);   

$merryparent_info=$this->find('first',array(   
          'conditions'=>$conditions,   
          'recursive'=>-1 //fetches merry_parents table data only not the associated data   
          ));   
     debug($merryparent_info);   
return $merryparent_info;   
}   

私はMerryParent.emailにMerryParent.idとmerryParent.emailにmerryParent.idを変更し、それがリモートサーバー上で動作するようになりました。

関連する問題