Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP] retrun nie zwraca wartości
Forum PHP.pl > Forum > Przedszkole
obelix94
Napisałem sobie tabelkę, i krótki skrypt wyświetlający tam gdzie jestes teraz. Niestety ma problem ze zwróceniem tego. Uzyłem return $obecnosc, a skrytp odbierajacy daje że niema zmiennej.
Notice: Undefined variable: obecnosc in D:\STRONA\od_nowa.php on line 37

skrypt odbierajacy
  1. <?php
  2. require_once('f_wyswietl.php');
  3. $data = date("d.m.Y G:i");
  4. jestes('glowna');
  5. echo '<table id="breadCrumbs" width="100%"><tr><td align="left">
  6.    <ul><li><span>MATEUSZKOW.oz.pl </span></li>'.$obecnosc.'</ul></td>
  7.    <td align="right">'.$data.'</td></tr></table>';
  8. ?>

funkcja jestes
  1. <?php
  2. function jestes($nazwa){
  3.    //TABLICA DANYCH
  4.    $strona['glowna'][0] ='<li>Strona główna</li>'; //STRONA GLOWNA
  5.    $strona['aktualnosci'][0] ='<li>Aktualności</li>'; //AKTUALNOSCI
  6.    $strona['aktualnosci'][1] ='<li>Aktualnosci</li>';
  7.    $strona['aktualnosci'][2] ='<li><span>Aktualności</span></li>  <li>Archiwum</li>';
  8.    $strona['biblioteka'][0] ='<li>Biblioteka</li>'; //BIBLIOTEKA
  9.    $strona['biblioteka'][1] ='<li><span>Biblioteka</span></li> <li>Wiersze</li>';
  10.    $strona['biblioteka'][2] ='<li><span>Biblioteka</span></li>  <li>Opowieści</li> ';
  11.    $strona['biblioteka'][3] ='<li><span>Biblioteka</span></li> <li>Złote myśli</li> ';
  12.    $strona['biblioteka'][4] ='<li><span>Biblioteka</span></li> <li>Fotografia</li>';
  13.    $strona['omnie'][0] ='<li>O mnie</li>'; //O MNIE
  14.    $strona['strona'][0] ='<li>Strona</li>'; //STRONA
  15.    $strona['strona'][1] ='<li><span>Strona</span></li>  <li>Księga Gości</li>';
  16.    $strona['strona'][2] ='<li><span>Strona</span></li>  <li>Mapa strony</li>';
  17.    $strona['strona'][3] ='<li><span>Strona</span></li>  <li>Oceny</li>';
  18.    $strona['strona'][4] ='<li><span>Strona</span></li>  <li>O stronie</li>';
  19.    $strona['kontakt'][0] ='<li>Kontakt</li>'; //KONTAKT
  20.    
  21.    if(!isset($_GET['id'])){
  22.        $obecnosc = $strona[$nazwa][0];
  23.    }
  24.    else if(isset($_GET['id'])){
  25.        $obecnosc = $strona[$nazwa][$_GET['id']];
  26.    }
  27.    return $obecnosc;
  28. }
  29. ?>


Co robię źle, że nie mam zmiennej $obecnosc questionmark.gif
mike
Zmienne $obecnosc (jedna wewnątrz funkcji, druga poza nią) to różne zmienne. Poczytaj sobie o zasięgu zmiennych.
Jeśli funkcja zwraca wynik działania to możesz go przypisać do zmiennej. Dowolnej zmiennej.
To, że piszesz return $jeden; to nie znaczy, że masz później wynik pod zmienną $jeden. Możesz mieć równie dobrze wynik działania pod zmienną $dupa.
Zerknij na przykłady funkcji zwracających wartość.
obelix94
Czyli zeby sobie nie mieszać powinienem dać:
  1. <?php
  2. echo '<table id="breadCrumbs" width="100%"><tr><td align="left">
  3.   <ul><li><span>MATEUSZKOW.oz.pl </span></li>'.jestes('glowna').'</ul></td>
  4.   <td align="right">'.$data.'</td></tr></table>';
  5. ?>
mike
Cytat(obelix94 @ 2.01.2009, 20:45:36 ) *
Czyli zeby sobie nie mieszać powinienem dać (...)
Dokładnie.
Możesz również wynik działania przyporządkować do zmiennej i użyć zmiennej:
  1. <?php
  2. $wynik = jestes('glowna');
  3. echo '<table id="breadCrumbs" width="100%"><tr><td align="left">
  4.  <ul><li><span>MATEUSZKOW.oz.pl </span></li>'.$wynik.'</ul></td>
  5.  <td align="right">'.$data.'</td></tr></table>';
  6. ?>
obelix94
Czyli funckja dobrze zwraca wartość i zmienną. Lecz ja tej zwracanej zmiennej nie przypisałem. Dziekuję za pomoc.
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.