hallo,
also ich hab hier ein kommentarscript das funktioniert aber ich versteh einfach nicht wie ich eine sicherheitsabfrage,
die ich auch schon habe einbinden kann
hier mal die einzelnen datein:
kommentare.php
PHP
<?php
$datenbank = "kommentare.txt";
#wie die db heißt
$datei = fopen($datenbank,"r");
#öffnet db
$old=fread($datei, filesize($datenbank));
fclose($datei);
#schließt db
$x=explode("",$old);
for ($i=0;$i<100;$i++)
#hier werden nur die 8 neusten beiträge gelesen
{
echo $x[$i];
}
?>
</p>
<p align="center">
<?php
if($name == "" || $text == "" || $email == ""){
echo "Bitte alle Felder ausfüllen!";
#dieser text erscheint so lange, bis alle 3 Felder ausgefüllt sind
}
else{
$name = ereg_replace("<","<",$name);
$name = ereg_replace(">",">",$name);
$email = ereg_replace("<","<",$email);
$email = ereg_replace(">",">",$email);
$hp = ereg_replace("<","<",$hp);
$hp = ereg_replace(">",">",$hp);
$text = ereg_replace("<","<",$text);
$text = ereg_replace(">",">",$text);
#hier wird das < (bzw >) ersetzt, dass man kein HTML verwenden kann, im GB
$eintrag = wordwrap ($eintrag, 50, "
");
#nach 74 zeichen kommt automatisch ein zeilenumbruch
if($hp == ""){
#das hier kommt wenn keine hp angegeben wurde
$eintrag = "<center>
<table cellpadding=\"0\" cellspacing=\"0\" border=\"0\" bordercolor=\"#AAAAAA\" class=\"menuall\">
<tr><td bgcolor=\"#EBEBEB\" width=\"150\" class=\"gball\">
von: <a href=\"mailto:$email\">$name</a></td>
<td bgcolor=\"#EBEBEB\" width=\"150\" class=\"gball\" align=\"right\">". date("d.m.y") . " , um ". date("H:i"). "
</td></tr><tr><td bgcolor=\"#F5F5F5\" colspan=\"2\">[b]$text[/b]</td></tr><tr><td bgcolor=\"#EBEBEB\" class=\"gball\" colspan=\"2\">
ohne Website</td></tr></table></center>
";
}
else{
#wenn alles eingetragen wurde kommt das hier
$eintrag = "<center>
<table cellpadding=\"0\" cellspacing=\"0\" border=\"0\" bordercolor=\"#AAAAAA\" class=\"menuall\">
<tr><td bgcolor=\"#EBEBEB\" width=\"150\" class=\"gball\">
Von: <a href=\"mailto:$email\">$name</a></td>
<td bgcolor=\"#EBEBEB\" width=\"150\" class=\"gball\" align=\"right\">". date("d.m.y") . " , um ". date("H:i"). "
</td></tr><tr><td bgcolor=\"#F5F5F5\" colspan=\"2\">[b]$text[/b]</td></tr><tr><td bgcolor=\"#EBEBEB\" class=\"gball\" colspan=\"2\">
Website:<a href=\"http://$hp\" target=\"_blank\">$hp</a></td></tr></table></center>
";
}
#neue Eintraege zusammenfuegen
$neueEintraege = $eintrag;
#neue Eintraege speichern
$dateischreiben = fopen("kommentare.txt","a");
fwrite($dateischreiben,$neueEintraege);
fclose($dateischreiben);
echo "Kommentar gespeichert!<a href=\"kommentare.php\">Kommentar ansehen</a>";
}
?>
<script language="JavaScript1.2"><!--
function set(Zeichen){
document.form.text.value=document.form.text.value + Zeichen
}
//-->
</script>
<p align="center"> [b]Kommentar schreiben [/b]
<form name="form" action="kommentare.php" method="post">
<table align="center">
<tr><td>Dein Name: </td><td><input type="text" name="name" size="24">
</td>
</tr><tr>
<td>E-Mail: </td><td><input type="text" name="email" size="24"> </td></tr><tr>
<td>Homepage:</td> <td><input type="text" name="hp" size="24"></td></tr>
<tr><td>Dein Eintrag:</td>
<td><textarea name="text" cols="20" rows="5"></textarea></td>
</tr>
<tr align="center"><td colspan="2"></td>
</tr></table>
<div align="center">
<input type="submit" value="Abschicken">
</div>
</form>
Alles anzeigen
sicherheitscode.php
PHP
<?php
if(isset($_GET['z']))
{
header('Content-Type: image/png');
$RandInt = str_replace('´|´', '=', base64_decode(base64_decode($_GET['z'])));
$width = 66; //* Die Breite des Rechtecks
$height = 28; //* Die Höhe des Rechtecks
$img = ImageCreate($width, $height); //* Hier wird das Bild einer Variable zu gewiesen
//* START - Farbenbelegung (Anhand RGB-Farben)
$white = ImageColorAllocate($img, 255, 255, 255); //* Weiß
$black = ImageColorAllocate($img, 0, 0, 0); //* Schwarz
//* ENDE - Farbenbelegung
ImageFill($img, 0, 0, $white); //* Bild mit der Farbe weiß füllen
//* START - Hauptteil
//* START - Aussenrand 'dynamisch' anhand der Höhe und Breite zeichnen
ImageLine($img, 0, 0, $width-1, 0, $black); //* Horizontal oben
ImageLine($img, 0, $height-1, $width-1, $height-1, $black); //* Horizontal unten
ImageLine($img, $width-1, 0, $width-1, $height-1, $black); //* Vertikal rechts
ImageLine($img, 0, 0, 0, $height-1, $black); //* Vertikal links
//* ENDE - Aussenrand 'dynamisch' anhand der Höhe und Breite zeichnen
//* START - Vertikalen zeichnen
$StartParameterInt = 15; //* Abstände
for($i=0;$i<$width;$i+=$StartParameterInt)
{
ImageLine($img, $i, 0, $i, $height, $black);
}
//* ENDE - Vertikalen zeichnen
//* START - Horizontalen zeichnen
$StartParamterInt = 10; //* Abstände
for($i=0;$i<$height;$i+=$StartParamterInt)
{
ImageLine($img, 0, $i, $width, $i, $black);
}
//* ENDE - Horizontalen zeichnen
//* START - Zahlen zeichnen (Wird automatisch in die Mitte generiert
$font_height = ImageFontHeight(6);
$font_width = ImageFontWidth(6);
$image_height = ImageSY($img);
$image_width = ImageSX($img);
$length = $font_width * strlen($RandInt);
$image_center_x = ($image_width/2)-($length/2);
$image_center_y = ($image_height/2)-($font_height/2);
ImageString($img, 6, $image_center_x, $image_center_y, $RandInt, $black);
//* ENDE - Zahlen zeichnen (Wird automatisch in die Mitte generiert
//* ENDE - Hauptteil
ImagePng($img); //* Bild ausgeben
ImageDestroy($img); //* Speicher wieder freigeben
}
?>
Alles anzeigen
neuesformular mit kommentare.php [newform.php]
PHP
<?php
mt_srand((double)microtime()*1000000); //* Zufallsgenerator starten
if(!isset($_POST['submit']))
{
$RandInt = mt_rand(00001,99999); //* Zufallszahl $RandInt verweisen
?>
<form method="post" action="<?=$_SERVER['PHP_SELF']?>">
<fieldset style="text-align:center; vertical-align:middle;"><legend>Sicherheitscode</legend>
<input type="text" size="10" maxlength="5" name="zahl">
[img]./sicherheitscode.php?z=<?=str_replace('=', '´|´', base64_encode(base64_encode($RandInt)))?>[/img]
<input type="submit" name="submit" value="Überprüfen"></fieldset>
<input type="hidden" name="content[0]" value="<?=str_replace('=', '´|´', base64_encode(base64_encode($RandInt)))?>">
</form>
© 2004 by LLCoolDannY.de.vu
<?php
}
else
{
$RightNumInt = str_replace('´|´', '=', base64_decode(base64_decode($_POST['content'][0]))); //* Umwandlung bitte stehen lassen!!!
if($_POST['zahl']==$RightNumInt) echo 'Glückwünsche, dein Sicherheitscode stimmt
[url=''.$_SERVER['PHP_SELF'].'']Nochmal[/url]';
else echo 'Fehler, bitte gehe [url=''.$_SERVER['PHP_SELF'].'']zurück[/url] und gib den Code erneut ein';
}
?>
Alles anzeigen
wie kann ich nun die variable
...if($_POST['zahl']==$RightNumInt) echo 'Glückwünsche, dein Sicherheitscode stimmt
[url=''.$_SERVER['PHP_SELF'].'"]Nochmal[/url]';...
einstellen
das nach dem klcik auf den link die daten aus der form eingetragen werden ?
verwirrt warscheinlcih voll is aber eig. simpel aber ich peils einfach ncih