pragmaMx Support Forum pragmaMx Support Forum

funktion in funktion undefiniertes array

0 Mitglieder und 1 Gast betrachten dieses Thema.

Offline lausbub

  • *****
  • 651
  • +5/-6
  • Geschlecht: Männlich
funktion in funktion undefiniertes array
« am: 25 Oktober 2007, 20:13:57 »
hallo, ich habe zwei funktionen
die erste funktion soll den namen ermitteln und in ein array speichern.

in der zweiten funktion soll die erste funktion aufgerufen werden das ich über die werte in den array verfügen kann.

Jedoch bekomme ich die meldung, 
"Notice: Undefined variable: uname" und die Notice: "Undefined variable: name"

function tm_userdaten()
{
$userDaten=mxGetUserData();
$uname=$userDaten['uname'];
$name=$userDaten['name'];
$email=$userDaten['email'];
}

/* Usernamen und Nicknamen ausgeben */
function tm_name_nick()
{
tm_userdaten();
echo"<p><table width= 100% cellspacing=\"0\" cellpadding=\"0\">"
  . "  <tr>"
  . "    <td bgcolor=\"#ffffcc\">Hallo ".$uname."; </td>"
  . "  </tr>"
  . "  <tr>"
  . "    <td bgcolor=\"#ffffcc\">Pers&ouml;nliche Daten von ".$name."; </td>"
  . "  </tr>"
  . "</table></p>"
 .""; 
}

kann mir bitte jemand weiter helfen?

gruß
thorsten
PHP Version: 5.2.11
MySql Version: 5.0.51a
Server-Version: Apache/2.2.8 (Linux/SUSE)
Pragma 1.12

Offline bajazzo

  • *****
  • 515
  • +4/-2
  • Geschlecht: Männlich
Re: funktion in funktion undefiniertes array
« Antwort #1 am: 25 Oktober 2007, 20:32:19 »
ich wurde vermeiden eine Funktion als Wert einer Variable zu verwenden ;)
mxGetUserData();
$bla = $userinfo['tralala'];
Genie ist die grenzenlose Bereitschaft, sich Mühe zu geben.

Offline siggi

  • ******
  • 878
  • +0/-0
  • Geschlecht: Männlich
Re: funktion in funktion undefiniertes array
« Antwort #2 am: 25 Oktober 2007, 21:37:54 »
innerhalb einer Funktion definierte Variablen sind ausserhalb der Funktion
nicht ansprechbar und haben ihren Gültigkeitsbereich nur in der Funktion.
mit global $foo; kann man sie quasi globalisieren.

Deine Funktion tm_userdaten() ist schlichtweg überflüssig.
Das Array aus mxGetUserData() sprichst du direkt in function tm_name_nick() an.
Mit extract() extrahierst du das Array.

Bsp:
Zitat
/* Usernamen und Nicknamen ausgeben */
function tm_name_nick()
{
 $userdaten = mxGetUserData();
 extract($userdaten);

echo"<p><table width= \"100%\" cellspacing=\"0\" cellpadding=\"0\">"
  . "  <tr>"
  . "    <td bgcolor=\"#ffffcc\">Hallo ".$uname."; </td>"
  . "  </tr>"
  . "  <tr>"
  . "    <td bgcolor=\"#ffffcc\">Pers&ouml;nliche Daten von ".$name."; </td>"
  . "  </tr>"
  . "</table></p>"
 .""; 
}
Wenn man an Gras zieht wächst es auch nicht schneller.

Offline lausbub

  • *****
  • 651
  • +5/-6
  • Geschlecht: Männlich
Re: funktion in funktion undefiniertes array
« Antwort #3 am: 25 Oktober 2007, 21:48:45 »
hi Siggi

jooo das schaut gleich viel besser aus als meine array`s klasse  ;)

besten dank  :thumbup:

gruß
thorsten
PHP Version: 5.2.11
MySql Version: 5.0.51a
Server-Version: Apache/2.2.8 (Linux/SUSE)
Pragma 1.12