Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [ZF] Ajax + jquery
MitS
post 18.09.2010, 07:49:00
Post #1





Grupa: Zarejestrowani
Postów: 262
Pomógł: 5
Dołączył: 8.02.2005
Skąd: Olsztyn / Zatorze

Ostrzeżenie: (0%)
-----


Witam wszystkich.

Mam ogromny problem z przesłanie posta ajaxowego do kontrolera w zf.
Mianowicie mam taki oto kod:

w widoku:

  1. $.post("'.Zend_View_Helper_Url::url(array(), 'uploadPhoto', false).'", {
  2. data : "save",
  3. }, function(response){}, "json");


zas w kontrolerze taki:

  1. public function uploadphotoAction()
  2. {
  3. $this->_helper->layout()->disableLayout();
  4. $this->_helper->viewRenderer->setNoRender(true);
  5.  
  6. if ($this->getRequest()->isXmlHttpRequest())
  7. {
  8. if ($this->getRequest()->isPost())
  9. {
  10. print_r($this->_request->getPost());
  11. }
  12.  
  13. $data = array('123');
  14. echo Zend_Json::encode($data);
  15. }
  16. else
  17. {
  18. $this->_redirect('404');
  19. }
  20. }


moje pytanie brzmi: czemu nie ma posta w tym kontrolerze ?
Samo odwołanie do kontrolera działą i wypisują się dane - nie ma tylko posta na którym bardzo mi zależy.

Ma ktoś pomysł jak to naprawić ?
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 3)
smentek
post 18.09.2010, 15:14:27
Post #2





Grupa: Zarejestrowani
Postów: 130
Pomógł: 11
Dołączył: 7.04.2003

Ostrzeżenie: (10%)
X----


Cytat
Samo odwołanie do kontrolera działą i wypisują się dane - nie ma tylko posta na którym bardzo mi zależy.


Jak może działać skoro jest wywolywane postem którego podobno niema?

Jesteś pewien że zapytanie jest odbierane? Zdebugowałeś to w firebug albo innym narzędziu?
Sprawdź globalną tablicę: $_POST. Co jest w niej zawarte?

Ten post edytował smentek 18.09.2010, 15:15:00


--------------------
.:SMENTEK:.
Go to the top of the page
+Quote Post
fander
post 23.09.2010, 15:29:10
Post #3





Grupa: Zarejestrowani
Postów: 231
Pomógł: 22
Dołączył: 6.10.2008

Ostrzeżenie: (0%)
-----


Wydaje się mi że kolega chce wysłać obrazek tym skryptem... a tak się nie da
Go to the top of the page
+Quote Post
melkorm
post 23.09.2010, 17:18:37
Post #4





Grupa: Zarejestrowani
Postów: 1 366
Pomógł: 261
Dołączył: 23.09.2008
Skąd: Bydgoszcz

Ostrzeżenie: (0%)
-----


  1. $.post("'.$this->url(array(), 'uploadPhoto', false).'", {
  2. data : {
  3. save : 'save'
  4. }
  5. }, function(response){}, "json");


  1. $this->_helper->layout()->disableLayout();
  2. $this->_helper->viewRenderer->setNoRender(true);
  3. //....
  4. echo Zend_Json::encode($data);


Za miast tego uzyj helper'a ContextSwitcher dla Ajaxa, wtedy nie musisz wyłączać layout'u i renderowania a także nie musisz parsować odpoiwedzi i robisz to normalnie poprzez
  1. $this->view->test = 'cokolwiek, tablica, obiekt, itp';

Wtedy Zend sam Tobie parsuje na JSON'a odpowiedź.


--------------------
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Wersja Lo-Fi Aktualny czas: 22.06.2025 - 01:08