Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [ZendFramework] Pobranie wartości POST
csharp
post 23.09.2012, 10:39:41
Post #1





Grupa: Zarejestrowani
Postów: 127
Pomógł: 3
Dołączył: 22.04.2012
Skąd: Warszawa

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


mam taką sytuację, że muszę do ukrytego inputa przypisać wartość liczbową, która jest pobierana z bazy za pośrednictwem tablicy foreach

normalnie sobie ją wrzucam tak j/n, ale wolałbym to stworzyć w klasie mojego całego formularza.


widok:

pętla foreach
  1. <input type="hidden" name="post_id" value="<?php echo $this->posts['post_id'] ?>">

koniec pętli.


klasa formularza:

  1. $this->addElement(
  2. 'text',
  3. 'post_ID',
  4. 'value' => '',
  5. 'filters' => array('StringTrim')
  6. )
  7. );


jak przypisać wartość, która będzie pobierana w trakcie wykonywania pętli w widoku? da się tak to zrobić?

ew, kombinowałem też inaczej aby po wysłaniu forma i jego walidacji po prostu odebrać dane post:

  1. <input type="text" name="post_ID" value="<?php echo $_POST['post_ID'] ?>">


ale to chyba nie jest najlepsza metoda, omija mi wszystkie walidatory i filtry, musiałbym je ręcznie pisać do tego konkretnego pola.. poza tym wydaje mi się, że też źle się odwołuje do tego pola POST, tz działa to ale pewnie można jakoś obiektowo to zrobić.

dzięki za porady.

Ten post edytował csharp 23.09.2012, 10:41:20


--------------------
Prywatny blog -> cupial.com.pl
Go to the top of the page
+Quote Post
amii
post 23.09.2012, 10:58:04
Post #2





Grupa: Zarejestrowani
Postów: 728
Pomógł: 76
Dołączył: 12.06.2009

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


Napisz sobie metodę w formularzu do nadawania wartości dla pola a następnie wywołaj ją w widoku przkazując odpowiednią wartość.


--------------------
gry flash online
Dobry hosting i tanie odnowienia domen firma: masternet.
Zarabianie bez wysiłku na domenach bez ruchu: prolink.
Go to the top of the page
+Quote Post
csharp
post 23.09.2012, 11:24:40
Post #3





Grupa: Zarejestrowani
Postów: 127
Pomógł: 3
Dołączył: 22.04.2012
Skąd: Warszawa

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


wymyśliłem coś takiego.. tylko nie za bardzo chce to działać..

w formularzu:

  1. public $id_value;
  2.  
  3. public function idValue($value)
  4. {
  5. $this->id_value = $value;
  6. }



tak przypisałem wartość value
  1. $this->addElement(
  2. 'text',
  3. 'post_ID',
  4. 'value' => $this->id_value,
  5. 'id' => 'post_ID',
  6. 'filters' => array('StringTrim')
  7. )
  8. );


widok:
w kontrolerze obiekt został tak utworzony:
  1. $form = new Application_Form_Addcomment();
  2. $this->view->form = $form;


tak przypisuję wartość już w widoku.

  1. $this->form->idValue(6)


i teraz próbuje się do tego odwołać i tą wartość wyciągnąć razem z inputem..
  1. <?php echo trim($this->form->post_ID)."\n" ?>


niestety... input jest ale value puste..

Ten post edytował csharp 23.09.2012, 13:12:03


--------------------
Prywatny blog -> cupial.com.pl
Go to the top of the page
+Quote Post
amii
post 23.09.2012, 15:03:15
Post #4





Grupa: Zarejestrowani
Postów: 728
Pomógł: 76
Dołączył: 12.06.2009

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


Przypuszczam, że ten fragment:
  1. $this->addElement(
  2. 'text',
  3. 'post_ID',
  4. 'value' => $this->id_value,
  5. 'id' => 'post_ID',
  6. 'filters' => array('StringTrim')
  7. )
  8. );

wywołujesz w metodzie init czyli w konstruktorze. wtedy to nie zadziała bo konkstruktor widzi pustą wartość $id_value a kiedy później wywołujesz metodę idValue
nie ma ona wpływu na to co jest w formularzu. Spróbuj tak jak poniżej gdzie post_ID to atrybut name dla twojego pola. Czyli:
1. Wywołujesz formularz new Apllication_blba_bla;
2. W widoku wywołujesz poniższą metodę

  1. //klasa formularza
  2. public function ustawPole($val=NULL) {
  3.  
  4. $this->getElement('post_ID')->setValue($val);
  5. }


--------------------
gry flash online
Dobry hosting i tanie odnowienia domen firma: masternet.
Zarabianie bez wysiłku na domenach bez ruchu: prolink.
Go to the top of the page
+Quote Post
csharp
post 23.09.2012, 18:27:32
Post #5





Grupa: Zarejestrowani
Postów: 127
Pomógł: 3
Dołączył: 22.04.2012
Skąd: Warszawa

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


dzięki wielkie! o to dokładnie chodziło.


--------------------
Prywatny blog -> cupial.com.pl
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: 25.06.2025 - 08:07