Taal laden met info uit database en php bestand

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Enrique Gervaso

Enrique Gervaso

19/07/2013 11:28:51
Quote Anchor link
In mijn database heb ik de volgende regel:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
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 (php)
PHP script in nieuw venster Selecteer het PHP script
1
//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 (php)
PHP script in nieuw venster Selecteer het PHP script
1
$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?
 
PHP hulp

PHP hulp

18/05/2024 19:10:58
 
Chris PHP

Chris PHP

19/07/2013 11:36:55
Quote Anchor link
Volgens mij klopt het niet wat je doet.

Je hebt in een PHP bestand staan.
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
<?php
//Menu name (unique id)$qE352n5S0k="Click mission";
?>

Alles in PHP met een // ervoor is niets meer als een comment, hier doet de php engine dus helemaal niets mee.
Als je dus in je DATABASE waar je de unique id's opslaat dan moet je daar ook de juiste name uilezen wat bij het id hoort.

Jou id $qE352n5S0k heeft de name game_mission en niet Click mission. Als je dus een query doet die je nu doet en je doet het volgende
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
<?php
while($list = mysql_fetch_assoc($select))
{
$menuname = $list[name];
 echo $menuname;
}

?>

Nu zal er de naam komen te staan ipv het id, aangezien je om het uniqueid vraagt krijg je ook alleen het id.
Gewijzigd op 19/07/2013 11:37:59 door Chris PHP
 
Enrique Gervaso

Enrique Gervaso

19/07/2013 11:39:34
Quote Anchor link
Hoi Chris, het // is inderdaad incorrect. Dit moet worden verwijderd. Maar volgens mij ben ik ook 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? De bedoeling is dus dat het script kijkt naar de id's in de database en vervolgens in het taalbestand controleert of dit id overeenkomt met de taal welke getoond moet worden. Vervolgens moet de juiste taal / woord worden getoond.
Gewijzigd op 19/07/2013 11:40:42 door Enrique Gervaso
 
Chris PHP

Chris PHP

19/07/2013 11:55:24
Quote Anchor link
Ja dat is toch vrij simpel.

Je hebt in je tabel voor de talen het volgende staan.

id = qE352n5S0k name = begin mission
id = wqe745397s name = begin missie

Ik neem aan dat qE352n5S0k voor 1 taal staat zoals engels? en dat dan wqe745397s voor nederlands staat.

In het script waar jij bepaald welke taal het wordt gebruik je dan toch je juiste id?

Maar is het niet makkelijker om taal scripts te maken en aan de hand van de taal gewoon het juiste script includen?

Dus bijvoorbeeld nedelands.php
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
<?php
$qE352n5S0k
= 'Begin missie';
$wqe745397s = 'Volgende';
//etc
?>


engels.php
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
<?php
$qE352n5S0k
= 'Begin mission';
$wqe745397s = 'Next';
//etc
?>
 
Enrique Gervaso

Enrique Gervaso

19/07/2013 12:02:39
Quote Anchor link
Nou niet helemaal. Ik heb in mijn config dit staan

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
//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 (php)
PHP script in nieuw venster Selecteer het PHP script
1
$qE352n5S0k="Click mission";


NL
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
$qE352n5S0k="Klik missie";


in mijn database staat
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
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 (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
      $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.
 
Chris PHP

Chris PHP

19/07/2013 12:46:58
Quote Anchor link
Omdat je het uniqueid in de while loop opvraagd, daarom zei ik in mijn vorige post al, vraag de name op in je while loop.
 



Overzicht Reageren

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.