PHP Developer Forum Hier habt ihr die Möglichkeit, eure Skriptprobleme mit anderen Anwendern zu diskutieren. Seid so fair und beantwortet auch Fragen von anderen Anwendern. Dieses Forum ist sowohl für ANFÄNGER als auch für PHP-Profis! Fragen zu Laravel, YII oder anderen PHP-Frameworks. |
 |
|

11-12-2006, 20:02
|
meikschmidt
Newbie
|
|
Registriert seit: Dec 2006
Beiträge: 18
|
|
also ich habe mich selbst noch mal an die arbeit gemacht. es funktioniert mit dem captcha, aber die einträge werden jetzt nicht gemacht. kann mir da noch einer helfen? ausprobieren könnt ihr das ganze unter: http://www.schmidt-meik.de/gaestebuch.php. da könnt ihr testeinträge machen um mich vielleicht zu unterstützen.
Hier der komplette seiten script ( ist vollständig ). Die anderen drei "Include_Dateien" die hier aufgeführt sind haben nichts mit dem gästebuch zu tun.
PHP-Code:
<?php
session_start();
?>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<title>Gästebuch von Meik Schmidt</title>
<style type="text/css">
<!--
#gaestebuch {background:#CCC;}
-->
</style>
<?php include ("include/kopfzeile.inc.php"); ?>
<?php include ("include/navigation.inc.php");?>
»
<a href="gaestebuch.php" title="Gästebuch von Meik Schmidt">gästebuch</a></div>
<div class="inhalt">
<h1>Gästebuch von Meik Schmidt</h1>
<p>text von mir </p>
<form name="gastbuch" method="post" id="formular" action="<?php echo $_SERVER['PHP_SELF']?>">
<table width="520" border="0">
<tr>
<td width="110">Name:</td>
<td width="400"><input name="name" type="text" maxlength="50"></td></tr>
<tr>
<td align="left" valign="top">Eintrag:</td>
<td><textarea name="eintrag" cols="35" rows="10" maxlength="500"></textarea></td></tr>
<tr>
<td align="left" valign="top">Code:</td>
<td>
<div align="left">
<?PHP
$code = $_SESSION['new_code2'];
echo
'<img src="include/code.php?'.$code.'" height="25" width="100" style="border:0; padding:0;">
<INPUT TYPE="TEXT" NAME="new_code" SIZE="20" MAXLENGTH="6">';?>
</div></td></tr>
<tr>
<td align="left" valign="top">Absenden:</td>
<td><div align="left"><input name="absenden" type="submit" value="eintragen"></div></td>
</tr>
</table>
</form>
</div>
<div class="inhalt">
<?php
# echo " ".$_SESSION['new_code2']." <br>";
# echo " ".$_GET['new_code']." <br>";
if($_POST['new_code'] != $_SESSION['new_code2']) {
die("In moment funktioniert das mit dem code noch nicht - probiere es bitte ab dienstag noch einmal!");
}
// Dateipfad in der die Einträge abgespeichert werden
$datei = "gaestebuch.txt";
// sind der Name und Text eingetragen?
if (isset($_POST['name']) && $_POST['text'] != "" && $_POST['new_code'] !="") {
$name = $_POST['name'];
$text = $_POST['text'];
// Datei wird zum schreiben und lesen geöffnet
$zeiger = fopen($datei, "r+");
// alte Daten herauslesen und in $alt sichern
$alt = fread($zeiger, filesize($datei));
// HTML-Zeichen maskieren, Slashes entfernen, Zeilenumbrüche erhalten
$name = htmlspecialchars($name);
$name = stripslashes(nl2br($name));
$text = htmlspecialchars($text);
$text = stripslashes(nl2br($text));
$code = htmlspecialchars($name);
$code = stripslashes(nl2br($name));
// Eintrag "zusammensetzen"
$eintrag="<h2>$name</h2>\n$text\n";
// Cursor sringt zum Anfang
rewind($zeiger);
// neue Eintrag vor den alten Eintrag schreiben:
fputs($zeiger, "$eintrag \n $alt");
// Datei wieder schließen
fclose($zeiger);
}
// Anzeigen des Gaestebuch
readfile($datei);
?>
</div>
<?php include ("include/fusszeile.inc.php"); ?>
Hier die code datei
PHP-Code:
<?php
session_start();
$chars = "qwertzuiopasdfghjklyxcvbnmQWERTZUIOPASDFGHJKLYXCVBNM1234567890";
$code = "";
for ($i=1; $i<7; $i++)
{
$code = $code.$chars[mt_rand (0,strlen($chars)-1)];
}
$_SESSION['new_code2'] = $code;
Header("Expires: Mon, 26 Jul 1997 05:00:00 GMT");
Header("Content-type: image/jpeg");
$pic=ImageCreate(100,25); //(breite, höhe)
$col1=ImageColorAllocate($pic,255,255,255);
$col2=ImageColorAllocate($pic,138,138,138);
ImageFilledRectangle($pic, 0, 0, 100, 25, $col2);
ImageRectangle($pic, 1, 1, 98, 23, $col1);
for ($i = 0; $i < 6; $i++)
{
ImageString($pic, mt_rand(3, 5), (14*$i+10), mt_rand(3, 6), substr($code, $i, 1), $col1);
}
ImageJPEG($pic);
ImageDestroy($pic);
?>
__________________
An den unerwarteten Momenten erwartet einen das unerwartete unerwartet
Geändert von meikschmidt (11-12-2006 um 20:16 Uhr)
|

