Newsgroup: it.comp.www.php
Titolo: differenza tra "exit" e "die"

exit('si � verificato un errore');
die('si � verificato un errore');
 
Qual'� la differenza?

 Qual'è la differenza?
 
nessuna.
 
-- 
Alessandra
 
Se la religione è la conoscenza voglio restare ignorante - Nicola
Vahatalo


 
Eppure secondo me 'exit' si usa quando si vuole interrompere 
l'esecuzione del codice php, ma non a causa di un errore, o di un 
controllo che ha dato un esito negativo, ma semplicemente perchč, per 
l'operazione che deve essere svolta, non sono necessarie ulteriori 
elaborazioni.
 
Invece 'die' si dovrebbe sempre usare per il interrompere l'esecuzione, 
ma solo in caso ci si accorge che qualcosa č andato male: l'utente ad 
es. ha digitato una password sbagliata, ecc.
 
IHMO

 IHMO
 
 
Tratto da 
http://php.net/manual/en/function.die.php
 
This language construct is equivalent to exit().
 
die() e exit() sono costrutti del linguaggio, non hanno molto a che fare 
a che fare con il modo in cui vuoi gestire il flusso del tuo programma
 
Usare un
die();
al posto di un
echo "Metti la password giusta";
non mi pare un grande passo avanti in termini di UX, né di buona 
programmazione
 
M
-- 
I fatti mi cosano

Bhè die() è più violento.
 
 
http://stackoverflow.com/questions/1795025/what-are-the-differences-in-die-and-exit-in-php
 


 
appunto

 programmazione
 
Dipende.
Forse cmq in questo caso è meglio
 
if ($pwd='abc') {
echo 'benvenuto'
} else {
echo 'password errata';
}

 }
-------------------8<------------------
 
benvenuto
 
 
;)
 
Bye.


Sì, è meglio se hai molta fiducia nella gente


echo 'password errata';
 
Equivale a un die().
 
Leonardo (suicidio, per la precisione).
 
-- 
What would'st thou do, my squire so gay, that rides beside my reine
Were ye Glenallan's Earl this tide, and I were Roland Cheyne?
To turn the rein were sin and shame, to fight were wondrous peril:
What would ye do now, Roland Cheyne, were ye Glenallan's Earl?

 Leonardo (suicidio, per la precisione).
 
Visto che non sono esperto come voi, a questo punto sarebbe gradita 
qualche spiegazione più chiara.
Con le battute acide, si riesce ad imparare molto poco...
 


if ($pwd='abc') { ...
 
$pwd='abc' è sempre true.
 
Meglio usare un operatore di confronto che uno di assegnazione ;)
 
(Mannaggia ai linguaggi che permettono le assegnazioni di variabili 
all'interno dei condizionali! 
Sì, smannaggio anche il C, allora? :) )

 Con le battute acide, si riesce ad imparare molto poco...
 
Era una battuta in buona fede perché è un errore che capita anche agli 
esperti, non solo ai principianti.
 
Alcuni consigliano di girare l'if:
 
if ('abc' = $pwd) {
 
che ti dà errore perché non puoi assegnare un valore a una costante, 
quindi te ne accorgi prima che sia troppo tardi (alias: quando hai il 
codice in produzione e fai entrare cani e porci)
 
Bye.

 Il che è sempre vero, quindi non esegui mai l'else.
 
Adesso è tutto chiaro.
Avevo paura di chiedere anche spiegazioni, perchè pensavo chissà che 
cosa avessi pasticciato.
Mamma mia, mettete a volte certe soggezioni, e vabè :-b
 
Cmq così dovrebbe andar bene
 
$pwd == 'abc'
 
oppure ho commesso qualche altra stupidaggine?
 
PS
 
Comunque prima o poi me ne sarei accorto.
Di solito testo le mie applicazioni molto attentamente: uso persino 
delle applicazioni tester, per testare in modo automatico certe 
funzionalità.

 
 
sì, la password è in chiaro 

 sï¿½, la password ï¿½ in chiaro
 
beh questo lo sapevo.
Dunque che si fa?
https?

hash della password, con sale (salt).
se hai a disposizione bcrypt usalo che è meglio, se ne è parlato poco fa: 
https://groups.google.com/forum/?hl=it%3Db6a0650c9bb488e3&fromgroups=#!topic/it.comp.www.php/nbaortDjyAY
 

>> if a=1: print "ciao"
  File "<stdin>", line 1
    if a=1: print "ciao"
        ^
SyntaxError: invalid syntax
 
 
ohhhhhh!!!!!   ;-)