tutorials.de Buch-Aktion 02/2012
ERLEDIGT
JA
ANTWORTEN
1
ZUGRIFFE
241
EMPFEHLEN
  • An Twitter übertragen
  • An Facebook übertragen
AUF DIESES THEMA
ANTWORTEN
  1. #1
    WebRabbit WebRabbit ist offline Mitglied Silber
    Registriert seit
    Aug 2006
    Beiträge
    52
    Hallo, ich benötige wiedereinmal euren Expertenrat...
    Ich habe folgendes Problem:
    Ich möchte ein Menü aus einer Datenbank erstellen, dazu habe ich den Link, zugriffsrecht und eine Variable in der Datenbank gespeichert.
    Diese Variable wird nun ausgelesen und soll an Hand einer Sprachdatei gegen den Menünamen in der entsprechenden (vorher gesetzten) Sprache ersetzt werden.
    PHP-Code:
    $menu_res = @mysql_query("SELECT * FROM menu WHERE $userright='1'");
                         while(
    $menu_row = @mysql_fetch_assoc($menu_res)){
                              
    $content.="                          
                              <li>                          
                                  <a href='$_SERVER[PHP_SELF]?$menu_row[link]'>"
    .$menu_row['menuname']."<a>
                              </li>"
    ;                              
                              } 
    Mein Problem ist, das die Variable scheinbar nicht als Variable erkannt wird. Auch der Versuch Sie als variable Variabel (
    PHP-Code:
    ${$menu_row[menuname]} 
    ) anzusprechen hat nicht funktioniert. Selbst wenn ich den Menünamen vorher serialisiere und abspeicher, bekomme ich eine leere Ausgabe wenn ich die Variable mit unserialize() wieder zurücksetze. Liegt es vielleicht daran, dass ich keine direkte Ausgabe mache sondern alles in $content speicher und dann erst gesamt ausgebe? Anmerkung: Die Variable $content wurde natürlcih vorher ordnungsgemäß angelegt und kann daher an dieser Stelle auch mit dem .Operator mit weiteren Daten gefüttert werden.

    Vielen Dank für eure Mühe!
     

  2. #2
    WebRabbit WebRabbit ist offline Mitglied Silber
    Registriert seit
    Aug 2006
    Beiträge
    52
    So ich glaube es hat sich erledigt. eval() hat die Antwort gegeben.
    PHP-Code:
     $menu_res = @mysql_query("SELECT * FROM menu WHERE $userright='1'");
                         while(
    $menu_row = @mysql_fetch_assoc($menu_res)){                           
                              
    $content.="                          
                              <li>                          
                                 <a href='$_SERVER[PHP_SELF]?$menu_row[link]'>"
    ; eval("\$menu_row[menuname] = \"$menu_row[menuname]\";");$content.=$menu_row['menuname']; $content.="<a>
                              </li>"
    ;
                              } 
    Vielleicht hat ja noch jemand ne andere Idee oder falls es Sicherheitsbedenken bezüglich eval gibt.. ich bin dankbar für jeden Kommentar oder Hinweis.
    Evtl. gibt es ja auch andere Lösungen?
     

Ähnliche Themen

  1. Statische Variablen in Struts-Tags nutzen
    Von 7bkahnt im Forum Java
    Antworten: 0
    Letzter Beitrag: 22.06.10, 10:44
  2. Variablen dateiübergreifend nutzen
    Von schlumsch im Forum PHP
    Antworten: 2
    Letzter Beitrag: 10.02.10, 11:41
  3. Externe Variablen nutzen
    Von SornTwo im Forum PHP
    Antworten: 2
    Letzter Beitrag: 27.09.07, 20:54
  4. Variablen auch ausserhalb der Schleifen nutzen?
    Von eliasb im Forum .NET Archiv
    Antworten: 14
    Letzter Beitrag: 21.04.05, 19:12
  5. Variablen programmweit nutzen
    Von zed im Forum Delphi, Kylix, Pascal
    Antworten: 2
    Letzter Beitrag: 25.02.02, 00:40

Stichworte