Variabile non risconosciuta dentro una funzione

robyspider77

Nuovo Utente
3 Ago 2022
8
0
1
buongiorno a tutti!!

il mio problema è il seguente: ho un codice PHP che mi estrae i dati da un database SQL; fin qui tutto bene, i dati vengono estratti correttamente.
Successivamente imposto una funzione php che in base ai dati estratti dal database fa qualcosa;

prima della funzione imposto una variabile
Codice:
$posti=($row['posti']);

all'interno della funzione, la variabile $posti è un parametro che devo utilizzare

Codice:
function trovaFascia($fascia) {
    


    
if ($fascia > $posti)
 
{
$classeFascia="fasciaorariaprenotata";   
}
 
else
{
    
    $classeFascia='fasciaoraria';
}
return $classeFascia;
}

La domanda è: come mai nell'esecuzione mi viene l'errore

Warning: Undefined variable $posti in .... on line ....

se al posto di $posti metto un valore numerico mi dà tutto ok

grazie a chi risponderà
 

WmbertSea

Moderatore
Membro dello Staff
MOD
28 Nov 2014
436
73
28
Ciao, questo è dovuto alla gestione dello scope (ambito di visibilità degli elementi). In php la visibilità delle variabili è limitata solo all'ambito in cui queste sono state definite.

Quindi la variabile che hai definito nell'ambito globale non può essere vista dentro una funzione a meno che non lo specifichi in qualche modo.

In altri linguaggi la gestione dello scope può essere diversa, ad esempio in javascript è possibile accedere normalmente a variabili definite all'interno di oggetti genitori.

A seconda delle tue necessità puoi risolvere con diversi approcci.

- Puoi passare la variabile stessa come argomento della funzione:
PHP:
$posti = 5;
function trovaFascia($fascia, $posti){
  echo $posti; // 5
}
trovaFascia(1, $posti);

- Puoi usare la keyword global per definire la visibilità di quella variabile all'interno della funzione:
PHP:
$posti = 5;
function trovaFascia($fascia){
  global $posti;
  echo $posti; // 5
}
trovaFascia(1);

- Puoi usare l'array superglobale $GLOBALS per accedere alla variabile dall'interno della funzione:
PHP:
$posti = 5;
function trovaFascia($fascia){
  echo $GLOBALS['posti']; // 5
}
trovaFascia(1);

e altri possibili metodi.
 
Discussioni simili
Autore Titolo Forum Risposte Data
A variabile non riconosciuta PHP 0
B [PHP] Valore variabile non riconosciuto PHP 1
P [PHP] $_GET non preleva variabile nell’URL PHP 4
V [PHP] Variabile modificata in un if non mantiene quel valore PHP 5
A [PHP] Non prende variabile $provincia ma tutte le altre si PHP 6
A form prenotazione: variabile non richiamata jQuery 2
S [PHP] Aiuto! Non riesco a richiamare una variabile PHP 2
S Non mi passa il risultato di una variabile nell'url PHP 7
M Form html-php, la pagina php non mi rileva la variabile PHP 5
M variabile compresa tra numeri negativi, non funziona PHP 2
R Variabile non mostrata PHP 4
C Perchè non funziona la funzione if con la variabile getdate... ? Javascript 4
A @$_POST non riceve la variabile input contenuta in un Form PHP 6
WorldWideWeb Errore 91: Variabile non impostata Visual Basic 6
Monital La variabile non viene riconosciuta PHP 1
S Come il codice ! quando la variabile non esiste PHP 4
N Come si crea una variabile dinamica da incrementare? Javascript 1
K posizionare variabile da pagina html all'iframe. Javascript 1
I Assegnare dati fetch request ad una variabile globale Javascript 0
E Inviare variabile a PHP da ciclo in JS Javascript 0
S Variabile in post su altra pagina PHP 2
F Passare variabile a pulsante in finestra modale PHP 2
R Nome input testo+variabile PHP 1
A inserire variabile php colore in div html PHP 2
N Variabile di sessione è un array PHP7 PHP 3
K Cambiare font size su echo stringa variabile PHP 24
B Errore unexpected '$variabile' (T_VARIABLE) in your code on line PHP 2
M Inserire variabile nella value di una hidden PHP 3
A Problema nel passare la variabile PHP 0
C variabile in img Javascript 8
C [RISOLTO]Inserimento variabile php in input html PHP 20
N PDF fpdi passare variabile PHP 4
F Come passare una variabile al modal di bootstrap PHP 1
F Passare una variabile php dal DB mysql alla pagina PHP 3
M [PHP] Passare variabile di sessione con metodo GET PHP 10
S [PHP] Rendere visibile variabile di un costrutto if in un altro costrutto if PHP 1
T PHP: variabile che cambia ogni 5 giorni... PHP 3
Tommy03 Variabile PHP per impostare una proprietà CSS PHP 2
L [PHP] Passare variabile PHP 3
J Passaggio variabile tra 2 file php PHP 15
Tommy03 Variabile PHP dentro a JQuery PHP 3
A [PHP] Scopo di una variabile PHP 4
M [PHP] Salvare campo di una tabella in una variabile PHP 14
AMONRA75 [PHP] passare una variabile in una finestra MODAL PHP 1
A Php variabile immagine inesistente PHP 4
Shyson [PHP] Personalizzare variabile PHP 0
Monital Funzione php e campo database come variabile PHP 6
N [Javascript] For-loop su thead: tempo di esecuzione variabile Javascript 1
R Come creare report dinamico/variabile in Access Presentati al Forum 1
IT9-Gpp [RISOLTO] Leggere variabile restituita da success Ajax 3

Discussioni simili