• Das Erstellen neuer Accounts wurde ausgesetzt. Bei berechtigtem Interesse bitte Kontaktaufnahme über die üblichen Wege. Beste Grüße der Admin

[FRAGE] Nächste PHP -> MYSQL frage !

Transformator

New member
Es ist immer das gleiche : WO IST DER FEHLER ???

Naja nur diesmal mit mehr code !

Code:
MYSQL_QUERY("UPDATE `pfanzliste`.`pflanzliste` SET standort = '" . $_POST["standort"] . "' WHERE id = '" . $_POST["id"] ."'");
MYSQL_QUERY("UPDATE `pfanzliste`.`pflanzliste` SET pflanzeit = '" . $_POST["pflanzeit"] . "' WHERE id = '" . $_POST["id"] ."'");
MYSQL_QUERY("UPDATE `pfanzliste`.`pflanzliste` SET pflanzdatum = '" . $_POST["pflanzdatum"] . "' WHERE id = '" . $_POST["id"] ."'");
MYSQL_QUERY("UPDATE `pfanzliste`.`pflanzliste` SET bemerkung = '" . $_POST["bemerkung"] . "' WHERE id = '" . $_POST["id"] ."'");
MYSQL_QUERY("UPDATE `pfanzliste`.`pflanzliste` SET erntedatum = '" . $_POST["erntedatum"] . "' WHERE id = '" . $_POST["id"] ."'");
MYSQL_QUERY("UPDATE `pfanzliste`.`pflanzliste` SET bewertungvAndreas = '" . $_POST["bewertungvAndreas"] . "' WHERE id = '" . $_POST["id"] ."'");
MYSQL_QUERY("UPDATE `pfanzliste`.`pflanzliste` SET bewertungvSahra = '" . $_POST["bewertungvSahra"] . "' WHERE id = '" . $_POST["id"] ."'");
MYSQL_QUERY("UPDATE `pfanzliste`.`pflanzliste` SET bewertungvBernd = '" . $_POST["bewertungvBernd"] . "' WHERE id = '" . $_POST["id"] ."'");
MYSQL_QUERY("UPDATE `pfanzliste`.`pflanzliste` SET bewertungvTom = '" . $_POST["bewertungvTom"] . "' WHERE id = '" . $_POST["id"] ."'");
MYSQL_QUERY("UPDATE `pfanzliste`.`pflanzliste` SET bewertungvPeter = '" . $_POST["bewertungvPeter"] . "' WHERE id = '" . $_POST["id"] ."'");
MYSQL_QUERY("UPDATE `pfanzliste`.`pflanzliste` SET bewertungvIna = '" . $_POST["bewertungvIna"] . "' WHERE id = '" . $_POST["id"] ."'");
MYSQL_QUERY("UPDATE `pfanzliste`.`pflanzliste` SET bewertungvJohn = '" . $_POST["bewertungvJohn"] . "' WHERE id = '" . $_POST["id"] ."'");
MYSQL_QUERY("UPDATE `pfanzliste`.`pflanzliste` SET bewertungvIrene = '" . $_POST["bewertungvIrene"] . "' WHERE id = '" . $_POST["id"] ."'");
 
Zuletzt bearbeitet:
Keine !
Aber funktionieren tut es auch nicht !

Ich habe mit mysql_error() versucht mir welche anzeigen zu lassen aber es funktioniert nicht !
 
für mikdoe :
ÖLM es wird kein Fehler ausgegeben was ich ja aktiviert habe !
aber einträge werden auch nicht geupdatet !

für hesst :
gleiche ergebnis !
 
Code:
SET standort = '" . $_POST["standort"] . "'
Wieso gehst du wieder nicht auf meinen Hinweis mit dem Escapen von Eingaben ein? Auch kkapsner hat dich bereits darauf hingewiesen, dass du dir damit ein riesiges Sicherheitsloch aufreisst.


P.S. - Randbemerkung:
Wörter durchgehend groß zu schreiben klingt so, als würdest du schreien. Es ist außerdem schwer, aus deinen Sätzen nützliche Informationen heraus zu lesen. Auch solltest du den Threadtitel sinnvoller wählen:
Um die Antwortchancen zu erhöhen, sind Überschriften hilfreich, die das Problem kurz umreissen und die verwendete Script-Sprache angeben.

--> siehe hierzu auch: wichtige Informationen
Nur als Tipp: formuliere deine Fragen in Zukunft etwas "sachlicher", die jetzige Art nervt nämlich etwas.
Bitte versteh mich nicht falsch, das ist nicht böse gemeint!
 
Zuletzt bearbeitet:
1. Was steht denn in den ganzen POST-Variablen drin? (Einfach mal ein
PHP:
var_dump($_POST);
hier zeigen).
2. Warum machst du so viele SQL-Statements, die man alle zusammen in einem schreiben könnte: https://dev.mysql.com/doc/refman/5.1/de/update.html
Code:
UPDATE `pfanzliste`.`pflanzliste`
	SET
		`standort` = '" . $escapedStandort . "',
		`pflanzeit` = '" . $escapedPflanzeit . "',
		...
	WHERE `id` = '" . $escapedId ."'
