ChrisB: Anführungzeichen, Hochkomma, ... ???

Beitrag lesen

Hi,

$sql="SELECT frage, fid FROM fragen WHERE hkid=".$hkid;
funktioniert *nach stundenlangem rumgefummel!

$sql="SELECT frage, fid FROM fragen WHERE hkid=".$hkid."and ukid=".$ukid;
funktioniert nicht! *grrrrr!!!

Kann mir bitte mal jemand sagen

a) wo welches Anführungszeichen, Punkt oder was auch immer im obigen fehlt/falsch gesetzt ist?

Kannst du uns bitte sagen, warum du nicht mal ansatzweise eigenes sinnvolles Debugging betreibst, bevor du fragst?

Lass dir die generierte Query zur Kontrolle ausgeben.

Und frage im Zweifelsfalle die Datenbank, welches Problem sie mit deiner Query hat, anstatt nur achselzuckend „funzt nich” zu konstatieren - dafür gibt es mysql_error().

b) wie die Regeln für derartiges lauten? Wann Anführungszeichen? Wann Hochkomma? Wann einen Punkt vor die Variable usw.?

Das kannst du in den Handbüchern der verwendeten Sprachen/Techniken (hier also in erster Linie PHP und MySQL) nachlesen.
Kenntnis der Syntax gehört zum *absoluten* Grundlagenwissen.

(Und je nachdem, wo die Werte, die du in deine Queries einfügst, her kommen, möchtest du dich ggf. auch noch zum Stichwort SQL Injection informieren.)

MfG ChrisB

--
“Whoever best describes the problem is the person most likely to solve the problem.” [Dan Roam]