Undefined variable

Area dedicata al linguaggio HTML. Nozioni di base,esempi,script,programmazione
Rispondi
Avatar utente
eniac
PhpBB Expert
PhpBB Expert
Messaggi: 793
Iscritto il: 18/07/2013, 19:14
Link del Forum: Http://www.cesimmunizioni.eu/forum
Località: Abruzzo
Contatta:

Undefined variable

Messaggio da eniac »

in un programma in PHP ho definita una variabile che controlla la presenza di una immagine , e, se presente provvede a visualizzarla in coppia con un'altra, altrimenti (else) visualizza solo quella effettivamente presente

Codice: Seleziona tutto

<?php
					if($img_palla == 0)
					{
						?>
						<div class="table-cartuccia1"><img class="resize-img" src="./img_cartucce/<?=$img_cartuccia_cor?>" alt="<?=$img_cartuccia_cor?>" ></div>
						<?php
					}else{
						?>
						<div class="table-cartuccia"><img class="resize-img" src="./img_cartucce/<?=$img_cartuccia_cor?>" alt="<?=$img_cartuccia_cor?>" ></div>
						<div class="table-palla"><img class="resize-img" src="./img_palle/<?=$img_palla_cor?>" alt="<?=$img_palla_cor?>" ></div>
						<?php
					}
Con questo codice su Altervista funziona perfettamente , ma se carico il file in locale su Xampp mi restituisce l'errore che vedete in foto ( la linea 458 è questa if($img_palla == 0) ) , immagino si tratti di una non piena compatibilità con PHP che su Altervista è in versione 7.3 mentre su Xampp 7.4.27 , mi potete indicare come posso correggere questo problema in modo che sia compatibile con entrambe le versioni di PHP ? Oppure come modificare la linea incriminata in modo che funzioni in locale.
Cattura.JPG
Non hai i permessi necessari per visualizzare i file allegati in questo messaggio.
phpBB version : 3.3.11
php version : 8.2.16
Avatar utente
eniac
PhpBB Expert
PhpBB Expert
Messaggi: 793
Iscritto il: 18/07/2013, 19:14
Link del Forum: Http://www.cesimmunizioni.eu/forum
Località: Abruzzo
Contatta:

Re: Undefined variable

Messaggio da eniac »

Scusate i due post consecutivi ma avevo esaurito il tempo per la modifica, ho fatto un downgrade di PHP alla 7.3.0 in Xampp ma l'errore persiste sempre ne deduco che il problema non è la versione di php....

Setting environment for using XAMPP for Windows.
Eniac@DESKTOP-FMCHJ14 c:\xampp
# php -v
PHP 7.3.0 (cli) (built: Dec 6 2018 02:17:00) ( ZTS MSVC15 (Visual C++ 2017) x86 )
Copyright (c) 1997-2018 The PHP Group
Zend Engine v3.3.0-dev, Copyright (c) 1998-2018 Zend Technologies

Eniac@DESKTOP-FMCHJ14 c:\xampp
#
phpBB version : 3.3.11
php version : 8.2.16
Avatar utente
eniac
PhpBB Expert
PhpBB Expert
Messaggi: 793
Iscritto il: 18/07/2013, 19:14
Link del Forum: Http://www.cesimmunizioni.eu/forum
Località: Abruzzo
Contatta:

Re: Undefined variable

Messaggio da eniac »

Soluzione trovata , basta disattivare il report NOTICE con la linea <?php error_reporting (E_ALL ^ E_NOTICE); ?>
Naturalmente la migliore opzione è definire prima la variabile in modo da evitare l'errore senza disattivare il report NOTICE.

Fonte : https://www.stechies.com/notice-undefin ... 20function.


magari può essere di utilità a qualche utente... :)
phpBB version : 3.3.11
php version : 8.2.16
Avatar utente
Barrnet
Globalmod
Globalmod
Messaggi: 547
Iscritto il: 13/05/2012, 19:10
Link del Forum: https://videogamezone.eu/forum
Località: Bergamo
Contatta:

Re: Undefined variable

Messaggio da Barrnet »

Prova cosi.
Al posto di:

Codice: Seleziona tutto

if($img_palla == 0)
Scrivi cosi:

Codice: Seleziona tutto

if( isset($img_palla) and $img_palla == 0)
E dovrebbe andare bene anche senza dover mettere mano alla configurazione di PHP, perdendo magari avvisi utili.
Avatar utente
eniac
PhpBB Expert
PhpBB Expert
Messaggi: 793
Iscritto il: 18/07/2013, 19:14
Link del Forum: Http://www.cesimmunizioni.eu/forum
Località: Abruzzo
Contatta:

Re: Undefined variable

Messaggio da eniac »

Il messaggio in effetti è scomparso ma non funziona più la routine che definisce che se la palla è assente deve visualizzare solo la cartuccia in una data posizione , cosi praticamente vengono sempre visualizzate entrambe e se la palla non c'è la cartuccia viene visualizzata sempre nella stessa posizione, in pratica vanno sempre e solo i comandi dopo ELSE
phpBB version : 3.3.11
php version : 8.2.16
Avatar utente
eniac
PhpBB Expert
PhpBB Expert
Messaggi: 793
Iscritto il: 18/07/2013, 19:14
Link del Forum: Http://www.cesimmunizioni.eu/forum
Località: Abruzzo
Contatta:

Re: Undefined variable

Messaggio da eniac »

Io avevo risolto diversamente , in pratica all'inizio del programma c'è la lista che definisce tutte le variabili è bastato che ci aggiungessi "$img_palla=0;" ed il messaggio è scomparso e il ciclo "if-else" che gestisce la posizione delle immagini funziona perfettamente...

Codice: Seleziona tutto

// Variabili iniziali
$id_cor   		= request_var('id','');
$cat_cor		= request_var('cat', '1');
$cal_cor		= request_var('cal', '0');
$mod_cor		= request_var('mod', '0');
$naz_cor		= request_var('naz', '0');
$cal_text_cor	= request_var('cal_text', '');
$ord_cor		= request_var('ord', 'calibro');
$sel_cor		= request_var('sel', '');
$img_palla=0;
phpBB version : 3.3.11
php version : 8.2.16
Rispondi