Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Symfony - wysyłanie formularza
dtulacz
post
Post #1





Grupa: Zarejestrowani
Postów: 6
Pomógł: 0
Dołączył: 19.01.2008
Skąd: Kalisz / Legnica

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


Witam;
Jestem dopiero początkujący z zakresu programowania w Symfony i niestety nie mogę sobie poradzić z moim formularzem. Zamiast zapisywać go do bazy jako dodatkowy rekord, to po prostu ciągle występuję update rekordu pierwszego w tabeli "kontakt". Mój formularz:

Kod
<?php slot('tresc'); ?>
<?php
if ($sf_params->get('send')) {
echo '<div style="color:green; font-weight:bold; border:2px solid green">Wiadomość została poprawnie wysłana. Odpowiedź na zgłoszenie zostanie udzielona w przeciągu 24 h. Dziękujemy!</div>';
}
?>

<p>W celu wysłania wiadomości, prosimy o wypełnienie formularza.</p>

  <?php echo form_tag('formularz/zapiszFormularz'); ?>
        <p>
          <?php

              echo label_for('e_mail','E-mail: '),'<br />';
                echo input_tag('e_mail','','style="width:200px"'),'<br />';
                echo label_for('telefon','Nr telefonu: *'),'<br />';
                echo input_tag('telefon','','style="width:200px"'),'<br />';
                echo label_for('temat','Temat: '),'<br />';
                echo input_tag('temat','','style="width:200px"'),'<br /><br />';
                echo label_for('tresc','Treść: *'),'<br />';
                echo textarea_tag('tresc','','size="62x10"'),'<br />';


          
            ?>
<span style="color:brown">* pola wymagane</span>
                </p>
                <p>
          <?php
        echo submit_tag('Zapisz');
            ?>
        </p>
        </form>
<?php end_slot(); ?>


A tutaj zamieszczam kod obsługujący zdarzenie:

Kod
class formularzActions extends sfActions
{

  public function executeIndex()
  {
        
  }
    
    public function executeZapiszFormularz() {
      $oRequest = $this->getRequest();
        $oKontakt = KontaktPeer::doSelectOne( new Criteria());
        $oKontakt->setEmail($oRequest->getParameter('e_mail'));
        $oKontakt->setTelefon($oRequest->getParameter('telefon'));
        $oKontakt->setTemat($oRequest->getParameter('temat'));
        $oKontakt->setTresc($oRequest->getParameter('tresc'));
        $oKontakt->setData(date("Y-m-d H:i"));
        
        $oKontakt->save();
        $this->redirect('formularz?send=1');
    
    }

}


Czy wie ktoś, co robię źle?
P.S. Jak można prosto wysłać dane z tego formularza na e-mail? używam do tego zwykłej funkcji np. z PHP 4 ?

Z góry dziękuję za pomoc.
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 2)
samuraj85
post
Post #2





Grupa: Zarejestrowani
Postów: 19
Pomógł: 2
Dołączył: 14.06.2010

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


Proponuję zapoznać się z tym: http://www.symfony-project.org/jobeet/1_4/Doctrine/en/ (IMG:style_emoticons/default/smile.gif)
Go to the top of the page
+Quote Post
Crozin
post
Post #3





Grupa: Zarejestrowani
Postów: 6 476
Pomógł: 1306
Dołączył: 6.08.2006
Skąd: Kraków

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


1) Do wyświetlania informacji typu "dziękujemy za wysłanie formularza" służą tzw. flashe http://www.symfony-project.org/api/1_4/sfU...method_setflash
2) Formularze wyświetlaj korzystając bezpośrednio z obiektu formularza http://www.symfony-project.org/gentle-intr...splaying_a_form
3) Masz jakiś bajzel w HTMLu
4) KontaktPeer::doSelectOne chyba dosyć jasno określa to "pobierz", a nie "utwórz nowy"
Go to the top of the page
+Quote Post

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

 



RSS Aktualny czas: 24.08.2025 - 11:29