Spalte aus Datenbank auslesen

Wir sammeln alle Infos der Bonusepisode von Pokémon Karmesin und Purpur für euch!

Zu der Infoseite von „Die Mo-Mo-Manie“
  • Hallo,


    ich habe eine Frage an euch, ich habe ein Problem etwas aus einer DB auzulesen.
    Und zwar sieht es in meiner DB so aus:


    [Blockierte Grafik: http://i.imgur.com/UEKELrN.png]



    Ich möchte nun zwei Arrays haben, in denen der Inhalt steht, hier ein Beispiel:


    $search_t = array('%YEAR%','%YEAR2%','%TIME%','%DATE%','%DATE2%');
    $replace_t = array('$year','$year2','$time','$date','$date2');




    Das ist meine aktuelle Abfrage:
    [PHP]$query = "SELECT search_t FROM nc1_template_tags";
    $result = $ncdb->query($query);
    $search_t = mysqli_fetch_array($result, MYSQL_ASSOC);


    $query = "SELECT replace_t FROM nc1_template_tags";
    $result = $ncdb->query($query);
    $replace_t = mysqli_fetch_array($result, MYSQL_ASSOC);[/PHP]



    Wenn ich das ganze dann wie folgt zum testen ausgebe:


    [PHP]foreach ($search_t as $value) {
    echo $value . "<br />";
    }


    foreach ($replace_t as $value) {
    echo $value . "<br />";
    }[/PHP]


    Wird das angezeigt:


    %YEAR%
    %YEAR%
    $year
    $year


    Hoffe ihr könnt mir helfen :)
    LG

  • Ja hast Recht, war gestern schon ziemlich spät und ich konnte nicht mehr wirklich klar denken^^
    Habe das ganze nun mal überarbeitet und es funktioniert auch:


    [PHP]$search_t = array();
    $replace_t = array();
    $query = "SELECT search_t, replace_t FROM nc1_template_tags";
    $result = $ncdb->query($query);
    while ($value = mysqli_fetch_object($result)) {
    $search_t[] = $value->search_t;
    $replace_t[] = $value->replace_t;
    }[/PHP]



    So, nun steht das ganze so in den Arrays:
    $search_t = array('%YEAR%','%YEAR2%','%TIME%','%DATE%','%DATE2%');
    $replace_t = array('$year','$year2','$time','$date','$date2');


    Nun weiß ich aber wirklich nicht weiter, bei den Variablen sollen nämlich keine Hochkommas oder Anführungszeichen stehen :)
    Das ganze sollte so aussehen:
    $search_t = array('%YEAR%','%YEAR2%','%TIME%','%DATE%','%DATE2%');
    $replace_t = array($year,$year2,$time,$date,$date2);


    LG

  • Das kommt in eine Configdatei, welche später in eine andere eingebunden wird.
    So, sagen wir mal es wird in eine index.php eingebunden, diese gibt den code einer template.php mit eval() aus.
    das Script sieht so aus:
    [PHP]eval("?> " . str_replace($search_t,$replace_t,file_get_contents('template.php')) . " <?php ");[/PHP]



    In dem Template steht dann z.B. <p>%YEAR%</p>
    Das soll dann ausgetauscht werden, und zwar gegen $year.


    Am Ende steht dann $year im Auf der Webseite, aber eigentlich sollte dann z.B. 2013 dort angezeigt werden.
    In der Configdatei steht auch noch das:
    $year = date('Y');


    LG

  • Weil ich das ja selbst machen möchte. Klar, ich kann auch so etwas nutzten, aber davon lerne ich sowas ja nicht, wie man das evtl. selber umsetzen könnte^^


    Inwiefern bringt es dir Vorteile wenn du das ganze selbst programmierst? Es hat schon Gründe warum es bereits Frameworks für so etwas gibt, damit man das Rad nicht neu erfindet. Es bringt dir später viel mehr, wenn du weißt wie du entsprechende Frameworks verwendest, eben weil diese bereits eine (mehr oder weniger gute) Lösung gefunden haben.