Anzeige

Variable in Wert von Variable schreiben

Variable in Wert von Variable schreiben | PSD-Tutorials.de

Erstellt von GeneralFabi, 22.12.2007.

  1. GeneralFabi

    GeneralFabi Nicht mehr ganz neu hier

    Dabei seit:
    06.03.2007
    Beiträge:
    93
    Geschlecht:
    männlich
    Ort:
    Neunkirchen (Saar)
    Software:
    Adobe Creative Suite 5 Design Premium
    Kameratyp:
    Panasonic Lumix DMC-FZ5
    Variable in Wert von Variable schreiben
    Hi Community,
    ich will ein Redaktionssystem mit PHP schreiben und bin dabei auf folgendes Problem gestoßen:

    Wenn ich versuche, eine vorher definierte Variable mit einem zusätzlichen String in den Wert einer anderen Variablen zu schreiben, erhalte ich immer die Warnung:

    Parse error: parse error, unexpected T_VARIABLE in /var/www/web64/html/expression/eweb-sn/system/core/config.php on line 10

    Mein PHP-Code:
    PHP:
    1.  
    2. <?php
    3.    
    4.     $db_server     = "localhost";          // Adresse des MySQL-Servers | meistens: localhost
    5.     $db_database   = "usr_web64_3";        // Name der Datenbank, auf der Element Web SharedNews basieren werden soll
    6.     $db_account    = "web64";              // Benutzername der MySQL-Datenbank
    7.     $db_password   = "welcome";            // Passwort der MySQL-Datenbank
    8.    
    9.    $sql_prefix = "ewebsn_";
    10.  
    11.     $posts_sql     = .$sql_prefix."posts";       // Name der Tabelle für Beiträge
    12.     $icons_sql     = .$sql_prefix."icons";       // Name der Tabelle für Beitragsymbole
    13.     $comments_sql  = .$sql_prefix."comments";    // Name der Tabelle für Kommentare
    14.     $users_sql     = .$sql_prefix."users";       // Name der Tabelle für Benutzerkonten
    15.     $designs_sql   = .$sql_prefix."designs";     // Name der Tabelle für Designs
    16.     $config_sql    = .$sql_prefix."config";      // Name der Tabelle für Konfiguration
    17.     $dummy_sql     = .$sql_prefix."dummies";     // Name der Tabelle für Dummies
    18.    
    19.     extract($_REQUEST,EXTR_SKIP);
    20.    
    21. ?>
    22.  
     
    #1      
  2. outofleet

    outofleet Dummer Mensch

    Dabei seit:
    13.12.2007
    Beiträge:
    74
    Geschlecht:
    männlich
    Variable in Wert von Variable schreiben
    AW: Variable in Wert von Variable schreiben

    Ich habe es jetzt nicht ausprobiert, aber ich vermute es liegt an den Punkten ganz am Anfang.

    $posts_sql = .$sql_prefix."posts";
     
    #2      
  3. Foto-Delight

    Foto-Delight kleines Helferlein

    Dabei seit:
    21.11.2006
    Beiträge:
    542
    Geschlecht:
    männlich
    Software:
    Cs3, Terragen
    Kameratyp:
    D40x
    Variable in Wert von Variable schreiben
    AW: Variable in Wert von Variable schreiben

    Ja auch wenn unser Fragensteller noch nicht geantwortet hat. Meiner Meinung nach ist das mit den Punkten davor flasch.

    -> Einfach alle Punkte davor wegmachen und dann klappt es
     
    #3      
  4. saila

    saila Moderatorle

    Dabei seit:
    21.06.2006
    Beiträge:
    2.239
    Geschlecht:
    männlich
    Ort:
    50°48'23.69" N 7°14'22.19" O
    Software:
    Eclipse, PHP5 OO, MySQL5, CSS(auch Barrierefrei), JS, Symfony
    Variable in Wert von Variable schreiben
    AW: Variable in Wert von Variable schreiben

    Das was du vor hast geht auch nicht auf deine Weise sondern:
    PHP:
    1.  
    2. <?php
    3.  $posts_sql     .= $sql_prefix."posts";
    4. ?>
    5.  
    Der Punkt muss vor das = Zeichen. Auf diese Weise gibst du der VAR den weiteren oder ersten Wert
    $sql_prefix."posts" hinzu.

    </span></span>
     
    #4      
  5. CIX88

    CIX88 Aktives Mitglied

    Dabei seit:
    06.04.2006
    Beiträge:
    814
    Geschlecht:
    männlich
    Ort:
    GR
    Variable in Wert von Variable schreiben
    AW: Variable in Wert von Variable schreiben

    > $posts_sql .= $sql_prefix."posts";

    Hääääääää ???
    Ich würde ja die Punkte ganz rausnhemen, aber najaaaaaaaa.

    > extract($_REQUEST,EXTR_SKIP);
    Nicht mehr lange und extract wird entlich aus PHP rausgenommen :)
     
    #5      
  6. blackout

    blackout Schaf im Wolfspelz

    Dabei seit:
    12.09.2005
    Beiträge:
    3.359
    Geschlecht:
    männlich
    Ort:
    Würzburg
    Kameratyp:
    Rollei 35 S
    Variable in Wert von Variable schreiben
    AW: Variable in Wert von Variable schreiben

    Extract hör ich grad zum ersten Mal, und es kommt mir irgendwie höchst seltsam vor. Sozusagen ne Funktion um REGISTER_GLOBALS intern anzuschalten oder wie :s
     
    #6      
  7. saila

    saila Moderatorle

    Dabei seit:
    21.06.2006
    Beiträge:
    2.239
    Geschlecht:
    männlich
    Ort:
    50°48'23.69" N 7°14'22.19" O
    Software:
    Eclipse, PHP5 OO, MySQL5, CSS(auch Barrierefrei), JS, Symfony
    Variable in Wert von Variable schreiben
    AW: Variable in Wert von Variable schreiben

    Naja, nachdenken muss ich da nicht. Er will nichts weiter im Grunde tun als über den Operator rechts (.=) z.B. dem Ausdruck oder Variablen $posts_sql einen weiteen Ausdruck hinzuzuüfgen. Was er nicht müsste - aber um seinen Fehler zu beheben wäre das die Lösung, da er den Punkt ja vorgegeben hat.
    Ergo will er was damit bezwecken.

    Witzlos wird das ganze allerdings durch extract() - was im übrigen auch noch falsch gefüllt wird. Weil innerhalb extract z.B. ein prefix ergänzt würde - sofern er ein Array in extract übergeben würde.

    Korrekt würde das ganze so aussehen:
    PHP:
    1.  
    2. <?php
    3. $array = array(
    4.         "posts",
    5.         "icons",
    6.         "comments",
    7.         "users",
    8.         "designs",
    9.         "config",
    10.         "dummies"
    11.         );
    12.    
    13. extract($array,  EXTR_PREFIX_ALL, $sql_prefix);
    14. // oder
    15. extract($array,  EXTR_PREFIX_ALL);
    16.  
    17. // übrigens würde EXTR_SKIP überhaupt keinen Sinn ergeben,
    18. // wenn es sich um sql-Tabellennamen handelt!!
    19. ?>
    20.  
    Aufgrund dieser Tatsache und der Ausgangssituation würde ich vielmehr annehmen, dass @GeneralFabi wohl vielmehr eine DB-Anfrage händeln möchte oder zumindest die Tabellennamen. extract() selbst jedoch legt Symboltabelle an oder ergänzt in der existierenden Symboltabelle die Werte.

    Mal im Manual nachlesen - und dann feststellen, das man diese Funktion im Grunde nicht brauch.

    Natürlich wäre letztlich einfach das entfernen der Punkte nach dem = Zeichen oder dem sogenannten Operator auch eine Lösung. Ob es letztlich darum geht kann nur GeneralFabi wissen :)

    In der Erläuterung ist übrigens ein Fehler enthalten ;)
     
    #7      
  8. saila

    saila Moderatorle

    Dabei seit:
    21.06.2006
    Beiträge:
    2.239
    Geschlecht:
    männlich
    Ort:
    50°48'23.69" N 7°14'22.19" O
    Software:
    Eclipse, PHP5 OO, MySQL5, CSS(auch Barrierefrei), JS, Symfony
    Variable in Wert von Variable schreiben
    AW: Variable in Wert von Variable schreiben

    wird diesen in der Symboltabelle hinzugefügt - und mit den entsprechenden extract_type behandelt.
     
    #8      
  9. saila

    saila Moderatorle

    Dabei seit:
    21.06.2006
    Beiträge:
    2.239
    Geschlecht:
    männlich
    Ort:
    50°48'23.69" N 7°14'22.19" O
    Software:
    Eclipse, PHP5 OO, MySQL5, CSS(auch Barrierefrei), JS, Symfony
    Variable in Wert von Variable schreiben
    AW: Variable in Wert von Variable schreiben

    Hi DocUhu,

    das ist absolut korrekt. $_REQUEST wird an extract() übergeben - was natürlich mehr als "verrückt" ist. Dazu verweise ich mal auf das Manual (hier genau nachlesen und ggf. mal testen über mehrere Seiten). Insbesondere was extract im Grunde macht - bedeutet auch, ich kann global Vars laut type die vorgegeben sind ändern. Habe es zwar selbst noch nicht probiert - weil keine Lust auf Stress mit php, aber letztlich stele ich mir das vor.

    Mit dem sql-Zeugs hat es nichts zu tun - könnte aber damit zu tun haben. Er/Sie will ja nur Variablen festlegen, welche die Tabellennamen beinhalten. Mehr eigentl. nicht und das auf eine momentan umständliche Weise.
     
    #9      
  10. gp812

    gp812 Newbster

    Dabei seit:
    23.12.2007
    Beiträge:
    278
    Geschlecht:
    männlich
    Ort:
    Stuttgart
    Software:
    CS3, EditPlus
    Variable in Wert von Variable schreiben
    AW: Variable in Wert von Variable schreiben

    PHP:
    1.  
    2. <?php
    3.  $posts_sql     .= $sql_prefix."posts";
    4. ?>
    5.  
    Den Punkt vor dem Gleich-Zeichen am besten weg, da es in diesem Fall eine Warnung kommt, die Variable sei nicht deklariert.
     
    #10      
  11. saila

    saila Moderatorle

    Dabei seit:
    21.06.2006
    Beiträge:
    2.239
    Geschlecht:
    männlich
    Ort:
    50°48'23.69" N 7°14'22.19" O
    Software:
    Eclipse, PHP5 OO, MySQL5, CSS(auch Barrierefrei), JS, Symfony
    Variable in Wert von Variable schreiben
    AW: Variable in Wert von Variable schreiben

    Ist ja irre :danke:

     
    #11      
Seobility SEO Tool
x
×
×