PHP A Propos de OR DIE

PHP A Propos de OR DIE - PHP - Programmation

Marsh Posté le 03-05-2006 à 07:42:52    

Bonjour
je lance 5 lignes de commandes en php avec un or die car il s'agit d'insertion dands une BDD
si le resultat existe dans la base 1 il me dit ERREUR 1
ensuite je demande l'insertion dans les autres bases mais elle ne se fait pas
OR DIE arrete-t-il l'execution du reste du code ?
 
exemple :  
mysql blabla INSERT TABLE 1 blabla OR DIE erreur1
mysql UPDATE TABLE 2 blabla OR DIE erreur2
mysql INSERT TABLE 5 blabla OR DIE erreur5
mysql UPDATE TABLE 3 blabla OR DIE erreur3
mysql INSERT TABLE 0 blabla OR DIE erreur0
 et generalement il me renvoit erreur1 et rien de plus
 
merci


---------------
http://www.ypikay.com
Reply

Marsh Posté le 03-05-2006 à 07:42:52   

Reply

Marsh Posté le 03-05-2006 à 08:11:28    

erwan83 a écrit :

OR DIE arrete-t-il l'execution du reste du code ?


 
Dans la syntaxe "instruction 1 or die xxx"
Si l'instruction 1 ne se fait pas, le php affiche "xxx" et arrête en effet le reste du code. Et cet arrêt est valable pour toute la page HTML
C'est à dire que si t'as un truc de ce style

<HTML><HEAD></HEAD>
<BODY>
<?php
blablabla
blablabla
instruction or die erreur
blablabla
php?>
Suite de la page HTML<BR>
xxx
xxx
xxx
</BODY>
</HTML>


 
Si le "die" s'exécute, tu n'auras jamais la suite de ta page HTML
 
Personnellement, je préfère gérer mes erreurs ainsi

<HTML><HEAD></HEAD>
<BODY>
<?php
main()
{
    blablabla
    blablabla
    instruction or return (-1)
    blablabla
}
 
main()
php?>
Suite de la page HTML<BR>
xxx
xxx
xxx
</BODY>
</HTML>


 
Là, même si mon main() me renvoie "-1", le reste de ma page HTML s'affiche

Message cité 1 fois
Message édité par Sve@r le 03-05-2006 à 08:12:22

---------------
Vous ne pouvez pas apporter la prospérité au pauvre en la retirant au riche.
Reply

Marsh Posté le 03-05-2006 à 08:50:15    

erwan83 a écrit :


ensuite je demande l'insertion dans les autres bases mais elle ne se fait pas
OR DIE arrete-t-il l'execution du reste du code ?


 
Tu utilises donc des mots-clés que tu ne comprends pas ?  :sarcastic:  
Si tu avais pris la peine d'ouvrir la doc, tu aurais eu ta réponse en 2 ns :  
http://fr2.php.net/manual/en/function.die.php
 
pas croyable d'être aussi assisté  :pfff:  

Reply

Marsh Posté le 03-05-2006 à 09:13:47    

scusez moi, j'ai rien dit :p


Message édité par bixibu le 03-05-2006 à 09:14:47
Reply

Marsh Posté le 03-05-2006 à 09:37:16    

Sve@r a écrit :

Dans la syntaxe "instruction 1 or die xxx"
Si l'instruction 1 ne se fait pas, le php affiche "xxx" et arrête en effet le reste du code.  


 
C'est plutôt "si l'instruction renvoie false". Sinon ça ne fonctionne pas puisqu'il faut évidemment "false or die('blabla');" pour que le die s'exécute (autrement dit, "or die" n'est pas une spécificité particulière du langage, juste une utilisation astucieuse de l'opérateur 'or').
 
Un truc du style :
$foo = 0 or die('error');
 
