login  Naam:   Wachtwoord: 
Registreer je!
 Forum

niks gekozen dan engels!

Offline roy - 09/03/2005 20:29 (laatste wijziging 09/03/2005 20:29)
Avatar van royPHP gevorderde hallo,

als er geen taal is gekozen (dus bij het binnenkomen van de pagina) moet de taal engels (EN) zijn.

hoe werk ik dit script uit zodat het werkt?
  1. <?php
  2. include($_GET['taal'] . '.php');
  3. ?>


Wanneer hij een variabele heeft ontvangen werkt het goed, maar als er niks is geselecteerd dan moet taal=EN

Groeten,
Roy

12 antwoorden

Gesponsorde links
Offline SlashDotCom - 30/11/1999 00:00
Avatar van SlashDotCom Lid Doet hij dit niet automatishrnof is dit altijd in de taal waar je leeft ofzo
Offline roy - 30/11/1999 00:00
Avatar van roy PHP gevorderde het is een engelstalige website, met daarnaast nog 4 talen.rnrnMaar hoe kan je ervoor zorgen dat als er geen variable is verstuurd de taal engels (EN) isrn
Offline remy - 30/11/1999 00:00
Avatar van remy PHP ver gevorderde met isset() rndus als er geen taal is geselecteerd, dan word engels weergeven;-)
Offline roy - 30/11/1999 00:00
Avatar van roy PHP gevorderde dat is de bedoeling ja!rnrnhoe werkt dat dan met isset()
Offline Tuinstoel - 30/11/1999 00:00
Avatar van Tuinstoel PHP expert Sjonge, enig zelfdenken vermogen wordt hier ook wel verwachtrnrn[code]rn$sLang = isset($_GET['taal'])) $_GET['taal'] 'en';rninclude $sLang.'.php';rn[code]
Offline remy - 30/11/1999 00:00 (laatste wijziging 30/11/1999 00:00)
Avatar van remy PHP ver gevorderde [code]phprnrnif(isset($_GET['taal']))of hoe je ook aan de taal komtrn{rn include(detaal.php);rn}rnelsern{rn include(engels.php);rn}rn[code]rnrnniet zo moeilijk lijkt me tochrnrn[b]edit[b] rnrnweer te laatp
Offline roy - 30/11/1999 00:00
Avatar van roy PHP gevorderde Sorry heren, ik was niet zo bekend met de isset() functiernmaar het werkt wel!
Offline prorsoft - 30/11/1999 00:00 (laatste wijziging 30/11/1999 00:00)
Avatar van prorsoft PHP gevorderde je kan beterrn[code]phprnrnif(isset($_GET['taal']) && $_GET['taal'] != )rn{rn include(detaal.php);rn}rnelsern{rn include(engels.php);rn}rn[code]rndan is de taal ook EN als er [i]pagina.phptaal=[i] wordt ingevoerd
Offline numlockrond - 30/11/1999 00:00
Avatar van numlockrond Onbekend en bij alle scripts krijg je een error als taal=sdfsd wordt ingevuld...
Offline banana - 30/11/1999 00:00
Avatar van banana Onbekend [code]rnif($_GET['taal']==turks) {rn include('turks.php');rn}rnif($_GET['taal']==nederlands) {rn include('nederlands.php');rn}rnelse { rn include('engels.php'); rn}rn[code]rndit werkt wel
Offline Maarten - 30/11/1999 00:00 (laatste wijziging 30/11/1999 00:00)
Avatar van Maarten Erelid Je kan ook met switch() werken, via file_exists, of via een array...rn[b]Switch[b]rn[code]phprnswitch($_GET['taal']) {rn case 'en' include('en.php'); break;rn case 'nl' include('nl.php'); break;rn default include('en.php');rn}rn[code]rnrn[b]Array[b][code]phprn$taal[] = nl;rn$taal[] = en;rn$taal[] = fr;rnrnif(isset($_GET['taal']) && in_array($_GET['taal'],$taal)) {rn include($_GET['taal'].'.php');rn} else {rn include('en.php');rn}rn[code]rnrn[b]file_exists[b][code]phprnif(isset($_GET['taal']) && file_exists($_GET['taal'].'.php')) {rn include($_GET['taal'].'.php');rn} else {rn include('en.php');rn}rn[code]
Offline nemesiskoen - 30/11/1999 00:00 (laatste wijziging 30/11/1999 00:00)
Avatar van nemesiskoen Gouden medaille

PHP expert
was al bang dat er niemand met dit zou komen, om het op een veilige manier te doenrnwant als je include($_GET['taal'] ..php); doet gaat een hacker lekker hier gebruik van maken en stoute dingen doenrnrnmaar ook bij banana gaat ie niet volledig werkenrnals hij bij de 2e if een elseif had gebruikt welrnmaar als je veel talen hebt kan je beter een switch gebruikenrnrn[code]phprnif(!isSet($_GET['taal']) $_GET['taal']==){rnis er taal nietingevuld rnof is de waarde van get taal niet ingevuldrn $taal = engels;rndan is taal engelrn}rnelse{rnandersrn $taal = addslashes($_GET['taal']);rnis de taal de opgegeven taalrn}rnswitch($taal){rnde taal door de switch draaienrn case engels include(engels.php); rn break;rnis de taal engels, dan laden we engels inrn case nederlands include(nederlands.php); rn break;rnetcrn case frans include etc...rnrnbestaat de taal niet... rndan is er met de header geknoeit, rndus geven we een error (optie A)rnof laden we engels in (optie B)rn default rnecho De opgegeven taal bestaat niet... rnspijtig... dan maar engels inladen; rnoptie Arninclude(engels.php); rnoptie Brn break;rn}rn [code]rnrnrnedit oke... murfy was me voorrnedit2 murfy, is die laatste niet een beetje onveiligrnzo kan een hacker ook php files vanop zijn server laten draaienrnals ie bij de header zo doetrnrnwww.site.comtaal=http www.site2.comstout_scriptrnrnen ie heeft een stout script draaien op site2.com met de naam stout_script.php
Gesponsorde links
Dit onderwerp is gesloten.
Actieve forumberichten
© 2002-2024 Sitemasters.be - Regels - Laadtijd: 0.183s