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 :

Supprimer des données (checkbox et bouton "supprimer")


Sujet :

PHP & Base de données

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre habitué
    Homme Profil pro
    Inscrit en
    Février 2014
    Messages
    12
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Février 2014
    Messages : 12
    Par défaut Supprimer des données (checkbox et bouton "supprimer")
    Bonjour à tous !

    Je suis nouveau et débutant dans le monde du développement WEB et j'ai besoin de vos lumières.

    Je vous explique mon problème. J'ai un projet qui consiste à faire un site internet pour une agence de voyage qui propose divers circuits. Sur une page php, j'arrive à faire ressortir de la BDD, tous les circuits (liés chacun par un checkbox correspondant à l'id (NumCircuit) de ma base).

    Mais après je bloque littéralement. J'aimerai que lorsque j'appuie sur le bouton "Supprimer", il me supprime toute la ligne qui a été coché.

    Voici ma page:


    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
    <!DOCTYPE html>
    <!-- Page de contact -->
    <html>
    <head>
    	<meta charset="UTF-8">
    	<title>Administration</title>
    	<link rel="stylesheet" type="text/css" href="css/styles.css" />
    </head>
    <body>
     
     <div id="page">
            <!-------------------------------------------- header ----------------------------------------------------->
            <div class="header">
     
    			<?php include("menu.php"); ?>
            </div> 
    		<div class="body">
    		  <div id="header"><img  src="image/headercar.jpg"/></div>
                <div class="formetmenu2">
                    <div class="formul2"> 
    				<div class="admin td">
    					<?php
    					include("connectbdd.php");
    					$query='SELECT NumCircuit, NomCircuit, PrixCircuit, DureeCircuit, DescriCircuit FROM circuit';
    					$reponse = mysql_query($query);
    					?>
    					<table>
    						<tr><td></td>
    							<td>Numéro de circuit</td>
    							<td>Nom du circuit</td>
    							<td>Prix du circuit</td>
    							<td>Duree du circuit</td>
    							<td>Description du circuit</td>
    						</tr>
    					<?php
    					while($ligne = mysql_fetch_array($reponse)){
    						echo "<td> <input type='checkbox' name='updel' '".$ligne['NumCircuit']."'</td>";
     
    					?>
     
    							<td><?php echo UTF8_encode ($ligne['NumCircuit']); ?></td>
    							<td><?php echo UTF8_encode ($ligne['NomCircuit']); ?></td>
    							<td><?php echo UTF8_encode ($ligne['PrixCircuit']); ?></td>
    							<td><?php echo UTF8_encode ($ligne['DureeCircuit']); ?></td>
    							<td><?php echo UTF8_encode ($ligne['DescriCircuit']); ?></td>
    							</input>
    						</tr>
     
    					<?php
    					}
    					mysql_close();?>
    					</table>
    					<div class="ams">
    					<input type="submit" name="Ajouter" value="Ajouter un circuit" onclick="window.open('ajoutdecircuit.php')">
    					<input type="submit" name="Modifier" value="Modifier">
    					<input type="submit" name="Supprimer" value="Supprimer">
    					</div>
                    </div>
            	</div>
    		</div>	
     
    		<div class="footer">
     
    		     <?php include("footer.php"); ?>   
     
    		</div>
     </div>		 			
    </body>
    </html>
    La page risque de vous faire peur, mais soyez indulgent, je débute comme je l'ai dis.

    Merci d'avance,

  2. #2
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Par défaut
    Je suppose que tu veux dire "supprime toutes les lignes qui ont été cochées" ?
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  3. #3
    Membre habitué
    Homme Profil pro
    Inscrit en
    Février 2014
    Messages
    12
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Février 2014
    Messages : 12
    Par défaut
    Oui j'ai fait la modification merci.

  4. #4
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Par défaut
    En utilisant une notation en tableau :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    echo '<td><input type="checkbox" name="updel['.$ligne['NumCircuit'].']"/></td>';
    Tu recupères un tableau que tu n'as plus qu'a parcourir
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    foreach ($_POST['updel'] as $numcircuit=>$value) {
       $sql = 'DELETE FROM ........ WHERE NumCircuit = "' . mysql_real_escape_string($numcircuit) . '"';
    }
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  5. #5
    Membre habitué
    Homme Profil pro
    Inscrit en
    Février 2014
    Messages
    12
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Février 2014
    Messages : 12
    Par défaut
    Entendu, je vais essayé ce que tu me proposes tout de suite.

    Edit: J'ai bien fait comme demandé, cependant il me renvoie à deux erreurs (je pense que les deux sont liées):

    Notice: Undefined index: updel in C:\wamp\www\roady tours\myadminpage.php on line 51
    Pourtant dans mon code je précise bien que le nom de la checkbox est "updel".

    Warning: Invalid argument supplied for foreach() in C:\wamp\www\roady tours\myadminpage.php on line 51
    La deuxieme erreur vient peut être du fait de $value non ? Faut il que je le remplace par $ligne comme je l'ai mis dans mon code ?

    Merci de l'aide !

  6. #6
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Par défaut
    Pour debuguer, regarde ce que contient $_POST :
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

Discussions similaires

  1. Remplacer / Supprimer des données dans un fichier txt
    Par PedroBD dans le forum Langage
    Réponses: 3
    Dernier message: 03/07/2006, 13h33
  2. [MySQL] supprimer des données dans la base
    Par Commodore dans le forum PHP & Base de données
    Réponses: 5
    Dernier message: 07/02/2006, 02h43
  3. Supprimer des données dans un xml
    Par pingoui dans le forum Format d'échange (XML, JSON...)
    Réponses: 49
    Dernier message: 12/08/2004, 16h49

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