Newsgroup: it.comp.www.php
Titolo: [HELP] variabile non definita

Ciao a tutti,
come faccio ad evitare questo warning?
Warning: Undefined variable: id in c:\program files\apache
group\apache\htdocs\php\test7.php on line 12
la mia linea 12 é
...
if ($id) {
...
č mio interessa capire se la variabile č definita o no, ma lo voglio fare
con un IF non con una warning.
Chi mi puň aiutare?
Grazie in anticipo,
Carlo


Credo che il warning sia dovuto al fatto che stai utilizzando una variabile
che non é stata mai dichiarata,
credo che in PHP lo si possa fare già la prima volta che la utilizzi,
comunque sia va dichiarata.
Saluti
Caius


Fai cosě:
if(isset($id)) [operazione1] else [operazione2];
ziao ziao
PiNkU

abbassa il livello dei messaggi di errore (come cell'hai ora ti scrive anche
cose inutili)
Non mi chiedere come si fa, dovrei cercartelo io sul manuale =|
LAMASE


 Non mi chiedere come si fa, dovrei cercartelo io sul manuale =|
    Il modo migliore per 'nascondere' anche errori che sarebbe meglio
vedere! :-)
    Secondo me è meglio scrivere codice che non genera neanche warning ...
:-))
        Cris
--
Cristiano Verondini
http://noway.ing.unibo.it

 LAMASE
Azzzzzz!
Proprio al contrario, piu pesante i warning meglio per creare codice pulito.
Cmq. par fare questa roba cerca in php.ini la riga con error_reporting= ...
ma la metterei a
error_reporting=E_ALL
J.
P.S.: NG solitamente richiedono di mettere prima il citato e dopo il
commento.
P.P.S.: Do not flame now...

 Azzzzzz!


 problemi?
    Bhe, se usi una variabile non inizializzata senza rendertene conto,
rischi di incorrere in un errore.
    Se però lo sai e fai le cose coscenziosamente .... :-))


In particolare mi riferisco a
E_NOTICE
Notices are not printed by default, and indicate that the script encountered
something that could indicate an error, but could also happen in the normal
course of running a script. For example, trying to access the value of a
variable which has not been set, or calling stat() on a file that doesn't
exist.
LAMASE


Molte grazie, funge bene
e non devo andare a frugare la configuarazione dei livelli di errore
(non me ne voglia LAMASE, ma per un newbie come me tanto vale dire bypassa
il bus e setta la RAM a 133 come se fosse Antani a sinistra)
:-)
Grazie a tutti ,
Carlo

     Se però lo sai e fai le cose coscenziosamente .... :-))
PROMETTO!
Lamase



Questo E' un errore, o perlomeno una falla nella sicurezza. Pensa un po'
se uno fa
<?
	include "config.php";
	if ($PASSWORD==$configured_password)
		$admin = "OK";
	(altri controlli)
	if ($admin != "OK")
	{
		exit();
	}
	(altre istruzioni)
?>
...gli arriva un warning: "OHE'! $admin NON E' DEFINITO!". Lui lo ignora.
Arrivo io bel bello, gli sparo un
	.../admin.php?admin=OK&password=TI+HO+FREGATO
ed entro.
Leonardo
-- 
Nior thainig ar major i dtus an lae chugainn,
is ni rabhamar fein ann i gcoir na gceart
ach mar sheolfai aoireacht bo gan aoire,
ar thaobh na greine de Sliabh na mBan.

 Leonardo
Questo caso lo conosco bene, sono generalmente attento alla sicurezza.
Dichiaro TUTTE le variabili che non devono essere dichiarate dall'esterno..
Ogni tanto può servire non dichiararle - senza problemi di sicurezza - , ma
ora utilizzerò if(isset($nomevariabile))
LAMASE

 Leonardo
Devi scusarmi ma uno script cosi' non ha senso di esistere a livello di
sicurezza :)
saluti
--
Fabio Rapposelli
webdeveloper & jr. sysadmin
hi-net.it
 s.r.l. - Via Morgagni,2 - 47900 Rimini (RN)
Tel 
+39 0541 478040
 - Fax 
+39 0541 478032
h t t p : / / w w w . h i - n e t . i t

sicurezza :)
Sono assolutamente d'accordo. E potrei citarti ben tre siti commerciali,
con carrello, razzi on line e quant'altro, che fanno esattamente questo.
(sigh)


 con carrello, razzi on line e quant'altro, che fanno esattamente questo.
sempre meglio di quelli che si passano direttamente la query in SQL nel
link!
LAMASE