Liefere uns einfach mal den Output deines Scriptes.
Ankündigung
Einklappen
Keine Ankündigung bisher.
[Erledigt] übergabe formular an datenbank
Einklappen
Neue Werbung 2019
Einklappen
Dieses Thema ist geschlossen.
X
X
-
bandit600
Ich wiederhole mich ja gerne:
Richtig debuggen
1. Man bemerkt, dass ein Skript nicht das tut, was es soll.
2. Man schreibt an den Anfang des Scriptes die Zeile: error_reporting(E_ALL); und ini_set("display_errors", true);
3. Man versucht, die Stelle die daran Schuld sein kann, schonmal einzugrenzen. Falls dies nicht geht, wird zunächst das komplette Skript als fehlerhaft angesehen.
4. An markanten Stellen im Skript lässt man sich wichtige Variableninhalte ausgeben und ggf. auch in bedingten Anweisungen eine kurze Ausgabe machen, um zu überprüfen, welche Bedingung ausgeführt wurde (oder auch nicht).
5. Schritt 3 wird so lange wiederholt, bis Unstimmigkeiten im Skript auffallen
6. Damit hat man das Problem (Unstimmigkeit) gefunden und kann versuchen diese zu beheben. Hierzu dienen dann die PHP-Dokumentation und andere Quellen als Ratgeber.
7. Lässt sich das konkrete Problem trotzdem nicht beheben, kann man in Foren um Rat fragen.
8. Das Programm läuft und man kann die Debug-Ausgaben wieder entfernen.
Das Script macht nicht das, was du glaubst, sondern das, was du programmiert hast. Und da dir selber nicht klar ist, was du programmiert hast, solltest du an allen Ecken und Enden echo's einbauen, um zu sehen, was das Script tatsächlich macht.
Kommentar
-
zeig uns doch mal das Ergebnis von echo $sql_insert .. das direkt vor deinem mysql_query kommen sollTE - ..
eigentlich sollte diese Ausgabe schon Hinweise geben, eben ob das irgendwie sinnvolles SQL ist oder nicht ..."Irren ist männlich", sprach der Igel und stieg von der Drahtbürste [IMG]http://www.php.de/core/images/smilies/icon_lol.gif[/IMG]
Kommentar
-
Code:<form action="/arbeit/test.php" method="post"> Woche: <input type="text" name="Woche" value="test "/><br/> Montag: <input type="text" name="Montag" value="test"/> <br/><br/> Dienstag: <input type="text" name="Dienstag" value="test "/><br/> Mittwoch: <input type="text" name="Mittwoch" value=""/> <br/><br/> Donnerstag: <input type="text" name="Donnerstag" value="test "/><br/> Freitag: <input type="text" name="Freitag" value="test"/> <br/><br/> Samstag: <input type="text" name="Samstag" value="test "/><br/> <input type="submit" name="senden" value="absenden"/></form>
Kommentar
-
nun du führst doch dein script hoffentlich über den Webserver aus und siehst es dir im Browser an ...
wie sieht denn die AdressZeile im Browser aus ? Um mal ganz zu den Wurzeln zu gehen"Irren ist männlich", sprach der Igel und stieg von der Drahtbürste [IMG]http://www.php.de/core/images/smilies/icon_lol.gif[/IMG]
Kommentar
-
Zitat von spaxus Beitrag anzeigenwenn du mir sagen kannst wie ich mir die ausgabe anzeigen lassen kann dann sage ich dir das gerne auf der eingabe seite wird gar nix angezeigt weder fehler noch errors noch andere sachen
Außer
PHP-Code:if ($_POST['senden'] != '' AND $_POST['Woche'] != '' AND $_POST['Montag'] != '' AND
$_POST['Dienstag'] != '' AND $_POST['Mittwoch'] != '' AND $_POST['Donnerstag'] != '' AND
$_POST['Freitag'] != '' AND $_POST['Samstag'] != '')
{
var_dump($_POST['senden'] != ''); kann dir sagen ob da true oder false rauskommt, wenn nur 1. davon false ist wird der gesamte Ausdruck false und alles was in {} wird nicht ausgeführt.
Bitte lerne einige Grundlagen wnen du shcon Probleme mit solch einfachen logischen Abläufen hast."Alles im Universum funktioniert, wenn du nur weißt wie du es anwenden musst".
Kommentar
-
Der Fehler befindet sich in folgender Zeile:
PHP-Code:if (!isset($_POST['Mittwoche'])) $_POST['Mittwoch'] = '';
@spaxus
Debuggen lernen, dringend. Solche Fehler sind extrem banal. Man sollte auch als Anfänger in der Lage seinen seinen Code sorgfältig und aufmerksam Korrektur zu lesen."Alles im Universum funktioniert, wenn du nur weißt wie du es anwenden musst".
Kommentar
-
bandit600
Jetzt mal ehrlich?! Du bist anscheinend wirklich zu blöd, da ein paar echo's einzubauen, oder? Dir sollte auch schon auffallen, dass deine Ausgabe von $sql_insert nicht kommt! Woran kann das jetzt wohl liegen???
Ungetestet:
PHP-Code:<?php
error_reporting(E_ALL);
ini_set('display_errors', 1);
$datenbank_host = 'localhost';
$datenbank_user = 'arbeit2011';
$datenbank_passwort = 'merlin';
$datenbank_name = 'arbeit';
$msg = $woche = $montag = $dienstag = $mittwoch = $donnerstag = $freitag = $samstag = "";
if (isset($_POST['senden']))
{
$woche = trim($_POST['Woche']);
$montag = trim($_POST['Montag']);
$dienstag = trim($_POST['Dienstag']);
$mittwoch = trim($_POST['Mittwoch']);
$donnerstag = trim($_POST['Donnerstag']);
$freitag = trim($_POST['Freitag']);
$samstag = trim($_POST['Samstag']);
if ($woche == '' || $montag == '' || $dienstag == '' || $mittwoch == '' ||
$donnerstag == '' || $freitag == '' || $samstag == '')
{
$msg = "Nicht alle Felder ausgefüllt";
}
else
{
$link = @mysql_connect($datenbank_host, $datenbank_user, $datenbank_passwort)
or die('keine Verbindung möglich: ' . mysql_error());
$db_selected = mysql_select_db($datenbank_name, $link)
or die ('Kann '.$datenbank_name.' nicht benutzen : ' . mysql_error());
$sql_insert = "INSERT
INTO
`arbeit`
SET
`Woche`='" . mysql_escape_string($woche) . "',
`Montag`='" . mysql_escape_string($montag) . "',
`Dienstag`='" . mysql_escape_string($dienstag) . "',
`Mittwoch`='" . mysql_escape_string($mittwoch) . "',
`Donnerstag`='" . mysql_escape_string($donnerstag) . "',
`Freitag`='" . mysql_escape_string($freitag) . "',
`Samstag`='" . mysql_escape_string($samstag) . "'";
echo $sql_insert."<br>";
mysql_query($sql_insert,$link)
OR die(mysql_error());
$msg = 'Der Eintrag wurde gespeichert!';
}
mysql_close($link);
}
echo $msg .
'<br/><form action="' . htmlspecialchars($_SERVER['SCRIPT_NAME' ]) . '" method="post">
Woche: <input type="text" name="Woche" value="' . htmlspecialchars($woche) . ' "/><br/>
Montag: <input type="text" name="Montag" value="' . htmlspecialchars($montag) . '"/> <br/><br/>
Dienstag: <input type="text" name="Dienstag" value="' . htmlspecialchars($dienstag) . ' "/><br/>
Mittwoch: <input type="text" name="Mittwoch" value="' . htmlspecialchars($mittwoch) . '"/> <br/><br/>
Donnerstag: <input type="text" name="Donnerstag" value="' . htmlspecialchars($donnerstag) . ' "/><br/>
Freitag: <input type="text" name="Freitag" value="' . htmlspecialchars($freitag) . '"/> <br/><br/>
Samstag: <input type="text" name="Samstag" value="' . htmlspecialchars($samstag) . ' "/><br/>
<input type="submit" name="senden" value="absenden"/>
</form>';
?>
Kommentar
Kommentar