Diskuze: Emailový formulář
V předchozím kvízu, Online test znalostí PHP, jsme si ověřili nabyté zkušenosti z kurzu.

Tvůrce

Zobrazeno 15 zpráv z 15.
//= Settings::TRACKING_CODE_B ?> //= Settings::TRACKING_CODE ?>
V předchozím kvízu, Online test znalostí PHP, jsme si ověřili nabyté zkušenosti z kurzu.
som z toho mierne zmetení ??? čiže z tohoto tutorialu nedávam nič medzi php tagy okrem toho jednoho? imo ten môj subor html musim po tomto tutoriale premenovať na php že?
Fakt bz sa hodil príklad, akoto človek, ktorý php vidí prvý krát
nemaám ponatia kde čo a ako..... po tento skript chápem <?php
mail('mojeadre[email protected]',$_POST['predmet'],$_POST['zprava']);
?> ale potom...... mám vytvoriť nový php súbor kde sa bude nachádzať
všetko od tohoto kódu? alebo ako?
<?php
mail('[email protected]',$_POST['predmet'],$_POST['zprava']);
if ( isset($_POST['zprava']) //existuje proměnná se zprávou?
&& ($_POST['zprava']!='') //a je v ní něco? (prázdné zprávy nechceme)
&& isset($_POST['od']) //existuje proměnná s adresou? (bez adresy se obejdeme)
&& isset($_POST['predmet']) ) //existuje proměnná s předmětem? (předmět také není nutný)
mail('[email protected]',$_POST['predmet'],$_POST['od'].': '.$_POST['zprava']);
?>
to je všetko čo bude v tom php subore?
Dá se to vše nacpat do jednoho soubor odeslimejl.php. Je to ořezáno na funkční minimum, v příkladu nejsou hlavičky HTML apod:
<?php
if(isset($_POST['zprava']) && ($_POST['zprava']!='')
&& isset($_POST['od'])
&& isset($_POST['predmet']) ){
mail('[email protected]',$_POST['predmet'],$_POST['od'].': '.$_POST['zprava']);
header('Location: .');
exit;
}
?>
<form method="post">
Vaše adresa: <input type="text" name="od" size="40" value="@" /><br/>
Předmět zprávy: <input type="text" name="predmet" size="50"><br>Zpráva:<br>
<textarea name="zprava" rows="6" cols="60" wrap="soft">(sem to napište)</textarea><br>
<input type="submit" value="Odeslat">
</form>
Raipere, jestli to vidíš poprvé, doporučoval bych začít od prvního dílu ( http://www.itnetwork.cz/index.php?… ). Kdybych měl pokaždé znovu vysvětlovat základy, brzy bychom se v tom utopili.
K tomu, co napsal Kit, není co dodat. Snad jen to, že header a exit jsou v tomhle případě zbytečné, protože jsme pořád v jednom skriptu.
Header je imho proto, aby se odfiltrovala možnost zmáčknout F5 a znovu odeslat formulář.
Přesně tak. Ten header() považuji za nezbytný. Dokonce se to odesílání ani neuloží v historii prohlížeče. Zabraňuje to doublepostům a když někdo klikne na tlačítko Back, tak už se to neptá, zda má znovu poslat POST.
Je to v každé lepší učebnici PHP.
Musel bys mít v php.ini správně nakonfigurovánu adresu SMTP serveru. Mně to funguje na přednastavený localhost, protože mám vlastní SMTP server, ale SMTP providera by měl odvést stejnou službu.
Díky, tohle mě vůbec nenapadlo. Určitě to zařadím do příštího dílu.
Zobrazeno 15 zpráv z 15.