Questo sito utilizza cookies, anche di terze parti, per mostrare pubblicità e servizi in linea con il tuo account. Leggi l'informativa sui cookies.
Username: Password: oppure
PHP - Scope variabili PHP in codice HTML
Forum - PHP - Scope variabili PHP in codice HTML

Avatar
Pikke (Normal User)
Newbie


Messaggi: 9
Iscritto: 25/11/2009

Segnala al moderatore
Postato alle 14:08
Venerdì, 14/05/2010
Ciao a tutti, sto realizzando una pagina con del codice HTML in cui richiamo alcuni script php, premetto che non sono esperto e devo imparare molte cose sul linguaggio php, ma vengo al punto: Quello che vorrei fare è utilizzare alcune variabili che uso in uno script in uno script subito successivo.
Esempio:

Codice sorgente - presumibilmente PHP

  1. <!DOCTYPE HTML PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
  2. <body>
  3. CODICE HTML
  4.  
  5. <?php
  6.  $a = 2;
  7. ?>
  8.  
  9. CODICE HTML
  10.  
  11. <?php
  12.  echo $a;
  13. ?>
  14. </body>
  15. FINE PAGINA



Il problema è che lo scope della variabile $a è limitato al primo script (di conseguenza  $a risulta non definita nel secondo). Vorrei sapere come è possibile passare parametri in questo specifico caso. Grazie mille!

PM Quote
Avatar
Thejuster (Member)
Guru^2


Messaggi: 1704
Iscritto: 04/05/2008

Segnala al moderatore
Postato alle 14:18
Venerdì, 14/05/2010
ti sbagli,
funziona benissimo.

sicuramente sbagli qualcosa, non sò cosa ma dall'esempio funziona perfettamente te lo garantisco :k:

se invece cerchi di richiamare quella variabile in un'altra pagina il discorso cambia.


PM Quote
Avatar
Pikke (Normal User)
Newbie


Messaggi: 9
Iscritto: 25/11/2009

Segnala al moderatore
Postato alle 14:25
Venerdì, 14/05/2010
No, è tutto nella medesima pagina non centrano pagine esterne. Non potrebbe essere un'opzione del file php.ini? La $a non si propaga nel secondo script.. penso venga considerata come una nuova variabile per via dei tag di chiusura e apertura di php. Il codice che ho postato è solo esemplificativo della mia situazione, e ora non sono in condizione di postare il codice interessato.
Se però mi confermate che in php questo codice dovrebbe funzionare..

PM Quote
Avatar
antometal (Member)
Guru


Messaggi: 691
Iscritto: 12/09/2007

Segnala al moderatore
Postato alle 16:19
Venerdì, 14/05/2010
se usi easyphp, assicurati di richamare la pagina con localhost/... e non con c:\...
inoltre controlla se il server è attivo
e ricorda che le varibili sono casesensitive
in fondo alla pagina aggiungi: print_r($GLOBALS);    per vedere il valore di tutte le variabili utilizzate


se berlusconi ha i capelli, è grazie alla ricerca

http://antonioserver.altervista.org
PM Quote
Avatar
Thejuster (Member)
Guru^2


Messaggi: 1704
Iscritto: 04/05/2008

Segnala al moderatore
Postato alle 17:51
Venerdì, 14/05/2010
quando dichiari una variabile all'interno del tag

Codice sorgente - presumibilmente Plain Text

  1. <?
  2.  
  3. $variabile;
  4.  
  5. ?>



questa variabile viene identificata come globale,
valida nell'intera pagina.

tranne se la variabile in questione viene utilizzata in una funzione o in una classe,
a quel punto la variabile diventa locale e non più globale

Codice sorgente - presumibilmente Php

  1. function test($value) {
  2. $test = $value *2;
  3.  
  4. return $test;
  5. }



in questo caso non puoi accedere a $test :k:


PM Quote
Avatar
Pikke (Normal User)
Newbie


Messaggi: 9
Iscritto: 25/11/2009

Segnala al moderatore
Postato alle 11:34
Sabato, 15/05/2010
capisco.. Purtroppo la variabile non è inclusa in una funzione.. Dev'esserci dell'altro che mi sfugge probabilmente.. Grazie comunque per le dritte :)

PM Quote