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

Langage PHP Discussion :

supprimer un elemts d'une liste deroulante où l'erreur ds mon code !!!!


Sujet :

Langage PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé 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
    Par défaut supprimer un elemts d'une liste deroulante où l'erreur ds mon code !!!!
    Bonjour a tous,

    J'ai une liste deroulante ses elements je les recuperent de ma base de données comme sui t
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    <select name="structure1" size ="1" onChange="chgpage(this)">
       <?php
    mysql_select_db($database_dbprotect, $dbprotect);
    $result=mysql_query('select valeur, id_str from structure_responsable order by id_str') or die(mysql_error());
    while($row = mysql_fetch_array($result)) echo "<option>".$row ["valeur"]."</option>\n";
       ?>
     </select>
    qlq 1 pourra m'aider et me montrer comment faire pour supprimer n'importe kel elements de la liste et bien sur le supprimer aussi de la BD

    merci d'avance

  2. #2
    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
    Par défaut
    Déjà tu mets dans l'attribut VALUE de tes OPTION les ids de tes éléments.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    echo "<option value='" . $row['id_str'] . "'>".$row [''valeur']."</option>\n";
    Après, tu peux mettre un bouton supprimer à côté de ta liste et tu fais pointer ça vers une page de traitement dans laquelle tu fais un delete dans ta table.

  3. #3
    Membre éclairé 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
    Par défaut
    Citation Envoyé par JWhite
    Déjà tu mets dans l'attribut VALUE de tes OPTION les ids de tes éléments.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    echo "<option value='" . $row['id_str'] . "'>".$row [''valeur']."</option>\n";
    Après, tu peux mettre un bouton supprimer à côté de ta liste et tu fais pointer ça vers une page de traitement dans laquelle tu fais un delete dans ta table.
    j'ai rajoute le code au dessus , et mnt qd je veux rajoute un element, il me le rajoute en 2fois !!!!!!!!!!!!!!!

  4. #4
    Membre éclairé 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
    Par défaut
    dsl j'ai regle le pb

  5. #5
    Membre éclairé 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
    Par défaut
    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
    <?php
    
    if($_POST['action'] == 'submitted')
    {
    $champs1 = $_POST['structure_responsable'];
    //echo "$compteur";
    
    {
    
    
    
    mysql_select_db($database_dbprotect, $dbprotect);
    $add_user1 = sprintf("INSERT INTO structure_responsable(id_str,valeur) values ('','$champs1')");
    mysql_select_db($database_dbprotect, $dbprotect);
    $result1= mysql_query($add_user1, $dbprotect) or die(mysql_error());
    }
    
    
    header("Location:modif_struc1.php?add=ok"); // redirection si création réussie
    
    }
    ?>
    <?php
    
    if($_POST['action1'] == 'submitted')
    {
    mysql_select_db($database_dbprotect, $dbprotect);
    $req2 = sprintf("delete from structure1 where valeur='".$_POST['" . $row["id_str"] . "']."'");
    	mysql_select_db($database_dbprotect, $dbprotect);
    	$verif2 = mysql_query($req2, $dbprotect) or die(mysql_error());
    header("Location:modif_struc1.php?add=ok"); // redirection si création réussie
    }
    ?>
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    <form name="page_form" action=""  method="post">
    <td align = "center"> 
     <select name="structure1" size ="1" onChange="chgpage(this)">
       <?php
    mysql_select_db($database_dbprotect, $dbprotect);
    $result=mysql_query('select valeur, id_str from structure_responsable order by id_str') or die(mysql_error());
    while($row = mysql_fetch_array($result)) echo "<option value='" . $row["id_str"] . "'>".$row ["valeur"]."</option>\n";   
     
       ?>
     </select>
    	</td>
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    td colspan=2><input type="hidden" name="action" value="submitted">
    		 <input name="submit"  value="Enregistrer" type="submit"></td>
    		 <td colspan=2><input type="hidden" name="action1" value="submitted">
    		 <input name="submit"  value="Supprimer" type="submit"></td>
    Tout marcher tres bien pour rajouter un eletms a ma liste deroulante et qd j'a rajoute tt ce qui en rouge pour que je puisse en retour supprimir un eletms selectionne rien ne marche ni le rajout ni la suppr
    aider moi SVP

  6. #6
    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
    Par défaut
    Citation Envoyé par moonia
    j'ai rajoute le code au dessus , et mnt qd je veux rajoute un element, il me le rajoute en 2fois !!!!!!!!!!!!!!!
    J'ai pas compris là...


    Edit : c'est déjà fini ? tout le problème est résolu ?

  7. #7
    Membre éprouvé
    Avatar de berceker united
    Profil pro
    SQL
    Inscrit en
    Février 2005
    Messages
    3 516
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : SQL
    Secteur : Finance

    Informations forums :
    Inscription : Février 2005
    Messages : 3 516
    Par défaut
    J'ai peut être un script qui pourra te donner plus de souplesse ou d'idées

    Tu as deux menu select.
    <select id="gauche" name="gauche[]" size="5" multiple>
    ...
    </select>
    <input type="button" id="gauche_droite" value=">>" onClick="Deplacer('gauche')">
    <input type="button" id="droite_gauche" value="<<" onClick="Deplacer('droite')">
    <select id="droite" name="droite[]" size="5" mutliple>
    ...
    </select>
    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
     
    function Deplacer(l1,l2) {
    	l1 = document.getElementById(l1);
    	l2 = document.getElementById(l2);
    	if (l1.options.selectedIndex>=0) {
    		o=new Option(l1.options[l1.options.selectedIndex].text,l1.options[l1.options.selectedIndex].value);
    		l2.options[l2.options.length]=o;
    		l1.options[l1.options.selectedIndex]=null;
    	}else{
    		alert("Aucun élément sélectionné");
    	}
    }
     
    function selectAll(nom){
    	nom = document.getElementById(nom);
    	for(i=0;i<nom.options.length;i++){
    		nom.options[i].selected=true;
    	}
    }
    La fonction selectAll('droite') doit être appellé lors du submit pour qu'il puisse prendre tous les éléments présent dans le menu select.

    La j'ai fais un gros copier/coller peut être qu'il y a quelques petite erreur de syntaxe dedans.
    voila peut être que ça peut te servir

  8. #8
    Membre éclairé 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
    Par défaut
    merci bcps mais moi mes elts sont sauvegrader ds une BD et donc il doivent etre supprimer aussi de la BD

  9. #9
    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
    Par défaut
    Il y a un problème parce que tes deux boutons enregistrer et supprimer ont le même nom. Et je vois pas à quoi servent tes deux champs cachés vu qu'ils ont la même valeur...
    Le truc c'est de nommer différement tes deux boutons (enregistrer et supprimer) et après dans la page de traitement tu regardes la valeur de $_POST['submit'] et tu fais le traitement approprié.

  10. #10
    Membre éclairé 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
    Par défaut
    j'ai corrige et mnt pour rajouter un element ça marche par contre pour supprimer rien il ne supprime rien ?????????? qcq qui cloche ds mon 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
    <?php
     
     
    if($_POST['enregister'] == 'submitted')
    {
     
    $champs1 = $_POST['structure_responsable'];
     
    mysql_select_db($database_dbprotect, $dbprotect);
    $add_user1 = sprintf("INSERT INTO structure_responsable(id_str,valeur) values ('','$champs1')");
    mysql_select_db($database_dbprotect, $dbprotect);
    $result1= mysql_query($add_user1, $dbprotect) or die(mysql_error());
    header("Location:modif_struc1.php?add=ok"); // redirection si création réussie
    }
    else
     
     if($_POST['supprimer'] == 'submitted')
    {
    mysql_select_db($database_dbprotect, $dbprotect);
    $req2 = sprintf("delete from structure1 where valeur='".$_POST['" . $row["id_str"] . "']."'");
    	mysql_select_db($database_dbprotect, $dbprotect);
    	$verif2 = mysql_query($req2, $dbprotect) or die(mysql_error());
    header("Location:modif_struc1.php?add=ok"); // redirection si création réussie
     
     
    }
     
    ?>
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    <td align = "center"> 
     <select name="structure1" size ="1" onChange="chgpage(this)">
       <?php
    mysql_select_db($database_dbprotect, $dbprotect);
    $result=mysql_query('select valeur, id_str from structure_responsable order by id_str') or die(mysql_error());
    while($row = mysql_fetch_array($result)) echo "<option value='" . $row["id_str"] . "'>".$row ["valeur"]."</option>\n";   
     
       ?>
     </select>
    	</td>
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    <td colspan=2>
    	<input type="hidden" name="enregister" value="submitted">
    		 <input name="submit"  value="Enregistrer" type="submit"></td>
     
    		 <td colspan=2><input type="hidden" name="supprimer" value="submitted">
    		 <input name="submit1"  value="Supprimer" type="submit"></td>

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

Discussions similaires

  1. [langage] Supprimer un élément dans une liste
    Par myjuna dans le forum Langage
    Réponses: 15
    Dernier message: 06/08/2014, 12h49
  2. Supprimer une liste deroulante
    Par khongo agon dans le forum Excel
    Réponses: 2
    Dernier message: 05/12/2008, 17h37
  3. Supprimer le retour à la ligne après une liste deroulante
    Par kobe dans le forum Balisage (X)HTML et validation W3C
    Réponses: 4
    Dernier message: 30/08/2006, 14h34
  4. Parcourir une liste deroulante
    Par brandon dans le forum Général JavaScript
    Réponses: 9
    Dernier message: 17/02/2005, 20h03
  5. plusieurs value dans une liste deroulante
    Par lepierre dans le forum Balisage (X)HTML et validation W3C
    Réponses: 8
    Dernier message: 16/11/2004, 15h53

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