Autor | Zpráva | ||
---|---|---|---|
Filips Profil |
#1 · Zasláno: 29. 1. 2008, 22:01:19
Potřeboval bych poradit. Mám skript pro odesílání formuláře na mail. Co bych ale potřeboval udělat. Chci tam mít některé položky povinné a některé nepovinné. Jak a kde bude zapsán nepovinný údaj? Povinné údaje jsou zde:
$zprava="Jméno: ".$jmeno."\nPříjmení: ".$prijmeni."\nPřezdívka: ".$prezdivka."\nDtaum narození: ".$narozeni."\n\nUlice: ".$ulice."\nMěsto: ".$mesto."\nPSČ: ".$pcislo."\n\nTelefon: ".$tel."\n\n".$zprava; Tady je php: <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html> <head> <meta http-equiv="content-type" content="text/html; charset=utf-8"> <title>Registrační formulář</title> </head> <body> <h1>Registrační formulář</h1> <?php $header = "From: " . $email."\nContent-Type: text/plain; charset=utf-8\n"; $jmeno = $_POST['jmeno']; $prijmeni = $_POST['prijmeni']; $prezdivka = $_POST['prezdivka']; $narozeni = $_POST['narozeni']; $ulice = $_POST['ulice']; $mesto = $_POST['mesto']; $pcislo = $_POST['pcislo']; $tel = $_POST['tel']; //$icq = $_POST['icq']; $inzerce = $_POST['inzerce']; $email = $_POST['email']; $spam = $_POST['spam']; $zprava = $_POST['zprava']; if ( $email!="" and $zprava!="" and $icq!="" and $spam=="2" ) { $zprava="Jméno: ".$jmeno."\nPříjmení: ".$prijmeni."\nPřezdívka: ".$prezdivka."\nDtaum narození: ".$narozeni."\n\nUlice: ".$ulice."\nMěsto: ".$mesto."\nPSČ: ".$pcislo."\n\nTelefon: ".$tel."\n\n".$zprava; ini_set("SMTP","smtp.gemnet.cz"); if(mail("mail@server.cz", Registrace, $zprava, $header )){ echo "<p><strong>Registrační formulář byl úspěšně odeslán</strong>.</p>"; } else { echo "<p>Váš formulář se <strong>nepodařilo odeslat</strong> pravděpodobně jste nevyplnili všechny údaje, nebo jste zadali špatně odpověď na kontrolní otázku!</p>"; }} ?> </body> </html> Tady je html: <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html> <head> <meta http-equiv="content-type" content="text/html; charset=utf-8"> <title>Odesílání emailu</title> </head> <body> <h1>Odesílání emailu</h1> <form action="posli.php" method="post"> <input name="jmeno" size="25"> Jméno<br /> <input name="prijmeni" size="25"> Vase prijmeni<br /> <input name="prezdivka" size="25"> Vase přezdívka<br /> <input name="narozeni" size="25"> Datum narozeni<br /><br /> <input name="ulice" size="25"> Ulice<br /> <input name="mesto" size="25"> Mesto<br /> <input name="pcislo" size="25"> PSC<br /><br /> <input name="tel" size="25"> Telefon<br /> <input name="email" size="25"> E-mail<br /> <input name="icq" size="25"> ICQ<br /> <textarea name="zprava" rows="3" cols="25">Zpráva...</textarea><br /><br /> <input name="spam" size="25"> <strong>= 1 + 1</strong><br /> <input type="submit" value="Odeslat"> </form> </body> </html> Chtěl bych aby třeba ICQ bylo nepovinné. Jak to udělat? Kam to zapsat? Dotaz 2) Popřípadě jak udělat hlášku, která by vypsala co nebylo vyplněno? Omlouvám se, ale teprve začínám s php :) |
||
Alphard Profil |
#2 · Zasláno: 29. 1. 2008, 22:19:12
je to o podmínkách a funkcích, které zjistí, jestli je proměnná nastavená – isset() a jestli je prázdná – empty()
např: if (isset ($_POST['icq'] && !empty ($_POST['icq'])) $icq = $_POST['icq']; else echo "Nevyplnili jste ICQ"; |
||
Filips Profil |
#3 · Zasláno: 30. 1. 2008, 14:16:41
Díky a ještě bych měl dotaz... Kam to vsadit tento kód :-)
Založit novou podmínku IF nebo se to vloží do některé z těch dvou co jsou nahoře? |
||
Alphard Profil |
#4 · Zasláno: 30. 1. 2008, 14:32:41
tohle dáš u všech poviných
ještě trochu poupravíš if (isset ($_POST['icq'] && !empty ($_POST['icq'])) $icq = $_POST['icq']; else { echo "Nevyplnili jste ICQ"; $chyba = TRUE; } a při odesílání kontroluješ $chyba |
||
Časová prodleva: 1 rok
|
|||
zbynek Profil * |
#5 · Zasláno: 2. 2. 2009, 14:50:21
velice zajímavé jen se chci zeptat jak má vypadat sktipt a kam se má vkládat aby se z webu odesílaly vyplněné udaje na můj mail??
|
||
SwimX Profil |
#6 · Zasláno: 2. 2. 2009, 14:58:57
|
||
Časová prodleva: 2 měsíce
|
|||
miki12741 Profil * |
#7 · Zasláno: 14. 4. 2009, 18:51:34
lidi a kdyz chci udelat formular jako registraci ze mi to pride na email co mam udelat?
|
||
Časová prodleva: 15 let
|
0