2015-05-18 3 views
0

Я пытаюсь отправить одну информацию из одного представления на другой контроллер и установить данные для другого представления. Вот Ajax код работает отличноCakephp Данные Ajax post не работают в методе набора

$.ajax({ 
     url: "<?php echo Router::url(array('controller'=>'users','action'=>'exchange_process'));?>", 
         type: "POST", 
         data: {"point_origin": point_origin }, 
         success: function(){    
          alert("success"); 
       } 
     }); 

В контроллере я получил эти данные с помощью сильфона кода

public function exchange_process() 
    { 
     if($this->request->is(array('post', 'ajax'))) { 
      $point_origin=$_POST['point_origin']; 
     } 

     $this->set("pointorg",$point_origin); 
    } 

В другой точке зрения я попытался

<?php echo $pointorg ?> 

Это не работает.

если я пытаюсь

public function exchange_process() 
     { 
      if($this->request->is(array('post', 'ajax'))) { 
       // $point_origin=$_POST['point_origin']; 
      } 

      $point_origin=123; 
      $this->set("pointorg",$point_origin); 
     } 

Это работает, но если я пытаюсь

public function exchange_process() 
      { 
       if($this->request->is(array('post', 'ajax'))) { 
        // $point_origin=$_POST['point_origin']; 
        $point_origin=123; 
       } 


       $this->set("pointorg",$point_origin); 
      } 

Это не работает.

+0

Мое первое предположение в соответствии с вашими приведенными примерами будет состоять в том, что условие if никогда не является истинным, и поэтому переменная pointorg никогда не установлена ​​ –

+1

Вы пробовали отладку внутри проверки типа запроса? Также имеет смысл использовать данные $ this-> request-> для извлечения данных из запроса. –

+0

Для получения данных вы можете предоставить мне пример, пожалуйста? –

ответ

0

изменить ваш, если условие, чтобы:

if($this->request->is('post') || $this->request->is('ajax')) { 

и оно должно работать нормально

+0

Я пробовал этот код, но не работал. –

0

CakePHP 2,3 оленья кожа поддержки массив заголовков типа, пожалуйста, проверьте

http://book.cakephp.org/2.0/en/appendices/2-4-migration-guide.html#cakerequest 

вам нужно будет проверить индивидуально или использовать Ajax только в том случае, если запрос отправляется только с использованием Ajax.

+0

Здесь ajax работает нормально, я проверил его. –

+0

все еще не работает в cakephp 2.6? – Abhishek

+0

Здесь проблема только в условии переменной внутри условия не работает, переменная вне условия работы. Я привел пример в моем вопросе. –

 Смежные вопросы

  • Нет связанных вопросов^_^