Torna indietro   Hardware Upgrade Forum > Software > Programmazione

Recensione HUAWEI Mate X7: un foldable ottimo, ma restano i soliti problemi
Recensione HUAWEI Mate X7: un foldable ottimo, ma restano i soliti problemi
Mate X7 rinnova la sfida nel segmento dei pieghevoli premium puntando su un design ancora più sottile e resistente, unito al ritorno dei processori proprietari della serie Kirin. L'assenza dei servizi Google e del 5G pesa ancora sull'esperienza utente, ma il comparto fotografico e la qualità costruttiva cercano di compensare queste mancanze strutturali con soluzioni ingegneristiche di altissimo livello
Nioh 3: souls-like punitivo e Action RPG
Nioh 3: souls-like punitivo e Action RPG
Nioh 3 aggiorna la formula Team NINJA con aree esplorabili più grandi, due stili di combattimento intercambiabili al volo (Samurai e Ninja) e un sistema di progressione pieno di attività, basi nemiche e sfide legate al Crogiolo. La recensione entra nel dettaglio su combattimento, build, progressione e requisiti PC
Test in super anteprima di Navimow i220 LiDAR: il robot tagliaerba per tutti
Test in super anteprima di Navimow i220 LiDAR: il robot tagliaerba per tutti
La facilità di installazione e la completa automazione di tutte le fasi di utilizzo, rendono questo prodotto l'ideale per molti clienti. Ecco com'è andata la nostra prova in anteprima
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 14-08-2010, 21:54   #1
brianss
Member
 
Iscritto dal: Mar 2006
Messaggi: 89
[PHP] problema insolito e strano

Ciao a tutti.
Quest'oggi sottopongo alla vostra attenzione un problema curioso e strano con il php, e su cui non riesco a trovare una soluzione (o un workaround).

sto facendo una banalissima if di confronto, fra una variabile e una costante
Codice:
if($count >= 1) {
fai qualcosa
}
else {
qualcos'altro
}
Il codice fatto girare in locale funziona perfettamente. Su server invece pare che la condizione risulti sempre false.
Ho verificato il valore della variabile $count....tutto apposto. Per tagliare la testa al toro allora ho sostituito alla variabile $count una cosatante (per esempio 5). 5 è per forza maggiore o uguale a 1, quindi il risultato del test è forzato ad essere true, ma invece continua per il false!

Vi è mai capitato qualcosa di simile?
sapete darmi un'aiuto?
brianss è offline   Rispondi citando il messaggio o parte di esso
Old 15-08-2010, 12:13   #2
anonimizzato
 
Messaggi: n/a
edit

Ultima modifica di anonimizzato : 15-08-2010 alle 12:24.
  Rispondi citando il messaggio o parte di esso
Old 15-08-2010, 12:20   #3
brianss
Member
 
Iscritto dal: Mar 2006
Messaggi: 89
Sicurissimo... $count funziona perfettamente sia in locale che in remoto. tra l'altro la sostituzione di $count con una costante è stato fatto solo per puro scrupolo...

ed effettivamente in locale funziona e su server no! E' questo che davvero non torna e non so dove sbattere la testa....
la versione php è la stessa

Ultima modifica di brianss : 15-08-2010 alle 12:21. Motivo: ortografia
brianss è offline   Rispondi citando il messaggio o parte di esso
Old 15-08-2010, 12:25   #4
anonimizzato
 
Messaggi: n/a
Quote:
Originariamente inviato da brianss Guarda i messaggi
Sicurissimo... $count funziona perfettamente sia in locale che in remoto. tra l'altro la sostituzione di $count con una costante è stato fatto solo per puro scrupolo...

ed effettivamente in locale funziona e su server no! E' questo che davvero non torna e non so dove sbattere la testa....
la versione php è la stessa
Ah ok, scusami ho editato perchè rileggendo meglio si capiva che la variabile $count non poteva non essere inizializzata.

Molto strano in effetti.
  Rispondi citando il messaggio o parte di esso
Old 15-08-2010, 12:26   #5
anonimizzato
 
Messaggi: n/a
Domanda: solo in quel punto o anche in altri hai un comportamento "anomalo"?

Prova a postare una porzione di codice un pò più estesa (se puoi) magari si riesce a capire meglio l'eventuale causa.
  Rispondi citando il messaggio o parte di esso
Old 15-08-2010, 12:36   #6
brianss
Member
 
Iscritto dal: Mar 2006
Messaggi: 89
questo comportamento non lo riscontro da nessun'altra parte
ecco il codice più esteso...aggiungo dei commenti

Codice:
// vengono contate le righe dell'insieme dei risultati
$count=mysql_num_rows($result);

