Datenbank Abfrage mit Variablen

  • PHP

  • Harderer
  • 1345 Aufrufe 5 Antworten

Diese Seite verwendet Cookies. Durch die Nutzung unserer Seite erklären Sie sich damit einverstanden, dass wir Cookies setzen. Weitere Informationen

  • Datenbank Abfrage mit Variablen

    Heyho,

    ich habe hier gerade ein Problem.. :löl:

    Also ich versuche eine Datenbankabfrage zu machen. Diese ist innerhalb einer Funktion, die ich vorher geschrieben habe, um hunderte Zeilen unnötigen Codetext zu umgehen. Alles klappt wunderbar, nur diese Abfrage funktioniert nicht so, wie ichs gerne hätte^^

    Ich versuche, eine bestimmte Zeit zu erfragen, je nachdem, welche ich denn brauche. Die die ich brauche ist in der Variable $trick_time enthalten. zB "time_29" .
    Nun eine Abfrage, wie ich sie immer mache:

    PHP-Quellcode

    1. $abfrage = "SELECT $trick_time FROM skilltime WHERE name = '$username'";
    2. $ergebnis = mysql_query($abfrage);
    3. while($row = mysql_fetch_object($ergebnis))
    4. {
    5. $trickname_zielwert_log = "$row->$trick_time"; //Hier tritt der Fehler auf!


    Mein netter Browser antwortet mir dann:
    "Catchable fatal error: Object of class stdClass could not be converted to string in /mnt/webspace/01/39901/rollgame.de/trick_funktion.php on line 13"

    Die Variable $abfrage akzeptiert mein $trick_time noch nur in der while-Schleife protestiert er..

    Wenn ich in der Schleife die Variable entferne und sie ohne Variable teste, läuft alles wunderbar, nur brauche ich genau diesen Vorgang, sonst entsteht wieder unnütz viel Quelltext...

    Weiß mir da jemand einen Rat??

    mfg Harderer
  • Hey
    Habs mal probiert, geht aber auch nich...
    der würde ja theoretisch nach dem wert in der "trick_time" Spalte suchen, aber die Spalte hat ja den Namen in der $trick_time Variable. Die Werte heißen alle time_1 - time_34 ..
    mfg Harderer
  • Ah, okay - so ist das gedacht.
    Dann würde ich lieber zu PHP: mysql_fetch_assoc - Manual greifen und dann

    Quellcode

    1. $trickname_zielwert_log = $row[$trick_time];

    Ansonsten müsstest du nämlich mit eval arbeiten

    Quellcode

    1. eval('$trickname_zielwert_log = $row->'.$trick_time.';');


    Gruß
    Broken Sword
    Auf dem Abstellgleis sah man ihn liegen,
    Auf dem Abstellgleis zwischen Schwelle und Gestein,
    Auf dem Abstellgleis im strömenden Regen,
    Auf dem Abstellgleis allein.
  • Juhu! :bing:

    die erste Variante mit mysql_fetch_assoc hatte ich auch schon ausprobiert, ging aber erst auch nicht.
    Habs jetzt nochmal probiert um sicherzugehen, dass es so wirklich nicht ging und jetzt gehts :D Hatte davor wohl einen Fehler eingebaut und habs als "auch-nicht-möglich" abgestuft ;)
    Endlich kann ich weitermachen.

    Dickes thx dafür!

    Gruß Harderer