rentre ainsi dans le die() (parce que l'affectation renvoie 0 équivalent à false) alors que l'instruction $foo = 0 s'est déroulée parfaitement.

Message cité 2 fois
Message édité par sielfried le 03-05-2006 à 09:37:52

---------------
StarCraft Professional Gaming Database | [Ze Topic] Starcraft/BroodWar
Reply

Marsh Posté le 03-05-2006 à 12:39:56    

smaragdus a écrit :

Tu utilises donc des mots-clés que tu ne comprends pas ?  :sarcastic:  
Si tu avais pris la peine d'ouvrir la doc, tu aurais eu ta réponse en 2 ns :  
http://fr2.php.net/manual/en/function.die.php
 
pas croyable d'être aussi assisté  :pfff:


 
sois poli si t'es pas joli


---------------
http://www.ypikay.com
Reply

Marsh Posté le 03-05-2006 à 14:17:35    

sielfried a écrit :

C'est plutôt "si l'instruction renvoie false". Sinon ça ne fonctionne pas puisqu'il faut évidemment "false or die('blabla');" pour que le die s'exécute (autrement dit, "or die" n'est pas une spécificité particulière du langage, juste une utilisation astucieuse de l'opérateur 'or').


 
Exact - Jolie précision... :jap:
 

erwan83 a écrit :

sois poli si t'es pas joli


Fais pas attention à smaragdus - C'est qu'un troll qui croit s'élever en enfonçant les autres...
 


T'as du mal avec le français ? Ou tu veux nous faire croire que tu lis couramment l'anglais ???  :sarcastic:  
http://fr2.php.net/manual/fr/function.die.php


Message édité par Sve@r le 03-05-2006 à 14:32:33

---------------
Vous ne pouvez pas apporter la prospérité au pauvre en la retirant au riche.
Reply

Marsh Posté le 03-05-2006 à 14:28:09    

sielfried a écrit :

rentre ainsi dans le die() (parce que l'affectation renvoie 0 équivalent à false) alors que l'instruction $foo = 0 s'est déroulée parfaitement.


Et ouais, c'est pour ça que c'est pas mal la misère ce genre de truc :(

Reply

Marsh Posté le 03-05-2006 à 17:00:56    

Ok folks thanks a lot to you. For those (the one) who need a precision I do think that my level in English is not so bad LOL (Laugh Out Loud ksa veut dire d'ailleurs)
 
Merci en tout cas à tous


---------------
http://www.ypikay.com
Reply

Marsh Posté le 03-05-2006 à 17:08:45    

ne jamais louper une occaz de se la peter !

Reply

Marsh Posté le 03-05-2006 à 17:08:45   

Reply

Marsh Posté le 17-07-2008 à 14:41:43    

:hello:  
 
Sans prendre ça comme une occase de se la pêter, LOL signifie Lot Of Laugh.
 
Bien cordialement


---------------
Mon Feed-back
Reply

Marsh Posté le 17-07-2008 à 14:43:33    

Et pour aller plus loin :
 
« lol », également orthographié « LOL », est un acronyme provenant de l'expression de langue anglaise « laugh out loud » (rire bruyamment). Il est également l'acronyme de « lots of laughs » (beaucoup de rires). On peut noter qu'en néerlandais « lol » signifie amusement. Toutefois cette coïncidence est très probablement le fruit du hasard. Notons au passage que certains prétendent que « lol » est à la base un smiley désignant un visage avec deux grands yeux « l l » et une bouche grande ouverte « o ». Toutefois, la véritable origine de ce terme n'est pas connue avec certitude. Certains[réf. nécessaire] évoquent tout de même 1973 comme date où « lol » fut employé pour la première fois.
 
(source : wikipedia)
 
Bien à vous


---------------
Mon Feed-back
Reply

Marsh Posté le 17-07-2008 à 16:26:00    

Psycho_job a écrit :

Et pour aller plus loin :
 
« lol », également orthographié « LOL », est un acronyme provenant de l'expression de langue anglaise « laugh out loud » (rire bruyamment). Il est également l'acronyme de « lots of laughs » (beaucoup de rires). On peut noter qu'en néerlandais « lol » signifie amusement. Toutefois cette coïncidence est très probablement le fruit du hasard. Notons au passage que certains prétendent que « lol » est à la base un smiley désignant un visage avec deux grands yeux « l l » et une bouche grande ouverte « o ». Toutefois, la véritable origine de ce terme n'est pas connue avec certitude. Certains[réf. nécessaire] évoquent tout de même 1973 comme date où « lol » fut employé pour la première fois.
 
(source : wikipedia)
 
Bien à vous


 
le déterrage qui sert à rien  [:prozac]

Reply

Marsh Posté le 17-07-2008 à 16:37:23    

Psycho_job a écrit :

:hello:  
 
Sans prendre ça comme une occase de se la pêter, LOL signifie Lot Of Laugh.
 
Bien cordialement


That's laughing out loud, thank you very much.


---------------
Whichever format the fan may want to listen is fine with us – vinyl, wax cylinders, shellac, 8-track, iPod, cloud storage, cranial implants – just as long as it’s loud and rockin' (Billy Gibbons, ZZ Top)
Reply

Marsh Posté le 21-07-2008 à 03:09:44    

drasche a écrit :


That's laughing out loud, thank you very much.


 
Ben oui ou Laugh Out Loud comme mdr signifie Mes Dents Rigolent  :pt1cable:  :bounce:  
Well, wathever hu ?


---------------
http://www.ypikay.com
Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed