Mijn beste mede SD,ers
Ik zit weer eens in de problemen!?
Ik probeer in een website een file op te halen via require_once
De code ziet er als volgt uit
De volgende melding krijg ik :PHP Code:
<?php
/* START SESSION */
session_start();
/* THESE SESSIONS ARE REQUIRED AT EVERY PAGE */
$userid = $_SESSION['id'];
$username = $_SESSION['username'];
$userrank = $_SESSION['rank'];
$usertype = $_SESSION['usertype'];
$userlang = $_SESSION['userlang']; // HET GAAT OM DEZE VARIABEL <-----------
/* EXTRA SESSIONS FOR THIS PAGE */
$searcherror = $_SESSION['searcherror'];
$searchses = $_SESSION['searchses'];
$type = $_SESSION['type'];
/* REQUIRE DATABASE FILES */
require_once 'includes/dbconnector.php';
/* REQUIRE LANGAUGE FILES */
if (!$userlang) { //Check if langauge is empty
$error = 'Sorry, but we could not select your langauge.';
}else{ //Select langauge
require_once 'includes/lang_$userlang.php';} //HIER PROBEER IK EEN FILE TE INCLUDE VIA REQUIRE<-----------
Als je inlogt geeft het scriptWarning: require_once(includes/lang_$userlang.php) [function.require-once]: failed to open stream: No such file or directory in D:\xampp\htdocs\internship\index2.php on line 26
Fatal error: require_once() [function.require]: Failed opening required 'includes/lang_$userlang.php' (include_path='.;D:\xampp\php\PEAR') in D:\xampp\htdocs\internship\index2.php on line 26
het woord "fin" mee aan de sessie.PHP Code:
$_SESSION['userlang'] = 'fin';
Als ik
voor ik hem require krijg ik ook daadwerkelijk het woord "fin" te zienPHP Code:
echo $userlang;
En het bestand "includes/lang_fin.php" bestaan 100% en ik kan op google dus niet de oplossing vinden!
Zou iemand mij kunnen vertellen wat ik fout doe ?
Met vriendelijke groet en alvast hartelijk bedankt voor het lezen,
Jeffrey Bouva
- [PHP] Require met een variabel
-
05-04-2011, 14:05 #1
- Berichten
- 133
- Lid sinds
- 14 Jaar
[PHP] Require met een variabel
-
05-04-2011, 14:09 #2
- Berichten
- 465
- Lid sinds
- 17 Jaar
Re: [PHP] Require met een variabel
Code:require_once 'includes/lang_' . $userlang. ' .php';
-
05-04-2011, 14:11 #3
- Berichten
- 195
- Lid sinds
- 17 Jaar
Re: [PHP] Require met een variabel
Ik dacht aan
Code:require_once 'includes/lang_".$userlang.".php';
-
05-04-2011, 14:11 #4Particulier
- Berichten
- 57
- Lid sinds
- 18 Jaar
Re: [PHP] Require met een variabel
Zoals je al in je foutmelding kunt zien print PHP de variabele en niet de waarde van de variabele.
Pas het eens aan in onderstaande:
require_once 'includes/lang_' .$userlang. '.php';}
-
05-04-2011, 14:14 #5
- Berichten
- 133
- Lid sinds
- 14 Jaar
Re: [PHP] Require met een variabel
Betekent dit overigens dat zodra je een variabel in een link zet je dit altijd zo moet doen ?
Of geld dit alleen voor de inlclude of require ?
-
05-04-2011, 14:15 #6
- Berichten
- 465
- Lid sinds
- 17 Jaar
Re: [PHP] Require met een variabel
Om het volgende: http://www.pfz.nl/wiki/variabelen-buiten-quotes/
-
05-04-2011, 14:17 #7Particulier
- Berichten
- 57
- Lid sinds
- 18 Jaar
Re: [PHP] Require met een variabel
Variabelen moeten altijd buiten quotes. Zie hiervoor ook het artikel op pfz: http://www.pfz.nl/wiki/variabelen-buiten-quotes/.
-
05-04-2011, 14:17 #8Particulier
- Berichten
- 75
- Lid sinds
- 13 Jaar
Re: [PHP] Require met een variabel
Jeffrey,
Dit moet je eigenlijk altijd zo doen.
Als ik eerlijk ben is het niet echt zo want als je het tussen "" hebt staan mag je wel een variabele erin zetten.
Maar ik blijf het smerig vinden. (Artikel hierboven al genoemd legt het goed uit)
"includes/lang_$userlang.php"
-
06-04-2011, 08:47 #9
- Berichten
- 133
- Lid sinds
- 14 Jaar
Re: [PHP] Require met een variabel
Super jongens !
Bedankt voor de support!
Ik heb nog één vraag.
Het gaat niet om het zelfde maar nutteloos om nog een topic aan te maken
Ik ben nu bezig met de language files!
Die worden nu goed geladen.
Alleen hoe echo ik de variable uit het taal bestand in mijn heredoc
Voorbeeld van mijn files:
Bestand: lang_eng.php
PHP Code:<?php
/* ENGLISH */
$lang['welcome'] = 'Welcome';
$lang['ietsanders'] = 'Something else';
?>
**HIER WIL IK DUS DE VARIABLE ECHO IN MIJN HEREDOC**
PHP Code:/***************************************************/
/************** CONTEXT FOR THIS PAGE **************/
/***************************************************/
$context= <<<EOD
<!-- WRAPPER FOR THE CONTEXT -->
<div class="wrapper">
<!-- USER INFORMATION BAR -->
<div id="box">
<div id="welcome"><p> $lang['welcome'].; **HIER WIL IK DUS DE VARIABLE ECHO IN MIJN HEREDOC** <a href="profile/index.php?$userid" target="_self">$username</a> | </p></div><div id="logoff"><a href="logoff.php">Logoff</a></div>
<div id="lang"><a href="changelang.php?userlang=fin"><img src="images/fi.png" width="16px" height="11px" border="0px" alt="FI"></a><a href="changelang.php?userlang=eng"><img src="images/gb.png" width="16px" height="11px" border="0px" alt="GB"></a></div>
</div>
?>
Parse error: syntax error, unexpected T_ENCAPSED_AND_WHITESPACE, expecting T_STRING or T_VARIABLE or T_NUM_STRING in D:\xampp\htdocs\internship\index2.php on line 73
Hoe echo ik mijn language variable wel goed
-
06-04-2011, 08:52 #10Particulier
- Berichten
- 75
- Lid sinds
- 13 Jaar
Re: [PHP] Require met een variabel
Het lijkt weer op dezelfde fout kijk eens goed naar je quotjes.
In welke editor werk je dit accepteert toch geen enkele normale ide.
-
06-04-2011, 09:08 #11
- Berichten
- 133
- Lid sinds
- 14 Jaar
Re: [PHP] Require met een variabel
Ik werk in Eclipse,
En hij geeft ook een fout aan!
Syntax maar ik weet niet zo goed hoe ik moet die quotjes moet omgaan denk ik =$
Alleen ik heb nu de volgende geprobeert maar hij blijft de fout geven ...
PHP Code:'.$lang['welcome'];.'
".$lang['welcome'];."
'.$lang["welcome"];.'
".$lang["welcome"];."
Kan het niet aan het heredoc liggen ?
in het artikel staat het volgende :
Omdat het niet met alle quotes werkt
Variabelen worden alleen binnen dubbele quotes herkend, binnen enkele quotes wordt de tekst letterlijk overgenomen:
PHP Code:<?php
$var = 'variabele';
echo 'ik ga een $var weergeven';
//Output: Ik ga een $var weergegeven.
-
06-04-2011, 09:14 #12Particulier
- Berichten
- 75
- Lid sinds
- 13 Jaar
Re: [PHP] Require met een variabel
punt komma ; moet in ieder geval eruit en zo te zien is dan optie 1 en optie 4 goed.
Afhankelijk van welke qoutjes je gebruikt.
-
06-04-2011, 09:30 #13
- Berichten
- 133
- Lid sinds
- 14 Jaar
Re: [PHP] Require met een variabel
Alle 4 de opties en nog altijd geen verandering
Als ik alleen $lang laat staan zonder enige quotes geeft hij geen error meer aan.
Maar dit werkt natuurlijk niet.
-
06-04-2011, 09:42 #14
- Berichten
- 195
- Lid sinds
- 17 Jaar
Re: [PHP] Require met een variabel
PHP Code:/***************************************************/
/************** CONTEXT FOR THIS PAGE **************/
/***************************************************/
<?php $context= <<<EOD ?>
<!-- WRAPPER FOR THE CONTEXT -->
<div class="wrapper">
<!-- USER INFORMATION BAR -->
<div id="box">
<div id="welcome"><p><?= $lang['welcome'] ?>. **HIER WIL IK DUS DE VARIABLE ECHO IN MIJN HEREDOC** <a href="profile/index.php?$userid" target="_self"><?= $username ?></a> | </p></div><div id="logoff"><a href="logoff.php">Logoff</a></div>
<div id="lang"><a href="changelang.php?userlang=fin"><img src="images/fi.png" width="16px" height="11px" border="0px" alt="FI"></a><a href="changelang.php?userlang=eng"><img src="images/gb.png" width="16px" height="11px" border="0px" alt="GB"></a></div>
</div>
-
06-04-2011, 09:45 #15
- Berichten
- 133
- Lid sinds
- 14 Jaar
Re: [PHP] Require met een variabel
PHP Code:/***************************************************/
/************** CONTEXT FOR THIS PAGE **************/
/***************************************************/
<?php $context= <<<EOD ?>
<!-- WRAPPER FOR THE CONTEXT -->
<div class="wrapper">
<!-- USER INFORMATION BAR -->
<div id="box">
<div id="welcome"><p><?= $lang['welcome'] ?>. **HIER WIL IK DUS DE VARIABLE ECHO IN MIJN HEREDOC** <a href="profile/index.php?$userid" target="_self"><?= $username ?></a> | </p></div><div id="logoff"><a href="logoff.php">Logoff</a></div>
<div id="lang"><a href="changelang.php?userlang=fin"><img src="images/fi.png" width="16px" height="11px" border="0px" alt="FI"></a><a href="changelang.php?userlang=eng"><img src="images/gb.png" width="16px" height="11px" border="0px" alt="GB"></a></div>
</div>
(John trouwens ook als ik dat nog niet had gezegd)
Maar helaas is dat hem ook niet.
Daar mee was ik begonnen en ben toen de code maar gaan strippen.
Is dit eigelijk wel mogelijk is heredoc ?
Aanvullend bericht:
Voor iedereen die nog geďnteresseerd is in het antwoord!
Oplossing hier
De juiste toepassing hoort te zijn :
PHP Code:$lang[welcome]
Laatst aangepast door Jeffrey Bouva : 06-04-2011 om 12:38 Reden: Automatisch samengevoegd.
Plaats een
- + Advertentie
- + Onderwerp
Marktplaats
Webmasterforum
- Websites algemeen
- Sitechecks
- Marketing
- Domeinen algemeen
- Waardebepaling
- CMS
- Wordpress
- Joomla
- Magento
- Google algemeen
- SEO
- Analytics
- Adsense
- Adwords
- HTML / XHTML
- CSS
- Programmeren
- PHP
- Javascript
- JQuery
- MySQL
- Ondernemen algemeen
- Belastingen
- Juridisch
- Grafisch ontwerp
- Hosting Algemeen
- Hardware Info
- Offtopic