| 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: 17 let
|
|||
0