IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

PHP & Base de données Discussion :

pb pour vérifier l'excution d'une requête d'insertion


Sujet :

PHP & Base de données

  1. #1
    Membre confirmé
    Profil pro
    Étudiant
    Inscrit en
    Juin 2008
    Messages
    90
    Détails du profil
    Informations personnelles :
    Âge : 36
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juin 2008
    Messages : 90
    Par défaut pb pour vérifier l'excution d'une requête d'insertion
    Bonjour,

    Voila, je suis en stage et j'ai des formulaire d'ajout et de suppression a faire sur une base de donnée et jaimerai qu'après l'execution de la requête d'insertion ou de suppression qu'il vérifie bien si celle-ci a bien été faite et qu'il renvoi un message à l'utilisateur. comment faire? j'ai essayé de faire différente manière telle que:


    Toutes ces solutions que je croyait avoir trouvée ne marche pas à tout les coups par exemple elle ne prènne pas en compte si j'ai posé un nombre de champ maximum pour un champ dans la base de données ou encore le type.

    merci d'avance.

  2. #2
    Membre chevronné
    Profil pro
    Inscrit en
    Septembre 2006
    Messages
    498
    Détails du profil
    Informations personnelles :
    Âge : 44
    Localisation : France

    Informations forums :
    Inscription : Septembre 2006
    Messages : 498
    Par défaut
    Pour ton dernier bout de code, la condition sera toujours vraie! Il faudrait mettre :
    Code PHP : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
    $rs = mysql_query($requete)
    if($rs) 
    { 
    	echo "La personne a été ajoutée."; 
    } 
    else 
    { 
    	echo "La personne n'a pu être ajoutée dans la base de donnée.<br>" . $sql . "<br>" . mysql_errno() . " : " . mysql_error() . "<br>"; 
    }

  3. #3
    Membre confirmé
    Profil pro
    Étudiant
    Inscrit en
    Juin 2008
    Messages
    90
    Détails du profil
    Informations personnelles :
    Âge : 36
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juin 2008
    Messages : 90
    Par défaut
    ça ne change rien: je vien de tester et par exemple pour une table de ce genre CYCLE(IdCycle(INT(2)), LibelleCycle(VARCHAR(100)))
    quand j'ai voulu ajouter IdCycle: "aa" et LibelleCycle: "aaaaaa" il m'a mis "aa" = "0" dans la table (comme clé primaire) et le bon libelle et pourtant le message m'a mis qu'il n'avait pas été ajouté dans la table et quand j'ai jouter un bon enregistremnt il la bien enrgistré mais m'a mis comme message qu'il ne l'avait pas fait ???

  4. #4
    Membre chevronné
    Profil pro
    Inscrit en
    Septembre 2006
    Messages
    498
    Détails du profil
    Informations personnelles :
    Âge : 44
    Localisation : France

    Informations forums :
    Inscription : Septembre 2006
    Messages : 498
    Par défaut
    Tu es sûre que l'enregistrement n'y était pas avant? Je viens de faire un test et la requête renvoie une erreur :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1366 : Incorrect integer value: 'aa' for column 'IdCycle' at row 1
    Normal quoi!

  5. #5
    Membre confirmé
    Profil pro
    Étudiant
    Inscrit en
    Juin 2008
    Messages
    90
    Détails du profil
    Informations personnelles :
    Âge : 36
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juin 2008
    Messages : 90
    Par défaut
    non moi sa ne me met pas ça du tout
    voila les trois erreur que j'ai avec ls trois metode différentes:

    • Records deleted: 1 [/*]
    • La personne n'a pu être ajoutée dans la base de donnée.[/*]
    • 1062 : Duplicate entry '0' for key 1[/*]

  6. #6
    Membre chevronné
    Profil pro
    Inscrit en
    Septembre 2006
    Messages
    498
    Détails du profil
    Informations personnelles :
    Âge : 44
    Localisation : France

    Informations forums :
    Inscription : Septembre 2006
    Messages : 498
    Par défaut
    Franchement, je ne comprends pas!
    Montre moi le résultat de la commande SQL :
    ainsi que ta requête exacte d'insertion stp

  7. #7
    Membre confirmé
    Profil pro
    Étudiant
    Inscrit en
    Juin 2008
    Messages
    90
    Détails du profil
    Informations personnelles :
    Âge : 36
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juin 2008
    Messages : 90
    Par défaut
    tien voici le début du code :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    <?php
    session_start(); 
    $nom=$_SESSION['nom'];
    $_SESSION['nom']=$nom; 
     
    function maproc1($requete,$reponse) 
    {
    	//connection au serveur MySql
    	$connexion = mysql_connect("localhost", "root", "") OR die('Erreur de connexion');
    	//connection à la base de donnée
    	mysql_select_db("LaMoulinetteCACE") OR die('Sélection de la base impossible');
    	//lire des données dans une table
    	$rs1 = mysql_query($requete) or die ('Erreur sql !<br />'.mysql_error()); 
    		echo"<br><br>";
    	printf ("Records deleted: %d\n", mysql_affected_rows());
    	echo"<br><br>";
    	if ($rs) 
    	echo mysql_affected_rows()."ajoutée dans la base de données."; 
    		echo"<br><br>";
     
    	$rs = mysql_query($requete);
    	if($rs) 
    	{ 
    		echo "La personne a été ajoutée."; 
    	} 
    	else 
    	{ 
    		echo "La personne n'a pu être ajoutée dans la base de donnée.<br>" . $sql . "<br>" . mysql_errno() . " : " . mysql_error() . "<br>"; 
    	}
     
     
    	//echo $reponse;
    }
     
    // Appel :
    if ($_SESSION['nom']=="cycle")
    {
    	$TxtCodeCycle = $_POST["TxtCodeCycle"];
    	$TxtLibelleCycle= $_POST["TxtLibelleCycle"];
    	maproc1("INSERT INTO Cycle (IdCycle, LibelleCycle) VALUE ('".$TxtCodeCycle."', '".$TxtLibelleCycle."')","le cycle à bien été créé.");
    }
    else
    {
    je ne voit pas se que tu veu quand tu dit vouloir le résultat de la commande SQL "describe Cycle" ?

  8. #8
    Membre chevronné
    Profil pro
    Inscrit en
    Septembre 2006
    Messages
    498
    Détails du profil
    Informations personnelles :
    Âge : 44
    Localisation : France

    Informations forums :
    Inscription : Septembre 2006
    Messages : 498
    Par défaut
    ce qui m'intéressait c'était la requête exact d'insertion ainsi que le structure de ta table cycle avec les paramètres (auto-increment, unsigned, not null, default value,...)

  9. #9
    Membre confirmé
    Profil pro
    Étudiant
    Inscrit en
    Juin 2008
    Messages
    90
    Détails du profil
    Informations personnelles :
    Âge : 36
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juin 2008
    Messages : 90
    Par défaut
    ba je n'est paa fait de requête d'insertion pour l'insérer je l'ai faite à l main et es données remplis en csv mai tien voila la structure:
    Images attachées Images attachées  

  10. #10
    Membre chevronné
    Profil pro
    Inscrit en
    Septembre 2006
    Messages
    498
    Détails du profil
    Informations personnelles :
    Âge : 44
    Localisation : France

    Informations forums :
    Inscription : Septembre 2006
    Messages : 498
    Par défaut
    Structure ok!!
    Essaie d'éxécuter ce petit script :
    Code PHP : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    $connect = mysql_connect('localhost','root', '');
    mysql_select_db('LaMoulinetteCACE',$connect);
     
    $query = 'INSERT INTO CYCLE VALUES ("aa", "aaaaaa");';
     
    $res = mysql_query($query, $connect);
    if($res) 
    { 
    	echo "La personne a été ajoutée."; 
    } 
    else 
    { 
    	echo "La personne n'a pu être ajoutée dans la base de donnée.<br>" . $sql . "<br>" . mysql_errno() . " : " . mysql_error() . "<br>"; 
    }

  11. #11
    Membre confirmé
    Profil pro
    Étudiant
    Inscrit en
    Juin 2008
    Messages
    90
    Détails du profil
    Informations personnelles :
    Âge : 36
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juin 2008
    Messages : 90
    Par défaut
    voil la réponse que j'ai eu
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    La personne a bin été ajouter
    et il ets bien ajouter mais pas comme il faut :
    Images attachées Images attachées  

  12. #12
    Membre chevronné
    Profil pro
    Inscrit en
    Septembre 2006
    Messages
    498
    Détails du profil
    Informations personnelles :
    Âge : 44
    Localisation : France

    Informations forums :
    Inscription : Septembre 2006
    Messages : 498
    Par défaut
    même en ayant effacé préalablement ton mauvais enregistrement?

  13. #13
    Membre confirmé
    Profil pro
    Étudiant
    Inscrit en
    Juin 2008
    Messages
    90
    Détails du profil
    Informations personnelles :
    Âge : 36
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juin 2008
    Messages : 90
    Par défaut
    oui oui je lavai bien éffacé jai vérifié préalablement

Discussions similaires

  1. [2008R2] Echec d'exécution d'une requête pour un DataSet
    Par brinx dans le forum SSRS
    Réponses: 1
    Dernier message: 24/04/2012, 23h03
  2. Réponses: 3
    Dernier message: 08/05/2007, 17h32
  3. Réponses: 1
    Dernier message: 05/12/2005, 23h24
  4. Arrêt de l'exécution d'une requête MySQL dans DELPHI.
    Par joelmarc dans le forum Bases de données
    Réponses: 9
    Dernier message: 11/10/2004, 16h11
  5. Affichage du temps d'exécution d'une requête
    Par milka dans le forum PostgreSQL
    Réponses: 1
    Dernier message: 22/03/2004, 17h48

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo