2010-05-18 3 views
4

J'ai deux instructions d'insertion. Le second ne sera exécuté qu'après l'exécution réussie du premier. Ce que je voudrais faire est:Comment puis-je vérifier que des données ont été insérées avec succès?

$sqlone="Insert into ....."; 
$sqltwo="Insert into....."; 

If (mysql_query($sqlone)) 
{ 
    If (mysql_query($sqltwo)) 
    { 
     Show message Data inserted in both tables. 
    } 
} 
+1

Obtenez-vous une erreur en utilisant le code ci-dessus? Il devrait fonctionner parfaitement. 'mysql_query()' retourne 'TRUE' en cas de succès et' FALSE' en cas d'erreur pour les insertions. – anomareh

+0

votre question a la réponse –

Répondre

6

Essayez cette

$query1 = '...'; 
$query2 = '...'; 
$query3 = '...'; 
if(mysql_query($query1)) { 
    if(mysql_query($query2)) { 
      if(mysql_query($query3)) { 
       echo "success"; 
      } 
      else { echo "error"; } 
    } 
    else { echo "error"; } 
} 
else { echo "error"; } 
+1

Non seulement avez-vous réitérer ce que 3 personnes ont déjà dit, vous avez une faute de frappe. $ query3 est ouvert avec un double guillemet et fermé avec un seul. – anomareh

1

Cette syntaxe ressemble à cela fonctionne, comme ...

For other type of SQL statements, INSERT, UPDATE, DELETE, DROP, etc, mysql_query() returns TRUE on success or FALSE on error.

http://au2.php.net/mysql_query

1

De l'documentation:

Pour les autres types d'instructions SQL, INSERT, UPDATE, DELET E, DROP, etc, mysql_query() renvoie TRUE en cas de succès ou FALSE en cas d'erreur.

Pour autant que je peux voir il n'y a pas de problème avec ce que vous avez déjà.

0

Vous pouvez également créer la transaction de DB et dans lequel commit d'un insert exécutera la deuxième instruction d'insertion ..

Questions connexes