Autor Zpráva
shaman171
Profil
Ahoj, celé roky jsem měl na webu e-mailový formulář, z ničeho nic bez jakékoliv změny přestal fungovat. Nevíte kde by mohla být chyba?
Přikládám kódy:
<div id="formular">
                   <table style="height: 100%;" width="100%" cellSpacing="0" cellPadding="0" border="0">
                   <tr><td align="center" valign="top">
                   <form action="../scripty/poslat-lukas.php" method="post">
                   <table width="200" border="0" class="text">
                   <tr><td width="50"><strong>Jméno:</strong></td><td><input name="jmeno" accesskey="j" type="text"></td></tr>
                   <tr><td width="50"><strong>Email:</strong></td><td><input name="email" accesskey="e" type="text"></td></tr>
                   <tr><td width="200" valign="top"><strong>Text:</strong></td><td><textarea name="text" accesskey="t" rows="5" cols="25"></textarea></td></tr>
                   <tr><td width="5"></td><td><input name="spam" size="5"><strong>= 1 + 1</strong><br></td></tr>
                   <tr><td colspan="2" align="center"><input type="submit" class="button" value="Odeslat"> <input type="reset" value="Vymazat"></td></tr>
                   </table>
                   </form>
                   </td></tr>
                   </table>
              </div>


<?php
$to = "mejlova-adresa";
$subject = "Vzkaz od ".$jmeno."";
$mess = "Jméno: ".$jmeno."\nEmail: ".$email."\n Web: ".$web."\nText:\n".$text."";
$zahlavi = "MIME-Version: 1.0\r\n";
$zahlavi .= "Content-Type: text/html; charset=utf-8\r\n";
$zahlavi .= "Content-Transfer-Encoding: 8bit\r\n";
$zahlavi .= "From: ". $email. "\r\n";

  
if ($jmeno!="" and $email!="" and $text!="" and $spam=="2")
{
mail ($to, $subject, $mess, $zahlavi);  
echo "<html>
      <head>
        <meta http-equiv=\"refresh\" content=\"0; url=../lukas.php\">
        <title>Přesměrování ...</title>
      </head>
      <body>
        Čekejte prosím, probíhá zpracování...
      </body>
      </html>
     ";
}
else
{
echo "<p>Váš e-mail se <strong>nepodařilo odeslat</strong> pravděpodobně jste nevyplnili všechny údaje, nebo nevíte kolik je 1 + 1.</p>";
}

?>


Moc děkuju.
panther
Profil
shaman171:
začni tím, že budeš používat skutečně existují proměnné, tedy místo $text $_POST['text'] apod.
shaman171
Profil
Tak jsem to změnil a stejně nic.
Teď to vypadá takto:
<?php
$_POST['to'] = "lukascernosta@fenixradio.net";
$_POST['subject'] = "Vzkaz od ".$_POST['jmeno']."";
$_POST['mess'] = "Jméno: ".$_POST['jmeno']."\nEmail: ".$_POST['email']."\n Web: ".$_POST['web']."\nText:\n".$_POST['text']."";
$_POST['zahlavi'] = "MIME-Version: 1.0\r\n";
$_POST['zahlavi'] .= "Content-Type: text/html; charset=utf-8\r\n";
$_POST['zahlavi'] .= "Content-Transfer-Encoding: 8bit\r\n";
$_POST['zahlavi'] .= "From: ". $_POST['email']. "\r\n";

  
if ($_POST['jmeno!=""'] and $_POST['email!=""'] and $_POST['text!=""'] and $_POST['spam=="2"'])
{
mail ($_POST['to'], $_POST['subject'], $_POST['mess'], $_POST['zahlavi']);  
echo "<html>
      <head>
        <meta http-equiv=\"refresh\" content=\"0; url=../webmaster/lukas.php\">
        <title>Přesměrování ...</title>
      </head>
      <body>
        Čekejte prosím, probíhá zpracování...
      </body>
      </html>
     ";
}
else
{
echo "<p>Váš e-mail se <strong>nepodařilo odeslat</strong> pravděpodobně jste nevyplnili všechny údaje, nebo nevíte kolik je 1 + 1.</p>";
}

?>
radas
Profil *
 
// to je nesmysle
 $_POST['jmeno!=""']
 
 //když už tak 
 $_POST['jmeno']!=""
 
 

proč se hlavička mailu uklada do POST - zahlavi?
shaman171
Profil
Aha, tak už jsem to přeměnil a funguje to. Moc díky.
Pro se hlavicka ukládá jako záhlaví nevím, někde jsem ten script našel a moc jsem ho neřešil. Je pro mě důležitá funkčnost.

Vaše odpověď


Prosím používejte diakritiku a interpunkci.

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

0