juiste taal laden (database en php bestand)

  • In mijn database heb ik de volgende regel:


    Code
    mysql_query("INSERT INTO `module`(`uniqueid`,`name`,`link`,`menu`,`active`) values('qE352n5S0k','game_mission','promotion/gamemissie','1','1')");


    In een php bestand waar ik de taalbestanden oproep heb ik

    Code
    //Menu name (unique id)$qE352n5S0k="Click mission";


    In mijn menu wil ik nou de juiste taal tonen. Het taalbestand moet overeen komen met het unique ID.


    Het probleem is nou dat als ik bv. dit doen:


    Code
    $select = mysql_query("SELECT * FROM `module` ORDER BY  (`menu`) DESC LIMIT 0,999");      while($list = mysql_fetch_assoc($select))    {    $menuid                = $list[uniqueid];


    en ik roep dit aan: $menuid


    dan krijg ik het unique ID te zien (qE352n5S0k) maar ik wil hier juist "Click mission" getoond hebben.


    Iemand enig idee hoe ik dit voor elkaar kan krijgen?

  • Guest, wil je besparen op je domeinnamen? (ad)
  • PHP
    Ingekort: while($list = mysql_fetch_assoc($select))    {    $menuid    = $list[uniqueid];


    Je roept gewoon unique id aan dus het is logisch dat dat getoont word, vind het ook een raare opbouw voor een taal script.


    PHP
    $list[uniqueid] -> $qE352n5S0k  // ?
  • Hoi Tredgy , dank je wel voor je snelle reactie.


    Volgens mij ben ik niet helemaal duidelijk geweest. Ik heb verschillende scriptjes, deze hebben allemaal een uniek id. Het menuid is dus niet altijd gelijk aan qE352n5S0k.


    Wat ik dus probeer is om een lijst te maken met alle scripts welke in de database staan (dit zijn de verschillende uniqueid's). Vervolgens moeten deze unieke id's getoond worden met de juiste taal.


    Weet je toevallig ook hoe dit moet?

  • Dan klopt mijn 1e reactie nog steeds, je roept het verkeerd aan maar bedoelde wat anders.


    Gebruik sessions in PHP standaard met NL/EN erin zet er een check op en maak de files aan. Als de session NL (standaard ingesteld) word je NL en anders EN of evtueel andere taal.


    Nog even een uitgebreide uitleg:


    stap 1 maak de map aan genaamd: Lang


    stap 1.1 maak een english.php en dutch.php


    stap 1.2 zet het volgende erin in beiden:


    PHP
    Engels:
    <?php
    // TEST
    $_STR[Menu0]     = "ENGLISH 1";
    $_STR[Menu1]     = "ENGLISH 1";
    ?>


    PHP
    Dutch:
    <?php
    // TEST
    $_STR[Menu0]     = "DUTCH 1";
    $_STR[Menu1]     = "DUTCH 1";
    ?>



    stap 2 zet dit in je index


    PHP
    $langfile = "lang/{$_CONFIG[Language]}.php";
    include $langfile;
    
    
    Verder op:
    
    
    <?php echo $_STR[menu0]; ?>
    <?php echo $_STR[menu1]; ?>


    stap 3 Zet dit in je config


    PHP
    $_CONFIG[Language]  = "english";


    Je moet wel verder werken op de laatste variable die ik plaatsten, kan niet alles voor je voorkouwen natuurlijk maar moet vanaf hier geen probleem zijn.


    Gebruik .ini files zoals meneer hieronder zij i.p.v .php.

  • Hoi Tredgy, de taal bestanden heb ik al reeds gemaakt. Wat ik nu heb is:


    in mijn config dit staan


    Code
    //Language selection
    	include("language/" . $gamelanguage .".php");


    Afhankelijk van de instellingen bij gamelanguage wordt de EN of NL taal aangeroepen.


    In de NL.php en EN.php bestanden staat:


    engels

    Code
    $qE352n5S0k="Click mission";


    NL

    Code
    $qE352n5S0k="Klik missie";


    in mijn database staat

    SQL
    INSERT INTO `module` (`uniqueid`, `name`, `link`, `menu`, `active`) VALUES
    ('6456454', 'iets', NULL, '2', '0'),
    ('qE352n5S0k', 'game_mission', 'promotion/gamemissie', '1', '1');


    als ik nu dus dit oproep op deze manier

    Code
    $select = mysql_query("SELECT * FROM `module` ORDER BY  (`menu`) DESC LIMIT 0,999");
          while($list = mysql_fetch_assoc($select))
    
    
        {
    
    
        $menuid                = $list[uniqueid];


    Zou $menuid de juiste taal moeten tonen, maar ik blijf dus het ID krijgen ipv de taal.

  • Nee natuurlijk niet je roept $list[uniqueid] <--- UNIQUEID aan hoe kan dat een output geven wat de taal moet zijn?


    EDIT:


    Waarom voer je uberhaupt een query uit als alles lokaal kan, je roept een query aan voor niks eigenlijk.

  • Daarnaast had je ook dat als je de code uit je DB haalde in de loop het volgende kunnen zetten:


    Code
    $text = ${$list['uniqueid']};

    Kast: HAF922 | CPU: I7-930 @ 4.0GHz | CPU Cooler: Noctua NH-D14 | HDD0: Crucial M4 128GB, HDD1: Kingston SSD 64GB, HDD2/3: WD Black & Green 1TB, HDD4: Seagate 1.5TB | Mem: Kingston HyperX 12GB @ 1600MHz | Graphics: Crossfire HD6970 | Res: 5760x1080

Participate now!

Heb je nog geen account? Registreer je nu en word deel van onze community!