11-12-2006, 20:05
|
penizillin
PHP Guru
|
|
Registriert seit: Feb 2004
Beiträge: 10.166
|
|
error_reporting hochsetzen und du siehst den fehler selbst.
|

11-12-2006, 20:16
|
meikschmidt
Newbie
|
|
Registriert seit: Dec 2006
Beiträge: 18
|
|
wie geht das denn mir den error_reporting ???
__________________
An den unerwarteten Momenten erwartet einen das unerwartete unerwartet
|

11-12-2006, 20:17
|
penizillin
PHP Guru
|
|
Registriert seit: Feb 2004
Beiträge: 10.166
|
|
du erinnerst dich an das php manual, google oder sogar den regel-thread?
|

11-12-2006, 20:20
|
meikschmidt
Newbie
|
|
Registriert seit: Dec 2006
Beiträge: 18
|
|
also wäre das so richtig, das ich ganz an den anfang setzte !? aber ich sehe dann keine fehlermeldung
PHP-Code:
<?php
session_start();
error_reporting(E_ALL);
?>
__________________
An den unerwarteten Momenten erwartet einen das unerwartete unerwartet
|

11-12-2006, 20:24
|
penizillin
PHP Guru
|
|
Registriert seit: Feb 2004
Beiträge: 10.166
|
|
dann zeig mal print_r() von $_POST nach dem absenden des formulars.
|

11-12-2006, 20:30
|
meikschmidt
Newbie
|
|
Registriert seit: Dec 2006
Beiträge: 18
|
|
hab ich getan. dann bekomme ich diese meldung. wenn ich den code richtig eingebe
Array ( [name] => Vorname Nachname [eintrag] => Texteintrag für das Gästebuch [new_code] => PSmeV5 [absenden] => eintragen )
__________________
An den unerwarteten Momenten erwartet einen das unerwartete unerwartet
|

11-12-2006, 20:31
|
penizillin
PHP Guru
|
|
Registriert seit: Feb 2004
Beiträge: 10.166
|
|
vergleiche mit
Zitat:
PHP-Code:
if (isset($_POST['name']) && $_POST['text'] != "" && $_POST['new_code'] !="") {
|
und beschreibe, was dir an den einzelnen bedingungen auffällt.
|

11-12-2006, 20:42
|
meikschmidt
Newbie
|
|
Registriert seit: Dec 2006
Beiträge: 18
|
|
keine ahnung. ich weiß nur das da miteinander was verglichen wird. trotzdem danke. ich nehm das gästebuch einfach wieder raus. das wird mir alles zu kompliziert zur zeit noch!
__________________
An den unerwarteten Momenten erwartet einen das unerwartete unerwartet
|

11-12-2006, 20:44
|
penizillin
PHP Guru
|
|
Registriert seit: Feb 2004
Beiträge: 10.166
|
|
beschreibe doch in eigenen worten, _was_ verglichen wird.
|

11-12-2006, 20:50
|
meikschmidt
Newbie
|
|
Registriert seit: Dec 2006
Beiträge: 18
|
|
in diesem fall der "namenseintrag" mit dem "texteintrag" und dem "eingetippten" code.
also müsste es so richtig lauten !?
PHP-Code:
if (isset($_POST['new_code2'] && $_POST['new_code'] !="")
damit der generirte code mit dem eingetippten code verglichen wird?
__________________
An den unerwarteten Momenten erwartet einen das unerwartete unerwartet
|

11-12-2006, 20:52
|
penizillin
PHP Guru
|
|
Registriert seit: Feb 2004
Beiträge: 10.166
|
|
nein. noch mal, dort steht etwas in der form . was bedeutet A, B und C im einzelnen?
|

11-12-2006, 21:10
|
meikschmidt
Newbie
|
|
Registriert seit: Dec 2006
Beiträge: 18
|
|
mit $_POST['Variable'] frage ich genau die Variablen ab die über den Browser per POST abgesendet wurden
__________________
An den unerwarteten Momenten erwartet einen das unerwartete unerwartet
|

11-12-2006, 21:13
|
penizillin
PHP Guru
|
|
Registriert seit: Feb 2004
Beiträge: 10.166
|
|
ok. was bedeutet dabei 'Variable'?
|

11-12-2006, 21:18
|
meikschmidt
Newbie
|
|
Registriert seit: Dec 2006
Beiträge: 18
|
|
also nach meiner erkenntniss ist eine "variable" eina art "platzhalter". z.b.
PHP-Code:
$_TEXT['Auto'] = 'Hier ist die Rubrik auto';
__________________
An den unerwarteten Momenten erwartet einen das unerwartete unerwartet
|
Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
|
|
Themen-Optionen |
|
Thema bewerten |
|
Forumregeln
|
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.
HTML-Code ist aus.
|
|
|
|
PHP News
|