ugrás a tartalomhoz

Változóba írt változó értéke később módosuljon

Anonymous · 2006. Ápr. 9. (V), 15.19
Definiálok egy változót, amelyben a stringhez hozzáfűzöm a sessionben lévő felhasználónevet.
Az azonosítás csak ez után történik meg, ekkor kiíratom a változóban eltárolt üdvözlést, de a felhasználónév helye üres lesz, mert ugyan a session változó közben kapott értéket, de ezt már nem veszi figyelembe.
Hogy oldaható meg, hogy mégis így tegyen?


//A session üres

$welcome = 'Szia ' . $_SESSION[nick'] . '!';

...

//Azonosítjuk, a session megkapja az értéket

echo $_SESSION['nick']; // 'Vér Pisti'
echo $welcome; // 'Szia !'

Ha a $welcome-ban a session változó elé &-t teszek, akkor hibának jelzi ki.
 
1

próbáld függvénnyel talán

gnycz · 2006. Ápr. 9. (V), 15.32
function welcome( $name )
{
    echo 'Szia '.$name.'!';
}
//Azonosítjuk, a session megkapja az értéket
welcome( $_SESSION['nick'] );
2

mi a gond?

Gal Kristof · 2006. Ápr. 9. (V), 15.42
nem igazán értem, hogy mi a probléma... mért nem teszed a welcome = akármi részt az azonosítás után??
3

pl többnyelvű oldal

Anonymous · 2006. Ápr. 10. (H), 08.48
lehet, hogy a $welcome változót egy másik fájl állítja be, mert többnyelvű az oldal.
erre használhatod a php sprintf függvényét valahogy így:

<?php
$welcome="Szia %s!";
//azonosítás után pedig:
echo sprintf($welcome,$_SESSION['nick']);
?>
az sprintf függvény pedig szépen belerakja a $_SESSION['nick'] értékét a $welcome változóba.

gex