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 :

[SQL] impossible de delete


Sujet :

PHP & Base de données

  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Novembre 2007
    Messages
    76
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2007
    Messages : 76
    Par défaut [SQL] impossible de delete
    salut

    voila j'utilise un tableau (créé en allant lire une table de ma bdd) et pour chaque enregistrement j'ajoute une checkbox utilisé pour la supression de cet enregistrement.
    La requête sql semble bonne mais il se passe rien.
    Voici le code de la page principal et ensuite de la page qui s'occupe de supprimer.
    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
     
    <form method="post" action="supprimer.php">
    	    <table>
    	   <caption>tableau</caption>
     
    	   <thead> 
    	       <tr>
    	           <th>Id</th>
    	           <th>Horaire</th>
    	           <th>Entreprise</th>
    		   <th>Lieu</th>
    		   <th>Contact</th>
    		   <th>Téléphone</th>
    		   <th>Poste</th>
    		   <th>Remarque</th>	      
    	       </tr>
    	   </thead>
     
    <?php	
    $i=1;
    $j=0;
    $supprimer[]="";
     
    	while($recup = mysql_fetch_array($donnees))
    	{
    	?>
    	   <tbody> 
    	       <tr>
    	           <td><?php echo $i; ?></td>
    	           <td><?php echo $recup['horaire']; ?></td>
    	           <td><?php echo $recup['entreprise']; ?></td>
    	           <td><?php echo $recup['lieu']; ?></td>
    		   <td><?php echo $recup['contact']; ?></td>
    		   <td><?php echo $recup['tel']; ?></td>
    		   <td><?php echo $recup['poste']; ?></td>
    		   <td><?php echo $recup['remarque']; ?></td>	
    		   <td><input type="checkbox" name="supprimer[]" value="<?php echo$recup['id'];?>" />suppr</td> 
    	       </tr>   
    	   </tbody>
    	<?php 
    	$i++;
    	} //fin boucle while
    	?>
     
    </table>
    	<p>
           <input type="submit" /> <input type="reset" />
       </p>
    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
     
    <?php
    if (isset($_POST['supprimer'])) 
    { 
    	mysql_connect("localhost", "root", ""); 
    	mysql_select_db("entretiens");
    	$n[]="";
    	$i=0;
    	$k=0;
    	$n=count($_POST['supprimer']);
     
           //boucle peut etre inutile mais pas moyen d'utiliser $_POST['supprimer'][$i]
    	for($j=0;$j<$n;$j++)
    	{
    		$tab[$j]=$_POST['supprimer'];
    	}
     
    	//var_dump($tab);
     
    	//echo "valeur de n: $n  ";
    	//echo $tab[0][0]; 
    	for($k=0;$k<$n;$k++)
    	{
    		//echo $tab[$i][$j];
    		mysql_query("DELETE * FROM stage WHERE id='".$tab[$i][$k]."'"); 
     
    	}	
    	mysql_close(); 
    	echo "ok";
    }
    ?>
    donc en faisant un var_dump($tab) et un echo $tab[$i][$j]; les valeurs sont bien là.
    La ligne suivante n'est donc pas interprété et je ne comprends pas pourquoi:
    mysql_query("DELETE * FROM stage WHERE id='".$tab[$i][$k]."'");

  2. #2
    Membre chevronné
    Profil pro
    Responsable de service informatique
    Inscrit en
    Septembre 2004
    Messages
    352
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Responsable de service informatique

    Informations forums :
    Inscription : Septembre 2004
    Messages : 352
    Par défaut
    La syntaxe du DELETE c'est :
    DELETE FROM ma_table WHERE ma_condition

    Que te donne ceci :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    echo "DELETE FROM stage WHERE id='{$tab[$i][$k]}'"

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Novembre 2007
    Messages
    76
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2007
    Messages : 76
    Par défaut

    merci Chengj

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [phpMyAdmin] connexion sql impossible
    Par rebeupuretdur dans le forum EDI, CMS, Outils, Scripts et API
    Réponses: 3
    Dernier message: 08/02/2007, 08h57
  2. [Oracle/SQL] impossible d'insérer un enregistrement
    Par gscorpio dans le forum Oracle
    Réponses: 6
    Dernier message: 18/12/2006, 11h18
  3. [SQL] La commande DELETE
    Par arti2004 dans le forum PHP & Base de données
    Réponses: 5
    Dernier message: 15/06/2006, 09h28
  4. SQL : Impossible d'atteindre l'enregistrement spécifié
    Par Farbin dans le forum Requêtes et SQL.
    Réponses: 15
    Dernier message: 30/09/2005, 17h01
  5. [SQL Server 2000] Delete et alias
    Par Sebounet19 dans le forum MS SQL Server
    Réponses: 6
    Dernier message: 31/07/2005, 14h17

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