WCM - Das österreichische Computer Magazin Forenübersicht
 

Zurück   WCM Forum > Rat & Tat > Programmierung

Programmierung Rat & Tat für Programmierer

Microsoft KARRIERECAMPUS

Antwort
 
Themen-Optionen Ansicht
Alt 19.07.2001, 16:19   #1
The_Beax
Senior Member
 
Registriert seit: 25.02.2001
Alter: 39
Beiträge: 145


The_Beax eine Nachricht über ICQ schicken
Standard PHP&MySQL

ich habe da eine kleine fragen zu php und mysql - besser gesagt zu einen kleinen script das nicht funktioniert


es werden mehr werte eingetragen als ich da jetzt geschrieben habe
$vorname = Martin
Es kommt der Fehler Nicht Erfolgreich weil Feld Martin existiert nicht! ich habe die datenbank mit feldname Vorname aber angelegt! warum schreibt er eigentlich feldname martin???????????? aja verbunden mit der datenbank bin ich natürlich auch


$sql = "INSERT INTO mannschaft (Vorname) VALUES($vorname)";
if(mysql_query($sql, $verbindung))
{
echo "Erfolgreich
\n";
}
else
{
echo "Nicht Erfolgreich
\n";
echo mysql_errno() . ": " . mysql_error() .
"
\n";
}
mysql_close();
____________________________________
Dank Computern können wir Probleme lösen die es vorher nicht gegeben hat!

---

Nur ein Genie beherrscht das Chaos
The_Beax ist offline   Mit Zitat antworten
Alt 21.07.2001, 10:48   #2
The_Beax
Senior Member
 
Registriert seit: 25.02.2001
Alter: 39
Beiträge: 145


The_Beax eine Nachricht über ICQ schicken
Standard

?
____________________________________
Dank Computern können wir Probleme lösen die es vorher nicht gegeben hat!

---

Nur ein Genie beherrscht das Chaos
The_Beax ist offline   Mit Zitat antworten
Alt 23.07.2001, 10:26   #3
helios
Veteran
 
Registriert seit: 21.06.2001
Beiträge: 343


helios eine Nachricht über ICQ schicken
Standard

Hi

also ich kenn MySQL und PHP nicht, aber der Fehler liegt meines Erachtens an fehlenden Hochkomma's. Martin wird nicht als Stringkonstante erkannt und deshalb behandelt es MySQL als Feldname.
Du schreibst: $vorname = Martin.
Müsste es nicht heissen: $vorname = "Martin" ?
____________________________________
religion is a virus from outer space
helios ist offline   Mit Zitat antworten
Alt 23.07.2001, 14:13   #4
The_Beax
Senior Member
 
Registriert seit: 25.02.2001
Alter: 39
Beiträge: 145


The_Beax eine Nachricht über ICQ schicken
Standard

nein ist es nicht, weil die daten per formular 100%ig richtig reinkommen - ich hab $vorname=martin nur so geschrieben - natürlich müsste es richtig $vorname="martin"; heißen

also weiß irgendwer von euch woran das liegen kann?
____________________________________
Dank Computern können wir Probleme lösen die es vorher nicht gegeben hat!

---

Nur ein Genie beherrscht das Chaos
The_Beax ist offline   Mit Zitat antworten
Alt 23.07.2001, 16:28   #5
helios
Veteran
 
Registriert seit: 21.06.2001
Beiträge: 343


helios eine Nachricht über ICQ schicken
Standard

Trotzdem, der Fehler deutet ganz darauf hin, dass MySQL Martin nicht als Stringkonstante erkennt und daher annimmt, dass es ein Feldname ist! Wenn der Fehler nicht an der ersten Zuweisung liegt dann, eben an der zweiten.

Was der MySQL-Parser zu sehen bekommt ist offensichtlich das Command:
INSERT INTO mannschaft (Vorname) VALUES(Martin)
heissen müsste es:
INSERT INTO mannschaft (Vorname) VALUES("Martin")

Wie gesagt ich kenne PHP nicht u. weiss daher nicht wie es die Variablenersetzung vornimmt. Vielleicht geht es wenn du in der zweiten Zuweisung einfache Hochkommas beim Variablennamen einsetzt:
$sql = "INSERT INTO mannschaft (Vorname) VALUES('$vorname')";
____________________________________
religion is a virus from outer space
helios ist offline   Mit Zitat antworten
Alt 23.07.2001, 18:17   #6
The_Beax
Senior Member
 
Registriert seit: 25.02.2001
Alter: 39
Beiträge: 145


The_Beax eine Nachricht über ICQ schicken
Standard

ich mach das so das ich anzeige was in die datenbank eingefügt wurde und da schreibe ich:

echo "Vorname: $vorname
\n";

und es wird

Vorname: Martin

angezeigt also kanns an dem auch nicht liegen oder? aber ich probiers einmal
____________________________________
Dank Computern können wir Probleme lösen die es vorher nicht gegeben hat!

---

Nur ein Genie beherrscht das Chaos
The_Beax ist offline   Mit Zitat antworten
Alt 23.07.2001, 21:31   #7
Spyclop
Jr. Member
 
Registriert seit: 26.11.2000
Beiträge: 54


Standard

hi,
probiers mal mit:
$sql = "INSERT INTO mannschaft (Vorname) VALUES('".$vorname."')";

des problem ist, dass in sql strings in ' gesetzt werden müssen.

greetz, spy
Spyclop ist offline   Mit Zitat antworten
Alt 23.07.2001, 21:51   #8
rhapsodist
Veteran
 
Registriert seit: 11.11.2000
Beiträge: 391


Standard

wie noo1sda schon richtig geschrieben hat:

$sql = "INSERT INTO mannschaft (Vorname) VALUES ('$vorname')";

müsste doch funzen, oder?
____________________________________
\"Es ist ein Jammer, dass die Dummköpfe so selbstsicher sind und die Klugen so voller Zweifel.\" Bertrand Russell
rhapsodist ist offline   Mit Zitat antworten
Alt 24.07.2001, 20:24   #9
The_Beax
Senior Member
 
Registriert seit: 25.02.2001
Alter: 39
Beiträge: 145


The_Beax eine Nachricht über ICQ schicken
Standard

ja funktioniert vielen dank an alle
____________________________________
Dank Computern können wir Probleme lösen die es vorher nicht gegeben hat!

---

Nur ein Genie beherrscht das Chaos
The_Beax ist offline   Mit Zitat antworten
Alt 25.07.2001, 11:46   #10
nukia
Elite
 
Registriert seit: 24.01.2001
Alter: 49
Beiträge: 1.017


nukia eine Nachricht über ICQ schicken
Standard

gibts wo ein e-book für php und mySQL zu saugen?
____________________________________
Der Computer ist die Lösung vieler Probleme, die wir ohne Computer gar nicht hätten.
Klaus-Peter Schreiner (*1930) deutscher Satiriker und Kabarettautor
nukia ist offline   Mit Zitat antworten
Antwort


Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
 

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.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.

Gehe zu


Alle Zeitangaben in WEZ +2. Es ist jetzt 09:30 Uhr.


Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Forum SEO by Zoints
© 2009 FSL Verlag