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(); ?>
<?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');
}
}
{
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.