Autor Zpráva
wrestler
Profil
ahoj. vytvořil jsem podle knižního návodu komentářovník a ještě jej "vybavil" vlastním antispamem a různými dalšími podmínkami. nicméně script se jakoby vykoná dvakrát a komentář se napíše taky dvakrát...

prosím o radu, jestli někde najdete chybu.
mám soubor neco.php, kde je formulář, a soubor pridano.php, kde je script...
proměnné $_GET['hl'] si prosím nevšímejte, ta je pro mě jenom .)

neco.php:
<form action='?t=pridano' method='post'>
*Jméno: <input type='text' name='jmeno' maxlength='25'>
<input type='hidden' name='hl' value='".$_GET['hl']."'>
<input type='hidden' name='fn' value='".$fn."'>
<input type='hidden' name='c1' value='".$c1."'>
<input type='hidden' name='c2' value='".$c2."'>
<input type='hidden' name='vysl' value='".$vysl."'>
&nbsp;&nbsp;E-mail: <input type='text' name='email'> [nepovinné]
<br>".$c1." + ".$c2." = <input type='text' name='anti'>
<br>
<br>*Zpráva:
<br><textarea cols='60' rows='5' name='text'></textarea>
<br><input type='submit' value='komentovat'>
</form>



pridano.php:
if (!isset($fn)) $fn = "bla/dat/nkcj".$_POST['hl'].".dat";
if (!isset($_POST['jmeno'])) $_POST['jmeno'] = "";
if (!isset($_POST['email'])) $_POST['email'] = "";
if (!isset($_POST['text'])) $_POST['text'] = "";

$jmeno = $_POST['jmeno'];
$email = $_POST['email'];
$text = $_POST['text'];
$fn = $_POST['fn'];

if ($text != "" and $jmeno != "" and $_POST['anti'] == $_POST['vysl']):

$zbytek = ",  ".Date("j.n.Y G:i:s")."\n<br>".nl2br(htmlspecialchars($text))."<div class='center'><img src='o/linka.jpg' alt='---------------------'></div>\n\n";

if ($email != "")
  $prispevek = "<a href=\"mailto:".htmlspecialchars($email)."\">"."<em>".htmlspecialchars ($jmeno)."</em>"."</a>".$zbytek;
else
  $prispevek = "<em>".htmlspecialchars($jmeno)."</em>".$zbytek;


$fp = fopen($fn, "a");
if (!isset($fp)) exit;

fputs($fp, $prispevek);
fclose($fp);

?>
<p>Vámi odeslaný komenář byl úspěšně přidán, díky.</p>

<?php
; else:
?>
<p>Komentář <strong>se nepodařilo</strong> odeslat, pravděpodobně z&nbsp;jednoho z&nbsp;následujících důvodů:</p>

<ul>
  <li>nevyplnil/a jste položku Jméno
  <li>nevyplnil jste položku Zpráva
  <li>nespočítal jste správně antispamový příklad
</ul>

<?php
endif;
?>

<br>
<div class="center">
<a href="?t=bla/blastr2&amp;hl=<?php echo $_POST['hl']; ?>">&lt; zpět na blábol</a>
</div>
wrestler
Profil
fakt bych to potreboval lidi .)
wrestler
Profil
chyba je u mě, dík .)
Dranel
Profil
wrestler
Tak ji zde oprav, ať to vidí ostatní. Jestli ti to teda nevadí.
wrestler
Profil
nenene tady chyba není
byla v mém supervyfachčeném enginu, kde se mi kvůli prměnným načítal obsah ještě jednou před úplný začátek do tagů <!-- a -->, ale samotný skript se vykonal dvakrát

tak proto
v tom zde uvedeném skriptu chyba není .)
tiso
Profil
wrestler - ale je, je hrozne napísaný... Dalo by sa to inak - jednoduchšie i bezpečnejšie...
wrestler
Profil
ale chyba tam není

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: