insert sql befehl per php

Milo83

Benutzer
Beiträge
18
Hallo,
ich bin kurz vor dem Verzweifeln. Ich versuche daten in einer Datenbank abzulegen.
Im Terminal klappt das, in PHP nicht.
Daraus schließe ich, dass der Fehler im PHP Teil liegen muss. Vielleicht starre ich schon zu lange drauf um den Fehler noch zu erkennen.

Es würde mich freuen, falls mir jemand sagen könnte weshalb die Anweisung im Script nicht durchgeführt wird.

$wert=$db->query=("INSERT INTO Tabelle(Row1,Row2,Row3,Row4,Row5,Row6, Row7) VALUES ('".$var1."','".$var2."','".$var3."'','".$var4."','".$var5."','".$var6."','".$var7."');");

Danke an alle die mir weiterhelfen.
 
Zuletzt bearbeitet:
Werbung:
PHP ist hier OffTopic, aber durchnummerierte Spalten- und Variablennamen sind starkes Indix für schlechte Programmierung.

'klappt nicht' ist eine nicht wirklich aussagefähige Fehlerbeschreibung. PHP hat eingebautes Fehlerhandling, nutze dies.
 
@akretschmer, die sind ja nur beispielhaft so genannt. Der Fehler liegt darin, dass die Seite abstürzt, wenn ich dass ganze laufen lasse.

@ukulele, danke, aber das wars leider nicht.

Ich finde ständig Aussagen zur Schreibweise bei Variablen in SQL Befehlen. Für Anfänger ist das etwas verwirrend.
 
@akretschmer, die sind ja nur beispielhaft so genannt. Der Fehler liegt darin, dass die Seite abstürzt, wenn ich dass ganze laufen lasse.
wenn die nur beispielhaft so genannt sind, dann ist das vermutlich auch keine 1:1 - Kopie des Codes, sondern nur beispielhaft. Vorhandene oder auch nicht vorhandene Fipptehler sind somit auch nur beispielhaft. Daß die Seite 'abstürzt', ist sicher auch nur ein Beispiel.

Sorry, aber niemand kann das nachvollziehen. Und damit auch nicht helfen, nicht einmal beispielhaft.
 
Wenn die Seite abstürzt muss man schauen, wie man den Fehler geloggt bekommt.

Außerderdem sollte man immer Prepared Statements nutzen.
 
So, die abstürze sind beseitigt.
seltsamerweise wird zwar die erste Zeile beschrieben, aber die folgenden nicht mehr.
('".$var1."','".$var2."','".$var3."','".$var4."','".$var5."','".$var6."','".$var7.'");
richtig? ich finde da so viele Varianten.
mit einzelnen hochkomatta, doppelten mit beidem, mit und ohne Punkt.

Wenn die Seite abstürzt muss man schauen, wie man den Fehler geloggt bekommt.

Außerderdem sollte man immer Prepared Statements nutzen.
Ich weiß, dennoch danke dass du darauf hinweist. Ich arbeite mich langsam hoch. Erst einmal das ganze zum laufen bekommen, dann die prepared statement. Bei mir muss das zum Glück nicht wirtschaftlich sein, ich lerne nur. Und das mache ich lieber Schrittweise.
 
Braucht es bei Php überhaupt Hochkomma?

($var1,$var2,...)
Natürlich braucht du ein Zeichen das String umschliesst, denn du erstellst da nur ein SQL Statement und es ist
ein Unterschied zwischen

INSERT into MyTable (f1,f2,f3) VALUES ( 'abc , def' , 'ghi , jkl' , 'mno , pqr');

zu

INSERT into MyTable (f1,f2,f3) VALUES ( abc , def , ghi , jkl , mno , pqr);

Na, wo beginnt und endet nun ein String ??
 
Werbung:
Zurück
Oben