callidus Geschrieben 7. November 2006 Geschrieben 7. November 2006 hi leute, ich habe folgendes problem: ich habe ein script aus einem buch abgeschrieben, jedoch werden keine daten in die datenbank geschrieben. ich habe euch mal das gesamte script geschickt: index.php: <html> <head> <title>Gaestebuch</title> <link rel="stylesheet" href="style.css" type="text/css"> </head> <body> <div align='center'> <h2>Gaestebuch</h2> <form action='eintragen.php' method="get"> <table width='350' cellspacing='5'> <tr> <td> <div>Name</div> </td> <td><input type='text' name='name' class='eing' /></td> </tr> <tr> <td><div>Ihr E-Mail</div></td> <td><input type='text' name='email' class='eing' /></td> </tr> <tr> <td><div>Homepage</div></td> <td><input type='text' name='homepage' value='http://' class='eing' /></td> </tr> <tr> <td><div>Überschrift</div></td> <td><input type='text' name='ueberschrift' class='eing' /></td> </tr> <tr> <td><div>Eintrag</div></td> <td><textarea name='kommentar' class='eing' cols='15' rows='5'>Hier eingeben</textarea></td> </tr> <tr> <td><div>Datum</div></td> <td><?php include("time.php"); echo "$date1, $time1"; ?></td> </tr> <tr> <td colspan='2'> </td> </tr> <tr> <td valign='top'><div>Wie findest du die Seite?</div></td> </tr> <tr> <td> <table> <tr> <td> <input type='radio' name='bewertung' value='gut' />gut</td> </tr> <tr> <td> <input type='radio' name='bewertung' value='mittel' />mittel</td> </tr> <tr> <td> <input type='radio' name='bewertung' value='schlecht' />schlecht</td> </tr> </table> </td> </tr> <tr> <td colspan='2'> </td> </tr> <tr> <td> <input type='reset' value='Löschen' class='sender'> </td> <td align='right'> <input type='submit' value='Eintragen' class='sender'> </td> </tr> </table> </form> <hr><h3>Bisher geschriebenes</h3> <table width='300'> <tr> <td> <?php include('include.php'); $db = @mysql_connect($server, $user, $passwort); $db_select = @mysql_select_db($datenbank); $result = mysql_query("SELECT * FROM gaestebuch"); $menge = mysql_num_rows($result); $zeigen = floor($menge / 10); if(!$start) { $start = 0.1; } $result = mysql_query("SELECT * FROM gaestebuch WHERE Freigabe !='nein' ORDER BY ID DESC limit $start,10"); while($row = mysql_fetch_row($result)) { ?> <fieldset> <legend><span> <?php echo $row[6]; echo $row[4]; ?></span></legend> <table width="390" border='0' align='center' celssspacing="3" cellpadding="4" class="ansicht"> <tr> <td valign="top" colspan='2'> <?php echo $row[5]; ?> </td> </tr> <tr> <td valign='top' colspan='2'> <small> Eingetragen am: <?php echo $row[8]; ?></small> <br> Geschrieben von: <?php if ($row[2] == '') { echo '';} else { ?> <a href="mailto:<?php echo $row[2]; ?>"><?php echo $row[1]; ?></a> <?php } if ($row[3] == '' or $row[3] == 'http://') { echo''; } else { ?> <a href="<?php echo $row[3]; ?>">zur Homepage</a> <?php } ?> </td> </tr> </table> </fieldset><br><br><br> <?php } ?> </body> </html> eintragen.php <?php $name = $_GET["name"]; $email = $_GET["email"]; $homepage = $_GET["homepage"]; $ueberschrift = $_GET["ueberschrift"]; $kommentar = $_GET["kommentar"]; $bewertung = $_GET["bewertung"]; $freigabe = $_GET["freigabe"]; $date = $_GET["date"]; $freigabe = 'nein'; include("include.php"); $db = @mysql_connect($server, $user, $passwort) or die(mysql_error()); $db_select = @mysql_select_db($datenbank) or die(mysql_error()); $eintrag = "INSERT INTO gaestebuch (Name, EMail) VALUES ($name, $email)" or die(mysql_error()); $eintragen = mysql_query($eintrag); $eintrag = "INSERT INTO gaestebuch (Homepage, Ueberschrift) VALUES ($homepage, $ueberschrift)" or die(mysql_error()); $eintragen = mysql_query($eintrag); $eintrag = "INSERT INTO gaestebuch (Kommentar, Bewertung) VALUES ($kommentar, $bewertung)" or die(mysql_error()); $eintragen = mysql_query($eintrag); $eintrag = "INSERT INTO gaestebuch (Freigabe, Datum) VALUES ($freigabe, $date)" or die(mysql_error()); $eintragen = mysql_query($eintrag); ?> <html> <head> <title>Vielen Dank</title> <link rel="stylesheet" href="style.css" type="text/css"> </head> <body> <div align="center"> <h2>Vielen Dank für Ihren Beitrag</h2> <h4>Ihr Eintrag wird nach der überprüfung freigegeben.</h4> <a href="index.php">zurÜck zum Gästebuch</a> Eingetragenes: <?php echo $name; echo'<br>'; echo $email; echo'<br>'; echo $homepage; echo'<br>'; echo $ueberschrift; echo'<br>'; echo $kommentar; echo'<br>'; echo $bewertung; echo'<br>'; echo $freigabe; echo'<br>'; echo $date; ?> </div> </body> </html> zu sehen könnt ihr das auch unter: Gaestebuch könntet ihr mir evtl helfen?
etreu Geschrieben 8. November 2006 Geschrieben 8. November 2006 Warum machst du das INSERT nicht in einer Abrage? Du nimmst immer wieder andere Spalten und versucht damit einen komplette Datensatz anzulegen. Es kann sein, dass du 3 Spalten hast, die nicht NULL sein dürfen. Somit kann dein Statement nicht einmal erfolgreich ausgeführt werden. Füge doch mal nach 'mysql_query()' noch 'or die(mysql_error());' ein und poste mal die Ausgabe.
squawsys Geschrieben 8. November 2006 Geschrieben 8. November 2006 <form action='eintragen.php' method="get"> Abgesehen davon, würde ich statt method="get" method="post" nehmen !
DirkHo Geschrieben 13. November 2006 Geschrieben 13. November 2006 Sorry, aber das Script kann gar nichts! Schau alleine mal unter dem Stichwort "mysql_escape_string()" nach! Wenn du Pech hast zerschiesst dir einer deine komplette Datenbank mit Hilfe deines Gästebuchs!
Empfohlene Beiträge
Erstelle ein Benutzerkonto oder melde Dich an, um zu kommentieren
Du musst ein Benutzerkonto haben, um einen Kommentar verfassen zu können
Benutzerkonto erstellen
Neues Benutzerkonto für unsere Community erstellen. Es ist einfach!
Neues Benutzerkonto erstellenAnmelden
Du hast bereits ein Benutzerkonto? Melde Dich hier an.
Jetzt anmelden