Newsgroup: it.lavoro.professioni.webmaster
Titolo: Validità delle variabili in PHP

ma se io ho un codice così fatto :
 
 
 
<?php>
// Programma_1
require ('ciccio.php');
...
altre istruzioni
...
?>
 
 
tutte le variabili definite in ciccio.php sono visibili in Programma_1  ??
 
Perchè mi pare che non sia così. Ricevo una sfilza di errori.
 

Perchè mi pare che non sia così. Ricevo una sfilza di errori.
che tipo di errori?
 
warning perchè ci sono var vuote, per esempio?
 
--
pigmalion at home
http://www.pigmalion.it/
 


 
no. proprio 'undefined variable.
 
Le variabili le ho definite così :
 
$V[1] array ( 0 => 2, 3, 4, 5  etc... );
 
ho anche aggiunto or ora
$V = array( 14, 16) ;
all'inizio. stesso errore.
 
 
 
 
 
 

all'inizio. stesso errore.
 
in linea generale se fai degli include devi preoccuparti anche dei
casi in cui le var non vengono inizializzate...
 
sempre se ho capito, o prevedi casi in cui, quando le var non vengono
inizializzate, le inizializzi tu a zero, es: $var = '';
 
oppure fai dei controlli con isset e empty...
 
e dovresti sbarazzarti dei warning...



 
ok. Vado e seguo i consigli.
 
poi riferirņ (a meno che non mi addormento sulla tastiera. In tal caso 
riferirņ domani).
 
Grazie.
 
 
 


 
ho inizializzato tutte le variabili (ho provato sia in ciccio.php sia 
nel programma. stesso risultato) ed ho anche 'integrato' tutti l'html 
nel php come da esempio di lbo.
Risultato : pagina bianca immacolata, con un messaggio che il programma
è uscito per 'maximum execution time of 30 seconds exceeded....
e mi segna uno statemente dentro il loop per stampare l'array.
 
Ho capito. Per oggi vado fuori a giocare con la neve.
 
Quando mi comincia la giornata con questi bugs misteriosi me mette di 
cattivo umore.
 
 
 
 
 

 segna uno statemente dentro il loop per stampare l'array.
 
Sarebbe meglio spostare la discussione in it.comp.www.php, ma posta il 
codice, altrimenti parliamo di aria fritta.
 
Bye.
 


mi rendo conto che a questo punto è un problema di logica, non di 
linguaggio.
 
 
Comunque il pezzo di codice che da errore è questo :
 
$tab_html = '<table><tr><td>'.$cross.'</td>';
// titoli di colonna
 
for ($j=0; $j < $numcols; $j++) {
	$tab_html .= '<td>'.$coltit[$j] . '</td>'  ;  // riga 20
}
$tab_html .= '</tr>';
echo $tab_html;
 
//  End titoli di colonna
 
L'errore stavolta è 'Undefined offset 1 in C:XAMPP..blablabla  on line 20.
 
La riga 20 E' quella del loop dove stampo coltit.
 
Anche se resto a guardare fisso il codice per ora non mi viene in mente 
niente che possa aver sbagliato. Ho controllato i limiti dimensionali, 
le variabili. Tutto.
 
E' uno di quei problemi che distinguono la professione dell'informatico 
da quella del pizzaiolo : puoi guardare il codice per tre giorni e non 
vedi un ka§§o. Poi improvvisamente il  quarto giorno ti viene l'idea 
geniale e risolvi il tutto.
 
E a me che ormai con l'età i tempi di reazione delle cellule nervose si 
moltiplicano per 10, mi ci vorrà un mese prima che mi venga l'idea geniale.
 
Vabbè....ritorno a giocare con la neve sul terrazzo così mi faccio un 
pupazzo, e non mi rompo più il ca§§o  (però, nonostante l'alzheimer mi è 
rimasta la vena poetica).

 20.
 
Ma soprattutto cosa sia $coltit
 
Fai un print_r($coltit) prima del for per vedere cosa contiene.
 
Sei sicuro che sia un array con indici numerici?
 
Bye.
 

 Sei sicuro che sia un array con indici numerici?
 
ho risolto tutto. grazie. C'erano diversi bugs, ma il più oscuro era che 
  io avevo dichiarato
 
$rowtit = array (13)  significando che volevo un array di 13 elementi.
Lo avevo aggiunto pensando che lui si lamentava perche non era stato 
dichiarato.
Lui invece mi ha soppiantato il vero $rowtit che avevo dichiarato nel 
codice incluso,  con un valore solo = 13
 
Il print_r  mi è stato di molto aiuto in tutte le fasi.
 
grazie mille  !!  :-))
 
 
 

 $rowtit = array (13)  significando che volevo un array di 13 elementi.
 
Quando in PHP vedi scritto "array", leggi "hashtable". Vedrai che 
aiuta. ;)
 
Bye.