Ahoj mate tuseni proc mi prijde prazdny email pri pouziti tohoto scriptu ?
<?php
if((empty($_GET['akce']))AND(empty($kod))):?>
<form action="insert.php" method="get">
<table width="500" border="0" cellpadding="10" cellspacing="0" bgcolor="#8080ff">
<tr>
<td align="right"><strong>Zadejte zde prosím Vaši platnou e-mail adresu:</strong></td>
<td><input type="text" name="email" value="váš@email.cz" /></td>
</tr>
<tr>
<td></td>
<td><input type="submit" name="akce" value="Ano, chci novinky e-mailem" /></td>
</tr>
</table>
</form>
<?php
elseif(!empty($_GET['akce'])):
require("config.php");
// načtení nastavení databáze
$DnesniDatum=date("Y-m-d H:i:s");
// dnešní datum a čas
$Kod=MD5($_GET['email']);
// generování unikátního kódu
$Email=$_GET['email'];
if(empty($Email)):
// kontrola zadání emailu
echo "Nebyl zadán e-mail!";
exit;
else:
@$vysledek=MySQL_Query("INSERT INTO seznam VALUES ('', '$DnesniDatum', '$Email', '$Kod', 'NO')");
// vložení dat do databáze
if($vysledek):
$predmet="Potvrzení e-mailu";
$hlavicka="From: test@test.cz\nX-Mailer: TEST\nContent-Type: text/html";
$zprava="Dne: ".$DnesniDatum." byl přidán Váš e-mail: ".$Email." do naší databáze pro zasílání novinek našeho serveru. Klikněte na následující odkaz pro potvrzení správnosti e-mailu: <a href='http://localhost/interval/insert.php?email=".$email."&kod=".$Kod."'>http://localhost/interval/insert.php?email=".$email."&kod=".$Kod."</a><br><br>S pozdravem Admin";
mail("$Email","$predmet","$zprava","$hlavicka");
// zaslání emailu uživateli pro ověření
echo "Váš e-mail byl přidán do naší databáze. Byl Vám odeslán e-mail pro potvrzení.";
else:
if(mysql_errno()==1062):
// kontrola duplicity vkládaných údajů
echo "Email je již v databázi!";
exit;
else:
// došlo k jiné chybě
echo "Došlo k chybě, kontaktujte administrátora";
exit;
endif;
endif;
endif;
endif;
if((!empty($_GET['kod']))AND(!empty($_GET['email']))):
require("config.php");
// načtení nastavení databáze
@$kontrola=MySQL_Result(MySQL_Query("SELECT email FROM seznam WHERE (email='$email' AND kod='$kod')"), "email");
if($kontrola==$_GET['email']):
// ověření emailu
@$vysledek=MySQL_Query("UPDATE seznam SET overeno='OK' WHERE (email='$email' AND kod='$kod')");
if(!$vysledek):
echo "Chyba databáze";
exit;
else:
echo "Údaje byli ověřeny, děkujeme.";
exit;
endif;
elseif($kontrola!=$_GET['email']):
echo "Údaje nebyli ověřeny.";
exit;
endif;
endif;
To je jasné, máš tam chybu, místo:
echo "Údaje nebyli ověřeny.";
tam má správně být:
echo "Údaje nebyly ověřeny.";
Tomas - nemyslíš že by bylo lepší raději ten výpis nedávat do fóra, ale uvést na něj pouze odkaz? Protože tohle je tak neuvěřitelně nepřehledné např. tím, že se odstranilo odsazení (teda jestli ho vůbec děláš), že pochybuju že to někdo bude číst.....
Jasně, přejmenuj to na .txt a uveď odkaz. Pak to bude čitelné normálně v prohlížeči.