Annuler une requetes BEGIN WORK ?

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : Annuler une requetes BEGIN WORK ?

par jean-baptiste » 03 avr. 2008, 15:56

Oui c'était ça mais je ne comprenais pas vraiment il me fallait un exemple concret pour comprendre le principe et c'est ce que j'ai eu !

Merci quand même .

par Rei Itchido » 03 avr. 2008, 15:53

C'est le principe des transactions ;)

http://dev.mysql.com/doc/refman/5.0/fr/commit.html

Annuler une requetes BEGIN WORK ?

par jean-baptiste » 03 avr. 2008, 15:45

Bonjour voilà un petit exemple et j'aimerai savoir si cela est possible :

J'ai deux requêtes X e Y ! J'aimerai faire en sorte et cela que en mysql que si l'insert de donné de ma requête X réussi mais que celui de Y échoue cela annule l'exécution de X ! Je le fessai en php mais j'ai entendu parler que on pouvais le faire en Mysql est-ce une question de BEGIN WORK ou peu etre de suppression en cascade ?

Si vous en avez entendu parler ou si vous avez une méthode je suis preneur je me rend compte que en faite mysql est bien plus riche que je le pensai !

Salutation Jean-Baptiste .

EDIT:

Bon en faite un collègue viens de trouver un bout de code qui répond à mon problème :

MYSQL stock donc tout sous une même variable fait des test et envoie tout d'un bloque si cela est bon !

Voilà le code pour ceux à qui ça interesse :

Code : Tout sélectionner

$rs1 = mysql_query("START TRANSACTION"); $rs2 = mysql_query($query1); $rs3 = mysql_query($query2); if($error) { $rsx = mysql_query("ROLLBACK"); } else { $rsx = mysql_query("COMMIT"); } Use mysql_error() or mysql_errno() to see if an error occurred.