Autor Zpráva
Filips
Profil
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
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
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
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
zbynek
Profil *
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
zbynek
http://tvorba-webu.zdarek.com/php/email.php
miki12741
Profil *
lidi a kdyz chci udelat formular jako registraci ze mi to pride na email co mam udelat?

Vaše odpověď

Mohlo by se hodit


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm: