• Jetzt anmelden. Es dauert nur 2 Minuten und ist kostenlos!

Spalte ansprechen per Variable

befubo

Mitglied
Ich nochmal ^^

PHP:
<?php
$aendern = "UPDATE huhu Set tabelle = '$units_neu' WHERE user = '$user'";
$update = mysql_query($aendern);
?>

so; ich möcht jetzt aber anstatt einfach nur "tabelle" die Spalte mit ner Variable ansprechen. Hab dann das hier versucht:

PHP:
$aendern = "UPDATE huhu Set '$i' = '$units_neu' WHERE user = '$user'";
$update = mysql_query($aendern);

aber iwie geht das nicht. Vorschläge? ^^
thx und mfg

befubo
 
Werbung:
Tabellen- und Spaltennamen stehen nicht in Anführungszeichen, sondern in Backticks (`).
Code:
[COLOR=Black]UPDATE `huhu` SET `$i` = '$units_neu' WHERE `user` = '$user';[/COLOR]
 
das ist sowas von egal ^^.

PHP:
<?php
$aendern = "UPDATE huhu Set '".$i."' = '".$units_neu."' WHERE user = '".$user."' " ;
?>

damit alle möglichkeiten durch sind...

Nils aka XraYSoLo
 
Werbung:
Ich hab's jetzt extra nochmal ausprobiert. Man kann die Backticks bei nicht-Keywords natürlich weglassen, aber mit Hochkommata geht es definitiv nicht :p
 
also wenn du meinen vorschlag von oben anzweifelst, muss ich dir leider sagen, dass es nicht stimmt. diese methode verwende ich GRUNDSÄTZLICH für meine abfragen UND sie FUNKTIONIEREN ^^.

Nils aka XraYSoLo
 
Bei mir aber nicht ^^
Code:
mysql> UPDATE foo.bar SET [B]feld1[/B] = 'foo1' WHERE feld2 = 'bar';
Query OK, 1 row affected (0.01 sec)
Rows matched: 1  Changed: 1  Warnings: 0

mysql> UPDATE foo.bar SET [B]'feld1'[/B] = 'foo1' WHERE feld2 = 'bar';
ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ''feld1' = 'foo1' WHERE feld2 = 'bar'' at line 1
Bist du sicher, dass du die Spaltennamen (wie hier $i) in '' packst?
 
Werbung:
stimmt, die spalten nicht, da mach' ich gar nichts drum...mein fehler, sorry.

Nils aka XraYSoLo
 
Also ich mache es grundsätzlich so, wie befubo im Startpost geschrieben hat. Das sollte so problemlos klappen. Ich denke deswegen nicht, dass es an der falschen Zeichensetzung liegt.
Was passiert denn genau bei dir? Wird eine Fehlermeldung mit mysql_qeeor() ausgegeben?
Nochmal zur Überprüfung: "huhu" heißt deine Tabelle und in "$i" steckt ein Spaltenname dieser Tabelle?

MfG Icy
 
Hey zusammen

Bei mir hats so funktioniert jetzt:

PHP:
<?php
$aendern = "UPDATE huhu Set `$i` = '$units_new' WHERE user = '$user'";
$update = mysql_query($aendern);
?>

ich habe in einer Tabelle (huhu) verschiedene Spalten, welche ich durch (id) aufrufen kann. BcFs Lösung hat mir sofort geholfen. ;)

Danke aber auch an die anderen, die mir helfen wollten ;)
mfg
befubo
 
Werbung:
Zurück
Oben