3. Wenn du so viele SQL-Anfragen startest, musst du den Rückgabewert von mysql_info schon nach jedem mysql_query (es wurde schon mehrfach darauf hingewiesen, dass die komplette mysql-erweiterung von PHP veraltet und deprecated ist. Wenn du das also neu lernst, erspar' dir doch den Ärger und nimm gleich PDO) dir ausgeben lassen, damit du alle Fehler siehst. Oder du arbeitest mit dem "|| die(mysql_error())":
PHP:
mysql_query($deinStatement) || die(mysql_error());
- ist aber definitiv nicht für den Produktiveinsatz geeignet.
 
Einfach mal ein
PHP:
var_dump($_POST);
hier zeigen.
Was mir noch da im Zusammenhang aufgefallen ist: seltsamerweise liest man oft auf anderen Webseiten davon, das Ganze per echo auszugeben, was aber ja vollkommener Schwachsinn ist, da
PHP:
echo $_POST;
die Ausgabe
erzeugt...

Meine Idee, die mir dadurch gekommen ist: Wir könnten doch einen Thread in den FAQ o.ä. erstellen, zum Thema "wie gehe ich bei der Fehlersuche in serverseitigen Skripten vor?".
 
ERSTMAL Danke für die ganzen antworten !

Zu kkapsner :
ja die post variable ist voll mit den richtigen daten !
Code:
mysql_query($deinStatement) || die(mysql_error());
<- das ist also keine gefahr ?
wenn der hacker den ganzen sql code sieht ?
naja ich hab diesen code schon vorher gehabt :
Code:
mysql_query($do) or die mysql_error();
Und ja man kann das ganze in einen Query unterbringen aber ich wuste nicht wie diese genau aufgebaut sind

ZU Julian :

Das mit dem Escapen bringt mich nur durcheinader außerdem
ist die website dann in eime Privaten bereich der Website

ZU mikdoe :

Das ganze läuft über xampp & PhpMyAdmin ist installiert !
& das ganze wird auch ausgelesen !
 
ZU mikdoe :

Das ganze läuft über xampp & PhpMyAdmin ist installiert !
& das ganze wird auch ausgelesen !
Verstehe ich noch immer nicht. Meine Frage zielt darauf ab festzustellen, ob vielleicht beim Auslesen der DB ein Fehler vorliegt. Manchmal denkt man, ein Schreibvorgang wäre nicht erfolgreich, obwohl der Lesevorgang fehlerhaft ist, mit dem man den Schreibvorgang vermeintlich kontrolliert. Wäre nicht das erste mal.
Daher wäre die Frage nach wie vor: Wie kontrollierst du, ob die Schreibvorgänge funktionieren oder nicht?
 
Das mit dem Escapen bringt mich nur durcheinader außerdem
ist die website dann in eime Privaten bereich der Website
So schwer ist das doch nicht:
PHP:
mysql_real_escape_string($_POST['...']);


Code:
mysql_query($deinStatement) || die(mysql_error());
<- das ist also keine gefahr ?
wenn der hacker den ganzen sql code sieht ?
Ähm...das macht man ja nur während der Entwicklung... Genauso unterdrückt man im Produktiv-Einsatz auch die PHP-Fehlermeldungen.
 
Für mik dingsda : :D
Let me google that for you

Außerdem wird mir mitlerweile ein Fehler angezeigt !

Code:
No database selected
dabei steht eine Zeile darüber :
Code:
MYSQL_SELECT_DB("pflanzliste");
bei :
Code:
MYSQL_SELECT_DB("`pflanzliste`");
steht :
Code:
You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use
Und ich habe ne vermutung !

Ich hatte schon bei Java Probleme mit ASCII Tables und ich glaube der
Deutsche ASCII satz sieht ` nicht so vor wie es sein sollte !

Für Julian :

Keine angst so was hatte ich schon eingebaut :
Code:
mysql_query($do) or die mysql_error();

Und die Website ist eh privat !
 
Zuletzt bearbeitet:
Keine angst so was hatte ich schon eingebaut :
Code:
mysql_query($do) or die mysql_error();

:confused: Zusammenhang??? Das hat doch rein gar nichts mit meiner Antwort zu tun - außerdem hattest du das bereits geschrieben...

Ähm...mit solchen belehrenden Provokationen täte ich seeehr vorsichtig sein. Und du kannst dir sicher sein, dass mikdoe besser als du weiß, was PHPMyAdmin ist...
 
Jetzt hat er ja sogar einen Fehler beim DB Select, Julian :)
Schauen wir mal, wo der Fehler wirklich lag, wenn er ihn gefunden hat. Einfache Fragen beantworten ist ja scheinbar nicht sein Ding ;)
 
Aber ich weiß nicht was er meint !

Den PhpMyAdmin liefert keinen Fehler ! :

keinerror.PNG

Der krigts hin !
und error report ist aufjeden fall in PhpMyAdmin an
 
Zurück
Oben