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 :

Vider une table puis insérer des données


Sujet :

PHP & Base de données

  1. #1
    Membre régulier Avatar de moonia
    Profil pro
    Inscrit en
    Novembre 2003
    Messages
    283
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2003
    Messages : 283
    Points : 82
    Points
    82
    Par défaut Vider une table puis insérer des données
    je voudrais avant d'inserer dans la table structure_responsable vider d'abord le contenu de cette derniere apres enregister ( donc j'ai fais ça
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    if ($champs2 == "") 
    {
    mysql_select_db($database_dbprotect, $dbprotect);
     
     
    $requete1 = sprintf("delete from structure_responsable  " );
    mysql_select_db($database_dbprotect, $dbprotect);
    $result_1= mysql_query($requete1, $dbprotect) or die(mysql_error());
     
    $add_user1 = sprintf("INSERT INTO structure_responsable(id_str,valeur,id_user) values ('','$champs1','$id')");
    mysql_select_db($database_dbprotect, $dbprotect);
    $result1= mysql_query($add_user1, $dbprotect) or die(mysql_error());
      }
    mais ca na marche pas ,elle rajoute les nouveaux enregistrement , elle ne supprime pas les anciens

  2. #2
    Membre régulier Avatar de moonia
    Profil pro
    Inscrit en
    Novembre 2003
    Messages
    283
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2003
    Messages : 283
    Points : 82
    Points
    82
    Par défaut
    correction , ca marche le contenue de la table est effacee mais je nepeux enregistrer qu'une seule ligne !!!!!!!!!!!
    pk ??

  3. #3
    Membre actif
    Homme Profil pro
    Inscrit en
    Août 2003
    Messages
    235
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Août 2003
    Messages : 235
    Points : 269
    Points
    269
    Par défaut
    Salut,

    essaie ça pour voir:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    if ($champs2 == "") 
    {
    mysql_select_db($database_dbprotect, $dbprotect);
     
     
    $requete1 = "delete from structure_responsable";
    $result_1= mysql_query($requete1) or die(mysql_error());
     
    $add_user1 = "INSERT INTO structure_responsable(id_str,valeur,id_user) values ('','$champs1','$id')";
    $result1= mysql_query($add_user1) or die(mysql_error());
      }

  4. #4
    Membre actif
    Homme Profil pro
    Inscrit en
    Août 2003
    Messages
    235
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Août 2003
    Messages : 235
    Points : 269
    Points
    269
    Par défaut
    Citation Envoyé par moonia
    correction , ca marche le contenue de la table est effacee mais je nepeux enregistrer qu'une seule ligne !!!!!!!!!!!
    pk ??
    Forcémment, si tu deletes a chaque fois et que tu ne fais qu'un insert, t'auars toujours une seule ligne.

  5. #5
    Membre expert Avatar de Amara
    Profil pro
    Inscrit en
    Juillet 2004
    Messages
    2 688
    Détails du profil
    Informations personnelles :
    Localisation : France, Sarthe (Pays de la Loire)

    Informations forums :
    Inscription : Juillet 2004
    Messages : 2 688
    Points : 3 115
    Points
    3 115
    Par défaut
    Citation Envoyé par Steph82
    Forcément, si tu deletes a chaque fois et que tu ne fais qu'un insert, t'auras toujours une seule ligne.


    Pas très constructif j'en conviens mais ça fais du bien.

  6. #6
    Membre régulier Avatar de moonia
    Profil pro
    Inscrit en
    Novembre 2003
    Messages
    283
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2003
    Messages : 283
    Points : 82
    Points
    82
    Par défaut
    oui t'as raison mais le pb que sur ma page php ,j'ai deux champs texte a remplir qui corresponsent a deux tables differe et on est pas obliger de modifier les 2 champs em meme temps
    je te donne le code pour comprendre
    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
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    104
    105
    106
    107
    108
    109
    110
    111
    112
    113
    114
    115
    116
    117
    118
    119
    120
    121
    122
    123
    124
    125
    126
    127
    128
    129
    130
    131
    132
    133
    134
    135
    136
    137
    138
    139
    140
    141
    142
    143
    144
    145
    146
    147
    148
    <?php require_once('conexion.php'); ?>
    <?php
    /*
    -----------------------------------
    ------ SCRIPT DE PROTECTION -------
             
    -----------------------------------
    */
     
    session_start(); // On relaye la session
    if (session_is_registered("authentification") && $_SESSION['privilege'] == "admin"){ // vérification sur la session authentification (la session est elle enregistrée ?)
    // ici les éventuelles actions en cas de réussite de la connexion
    }
    else {
    header("Location:connexion2.php?erreur=intru"); // redirection en cas d'echec
    }
    ?>
    <?php
    if($_POST['action'] == 'submitted')
    {
    $champs1 = $_POST['structure_responsable'];
    $champs2 = $_POST['validé_par'];
    $id= $_SESSION['id_user'];    
     
    if (($champs1 !== "") && ($champs2==! "" ))
     
    {
    mysql_select_db($database_dbprotect, $dbprotect);
    $requete1 = sprintf("delete from structure_responsable where 'id_user '= '$id'" );
    mysql_select_db($database_dbprotect, $dbprotect);
    $result_1= mysql_query($requete1, $dbprotect) or die(mysql_error());
     
    //$requete2 = sprintf("DROP TABLE DROP TABLE validé_par" );
    //mysql_select_db($database_dbprotect, $dbprotect);
    //$result2= mysql_query($requete2, $dbprotect) or die(mysql_error());  ;
     
    $add_user1 = sprintf("INSERT INTO structure_responsable(id_str,valeur,id_user) values ('','$champs1','$id')");
    $add_user2 = sprintf("INSERT INTO validé_par (id_valide, valeur,id_user) values ('','$champs2','$id')");
     
    mysql_select_db($database_dbprotect, $dbprotect);
    $result1= mysql_query($add_user1, $dbprotect) or die(mysql_error());
    $result2= mysql_query($add_user2, $dbprotect) or die(mysql_error());
     
    }
    else 
     {
     
    if ($champs2 == "") 
    {
    mysql_select_db($database_dbprotect, $dbprotect);
     
     
    $requete1 = "delete from structure_responsable";
    $result_1= mysql_query($requete1) or die(mysql_error());
     
    $add_user1 = "INSERT INTO structure_responsable(id_str,valeur,id_user) values ('','$champs1','')";
    $result1= mysql_query($add_user1) or die(mysql_error());
      } 
     
      else
      { 
       if ($champs1 == "")
        {
      mysql_select_db($database_dbprotect, $dbprotect);
     
    //$requete2 = sprintf("DROP TABLE DROP TABLE validé_par" );
    //mysql_select_db($database_dbprotect, $dbprotect);
    //$result2= mysql_query($requete2, $dbprotect) or die(mysql_error());  ;
     
       $add_user2 = sprintf("INSERT INTO validé_par (id_valide,valeur,id_user) values ('','$champs2','$id')");
       mysql_select_db($database_dbprotect, $dbprotect);
       $result2= mysql_query($add_user2, $dbprotect) or die(mysql_error());
     
        }
       }
     
    }
     
     
    header("Location:modif.php?add=ok"); // redirection si création réussie
     
    }
    ?>
    <html>
    <head>
    <title>Espace modification</title>
     
    <link href="styles.css" rel="stylesheet" type="text/css">
    </head>
    <body>
    <br> <br> <br>
    <table width="600" height="280" border="1" align="center" BGCOLOR="    #F0F8FF"  >
    <tr>
     
       <th width="639" align="Center" >
          <div id="moi" align="center">
            <h2><MARQUEE behavior="scroll" align="center" direction="left" height="120" scrollamount="2" scrolldelay="1" onmouseover='this.stop()' onmouseout='this.start()'>
    Mise en oeuvre d'un projet Foad</MARQUEE></h2>
          </div>
       </th>
    </tr>
    <tr >
    <td align ="center"  >
                <h3>*&nbsp;&nbsp;Tableau de bord de conduite de projet&nbsp;&nbsp;* </h3>
     
                <fieldset align="center">
     
    <form name="page_form" action=""  method="post">
    <table width="530" cellpadding="4" cellspacing="1" border="0" align = "center" frame= "hsides">        
    <tr>
        <td>Modification du champ&nbsp;&nbsp;<em>"Structure-Responsable"&nbsp;</em>:</td>
        <td><input type="text" name="structure_responsable" size="15" value=""></td>
     </tr>   
    <tr>
        <td >Modification du champ&nbsp;&nbsp;<em>"validé par"&nbsp;</em>:</td>
        <td><input type="text" name="validé_par" size="15" value=""> </td>
     
    </tr>
        <tr></tr><tr></tr><tr></tr><tr></tr>
     
        <tr></tr>
        <tr align ="center"><br><br>
        <td colspan=2><input type="hidden" name="action" value="submitted">
             <input name="submit"  value="Enregistrer" type="submit"></td>
     
         <tr align ="center"> <td colspan=2><input type="button" value=" Valider" onClick="document.location='accueil2.php'">  </td>    
    </tr>
     
    <br>
     
    </table>    
            <br>
     
    </form>
     
    <br>
     
     
     
     
     
     
    </fieldset>    
    <br>
     
     
    </table></body>
    </html>
    qcq je doit faire

  7. #7
    Membre actif
    Homme Profil pro
    Inscrit en
    Août 2003
    Messages
    235
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Août 2003
    Messages : 235
    Points : 269
    Points
    269
    Par défaut
    Explique déjà ce que tu dois faire, le but du script. En tout cas a 1ere vue, ça sert a rien de faire des
    mysql_select_db
    dans tous les sens si tu ne changes pas de base.

    En + tu as une table: validé_par. Je te déconseille fortement les accents, je savais même pas que l'on pouvait. Enfin, inutile de faire des sprintf, ça sert pas a grand chose.

  8. #8
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Avril 2006
    Messages
    36
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2006
    Messages : 36
    Points : 35
    Points
    35
    Par défaut
    Citation Envoyé par Steph82
    En + tu as une table: validé_par. Je te déconseille fortement les accents
    Oui, les accents, comme les espaces, sont à proscrire. Tu risquerais d'avoir des problèmes ensuite pour la lecture ou l'écriture dans la base. Pareil bien sûr pour les noms des colonnes.
    D'une manière générale, évite tous les caractères spéciaux dans les bases de données, ou bien penses à les convertir avant.
    Désolé de pas répondre à la question première mais ça me semble tout aussi important...

  9. #9
    Membre régulier Avatar de moonia
    Profil pro
    Inscrit en
    Novembre 2003
    Messages
    283
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2003
    Messages : 283
    Points : 82
    Points
    82
    Par défaut
    merci beaucoup pour vos conseils je tienderai compte promi

    Le but de mon script est le suivant :
    donc c'es d'enregitstrer des donnes dans2 tables differ , il y a deux champs texte qui represente a eux chacun un champs pour faire entrer les donnes dans ces 2 tables

  10. #10
    Membre actif
    Homme Profil pro
    Inscrit en
    Août 2003
    Messages
    235
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Août 2003
    Messages : 235
    Points : 269
    Points
    269
    Par défaut
    Tu fais un peu l'inverse de ce que j'aurais fais:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    if(isset($champ1) && ($champ1 != null))
    {
     // Enreg champ1
    }
     
    if(isset($champ1) && ($champ1 != null))
    {
      // Enreg champ2
    }

  11. #11
    Membre régulier Avatar de moonia
    Profil pro
    Inscrit en
    Novembre 2003
    Messages
    283
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2003
    Messages : 283
    Points : 82
    Points
    82
    Par défaut
    dis moi qu'elle est la difference entre les 2 lignes , je crois que pour la 2eme je vais changer le 1 en 2 :d ok

  12. #12
    Membre régulier Avatar de moonia
    Profil pro
    Inscrit en
    Novembre 2003
    Messages
    283
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2003
    Messages : 283
    Points : 82
    Points
    82
    Par défaut
    j'ai simplife mon code comme ceci :
    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
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    104
    105
    <?php require_once('conexion.php'); ?>
    <?php
    /*
    -----------------------------------
    ------ SCRIPT DE PROTECTION -------
             
    -----------------------------------
    */
     
    session_start(); // On relaye la session
    if (session_is_registered("authentification") && $_SESSION['privilege'] == "admin"){ // vérification sur la session authentification (la session est elle enregistrée ?)
    // ici les éventuelles actions en cas de réussite de la connexion
    }
    else {
    header("Location:connexion2.php?erreur=intru"); // redirection en cas d'echec
    }
    ?>
    <?php
    $id= $_SESSION['id_user'];    
    mysql_select_db($database_dbprotect, $dbprotect);
    $requete1 = sprintf("delete from structure_responsable " );
    mysql_select_db($database_dbprotect, $dbprotect);
    $result_1= mysql_query($requete1, $dbprotect) or die(mysql_error());
    ?>
    <?php
    if($_POST['action'] == 'submitted')
    {
    $champs1 = $_POST['structure_responsable'];
     
     
    $add_user1 = sprintf("INSERT INTO structure_responsable(id_str,valeur,id_user) values ('','$champs1','$id')");
     
     
    mysql_select_db($database_dbprotect, $dbprotect);
    $result1= mysql_query($add_user1, $dbprotect) or die(mysql_error());
     
     
     
     
     
    header("Location:modif_struc.php?add=ok"); // redirection si création réussie
     
    }
    ?>
    <html>
    <head>
    <title>Espace modification</title>
     
    <link href="styles.css" rel="stylesheet" type="text/css">
    </head>
    <body>
    <br> <br> <br>
    <table width="600" height="280" border="1" align="center" BGCOLOR="    #F0F8FF"  >
    <tr>
     
       <th width="639" align="Center" >
          <div id="moi" align="center">
            <h2><MARQUEE behavior="scroll" align="center" direction="left" height="120" scrollamount="2" scrolldelay="1" onmouseover='this.stop()' onmouseout='this.start()'>
    Mise en oeuvre d'un projet Foad</MARQUEE></h2>
          </div>
       </th>
    </tr>
    <tr >
    <td align ="center"  >
                <h3>*&nbsp;&nbsp;Tableau de bord de conduite de projet&nbsp;&nbsp;* </h3>
     
                <fieldset align="center">
     
    <form name="page_form" action=""  method="post">
    <table width="530" cellpadding="4" cellspacing="1" border="0" align = "center" frame= "hsides">        
    <tr>
        <td>Modification du champ&nbsp;&nbsp;<em>"Structure-Responsable"&nbsp;</em>:</td>
        <td><input type="text" name="structure_responsable" size="15" value=""></td>
     </tr>   
     
        <tr></tr><tr></tr><tr></tr><tr></tr>
     
        <tr></tr>
        <tr align ="center"><br><br>
        <td colspan=2><input type="hidden" name="action" value="submitted">
             <input name="submit"  value="Enregistrer" type="submit"></td>
     
         <tr align ="center"> <td colspan=2><input type="button" value=" Valider" onClick="document.location='accueil2.php'">  </td>    
    </tr>
     
    <br>
     
    </table>    
            <br>
     
    </form>
     
    <br>
     
     
     
     
     
     
    </fieldset>    
    <br>
     
     
    </table></body>
    </html>
    mais ca ne marche tjrs pas !!!!!!!!! Dites moi SVP comment je pourrait arranger se code pour que je puisse supprimer le contenu de ma table ""structure_responsable "" avant de rajuouter les nouvelles valeurs car MNT il n'ergiste plus rieeeeennnnnnn

  13. #13
    Membre régulier Avatar de moonia
    Profil pro
    Inscrit en
    Novembre 2003
    Messages
    283
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2003
    Messages : 283
    Points : 82
    Points
    82
    Par défaut
    personne pourra m'aider svppppppppppppppppppp

  14. #14
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Avril 2006
    Messages
    36
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2006
    Messages : 36
    Points : 35
    Points
    35
    Par défaut
    Pour supprimer le contenu de table, tu fais:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    delete from structure_responsable where nom_colonne=qqch
    Puis pour ajouter, tu laisses ce que tu as fait.

  15. #15
    Membre régulier Avatar de moonia
    Profil pro
    Inscrit en
    Novembre 2003
    Messages
    283
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2003
    Messages : 283
    Points : 82
    Points
    82
    Par défaut
    le pb c'est que moi je veux supprimer tt le contenu de la table sans execptions
    Merci

  16. #16
    Membre expert Avatar de Amara
    Profil pro
    Inscrit en
    Juillet 2004
    Messages
    2 688
    Détails du profil
    Informations personnelles :
    Localisation : France, Sarthe (Pays de la Loire)

    Informations forums :
    Inscription : Juillet 2004
    Messages : 2 688
    Points : 3 115
    Points
    3 115
    Par défaut
    Ca marche pas ça ?

    C'est pas ce que tu faisais au début ?

  17. #17
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Avril 2006
    Messages
    36
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2006
    Messages : 36
    Points : 35
    Points
    35
    Par défaut
    Tiens c'est vrai ça! Pourquoi tu l'as supprimé??

  18. #18
    Membre régulier Avatar de moonia
    Profil pro
    Inscrit en
    Novembre 2003
    Messages
    283
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2003
    Messages : 283
    Points : 82
    Points
    82
    Par défaut
    le pb qui se pose vraiment c'est que j'exécute tjrs le code suivant
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    <?php
    $id= $_SESSION['id_user'];    
    mysql_select_db($database_dbprotect, $dbprotect);
    $requete1 = sprintf("delete from structure_responsable where id_user='$id' " );
    mysql_select_db($database_dbprotect, $dbprotect);
    $result_1= mysql_query($requete1, $dbprotect) or die(mysql_error());
    ?>
    à chaque appelle à modif_struc.php
    alors que j'ai besoin de l'appeller juste une fois , moi ce que je vais: que qd je suis sur la page modif_struc.php je supprime le contenu de la table structure_responsable une seule fois ( cad ca correspondra au 1er appel de la page modif_struc.php ) meme si je fais appel a cette page plusieurs fois avec la meme session le code en haut ne doit pas s'executer , il doit s'executer qu'au 1er appel de la page modif_struc.php
    c ça le pb qui se pose ds mon application

  19. #19
    Membre régulier Avatar de moonia
    Profil pro
    Inscrit en
    Novembre 2003
    Messages
    283
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2003
    Messages : 283
    Points : 82
    Points
    82
    Par défaut
    Citation Envoyé par JWhite
    Ca marche pas ça ?

    C'est pas ce que tu faisais au début ?
    ca marchait meme tres bien car la table restait tjrs vide

  20. #20
    Membre expert Avatar de Amara
    Profil pro
    Inscrit en
    Juillet 2004
    Messages
    2 688
    Détails du profil
    Informations personnelles :
    Localisation : France, Sarthe (Pays de la Loire)

    Informations forums :
    Inscription : Juillet 2004
    Messages : 2 688
    Points : 3 115
    Points
    3 115
    Par défaut
    Citation Envoyé par moonia
    ca marchait meme tres bien car la table restait tjrs vide


    le pb c'est que moi je veux supprimer tt le contenu de la table sans execptions

Discussions similaires

  1. [2008R2] Partitionner une table et répartion des données
    Par SEPHIRA dans le forum Administration
    Réponses: 7
    Dernier message: 19/05/2015, 15h06
  2. [AC-2007] Importation d'un fichier CVS vers une table, ordre aléatoire des données
    Par lio33 dans le forum Requêtes et SQL.
    Réponses: 2
    Dernier message: 26/01/2015, 11h48
  3. [Lazarus] Remplir une table (array) avec des données d'un StringGrid
    Par remissssss dans le forum Lazarus
    Réponses: 5
    Dernier message: 24/04/2014, 16h26
  4. Réponses: 12
    Dernier message: 06/08/2010, 15h00
  5. Réponses: 4
    Dernier message: 15/11/2007, 11h43

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