// se ci sta almeno una riga in tabella che matcha con username allora l'username già esiste e fa il redirect
if($count >= 1)
    header("location:../registrazione.php?regmsg=Attenzione l'username scelto non è disponibile");

//altrimenti prosegue con la normale procedura
//pulisci tutti i campi inseriti dall'utente
ovviamene la funziona mysql_num_rows e testata e funziona perfettamente.

inoltre la funzione header in altre pagine, il suo dovere di interrompere lo script e cambiare pagina lo fa benissimo.
brianss è offline   Rispondi citando il messaggio o parte di esso
Old 15-08-2010, 16:11   #7
anonimizzato
 
Messaggi: n/a
Solo un consiglio: dopo che fai un redirect con

Codice:
header("location ...")
metti subito dopo un
Codice:
exit();
Codice:
header("location ...");
exit();
In questo modo l'escuzione dello script termina altrimenti prosegue anche dopo il redirect.

Ciao.
  Rispondi citando il messaggio o parte di esso
Old 15-08-2010, 16:33   #8
brianss
Member
 
Iscritto dal: Mar 2006
Messaggi: 89
si, aggiungendo exit() ho la garanzia che lo script termina, ed effettivamente ora funziona sia in locale che su server.

Mi resta però un interrogativo: come mai in locale la versione precedente funzionava? forse il colpevole potrebbe essere il modo in cui il server gestisce le richieste di redirect?
può esistere una cosa del genere? Onestamente ho i miei dubbi, ma va detto che non conosco a fondo le configurazioni che può avere apache
brianss è offline   Rispondi citando il messaggio o parte di esso
Old 15-08-2010, 18:38   #9
anonimizzato
 
Messaggi: n/a
Uhm, non saprei è un pò che sono fermo con PHP.

Tuttavia mi stai dicendo che ora il problema sulla variabile $count è risolto?
  Rispondi citando il messaggio o parte di esso
Old 15-08-2010, 22:39   #10
brianss
Member
 
Iscritto dal: Mar 2006
Messaggi: 89
si risolto, ma preciso che il problema non è la variabile $count (non lo è mai stato).

Pare invece che era la funzione header che in locale terminava lo script, mentre in remoto no.

cmq ora è risolto ti ringrazio
brianss è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


Recensione HUAWEI Mate X7: un foldable ottimo, ma restano i soliti problemi Recensione HUAWEI Mate X7: un foldable ottimo, m...
Nioh 3: souls-like punitivo e Action RPG Nioh 3: souls-like punitivo e Action RPG
Test in super anteprima di Navimow i220 LiDAR: il robot tagliaerba per tutti Test in super anteprima di Navimow i220 LiDAR: i...
Dark Perk Ergo e Sym provati tra wireless, software via browser e peso ridotto Dark Perk Ergo e Sym provati tra wireless, softw...
DJI RS 5: stabilizzazione e tracking intelligente per ogni videomaker DJI RS 5: stabilizzazione e tracking intelligent...
Reddit punterà sull'AI per miglio...
Samsung ha obiettivi molto ambiziosi per...
I produttori non faranno sconti sulle me...
Ubisoft potrebbe cedere pezzi se il pian...
Qualcomm potrebbe utilizzare una tecnolo...
Starfield per Nintendo Switch 2 potrebbe...
Un MacBook Pro a -300€, i MacBook Air M4...
Amazon abbassa i prezzi sugli iPhone: sc...
Amazon, ancora sconti sugli smartphone A...
iPhone Air 2 'riciclerà' alcuni c...
Offerta Amazon da non perdere: lo speake...
Nioh 3 debutta alla grande su Steam: pri...
Al centro della Via Lattea ci potrebbe e...
Elon Musk ora guarda alla Luna: SpaceX p...
La Cina ha lanciato nuovamente lo spazio...
Chromium
GPU-Z
OCCT
LibreOffice Portable
Opera One Portable
Opera One 106
CCleaner Portable
CCleaner Standard
Cpu-Z
Driver NVIDIA GeForce 546.65 WHQL
SmartFTP
Trillian
Google Chrome Portable
Google Chrome 120
VirtualBox
Tutti gli articoli Tutte le news Tutti i download

Strumenti

Regole
Non Puoi aprire nuove discussioni
Non Puoi rispondere ai messaggi
Non Puoi allegare file
Non Puoi modificare i tuoi messaggi

Il codice vB è On
Le Faccine sono On
Il codice [IMG] è On
Il codice HTML è Off
Vai al Forum


Tutti gli orari sono GMT +1. Ora sono le: 22:45.


Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Served by www3v