[php/mysql] bouton supprimer

Résolu
papish Messages postés 11 Date d'inscription   Statut Membre Dernière intervention   -  
atspinto Messages postés 338 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour,

Voila j'ai une petit problème , j'ai une liste qui affiche des produits puis quand je clic sur un produit mes formulaires ce remplisse.

Mon problème c'est que je voudrais incorporé un bouton supprimer qui ferai que lorsque je sélectionne un produit dans ma liste, je l'effacerai avec mon bouton supprimer, biensur cala effacerai aussi mon produit dans ma bdd.

Voila si quelqu'un pourrait m'aider ça super gentil.

Merci d'avance

ps: voici mon code


<?php
$connexion=mysql_connect('localhost','root',"") or die ("Connexion impossible.");
$db=mysql_select_db('vigicontrole',$connexion) or die ("Base de données non accessible.");

echo '<p>Choisissez un produit:</p>';

echo"<form name='form1' action='listephp.php' method='POST'>";
echo '<select name="PDT" size="7" id="produit" onChange="this.form.submit()">';

$resultat=mysql_query("select PROD from produit order by PROD") or die ("Requête non executée.");

while ($ligne=mysql_fetch_array($resultat))
{

$selected=($ligne["PROD"]==$_POST["PDT"])?" selected":"" ;
echo '<option '.$selected.'>'.$ligne["PROD"].'</option>';
;
}
echo '</select>';
//echo '<input type="submit" value="Afficher" name="go">';
echo '<noscript><input type="submit" value="Afficher" /></noscript>';
echo '</form>';

if(!isset($_POST['PDT']))
{
exit;
}

//Les lignes suivantes affichent le détail d'un produit
// si l'utilisateur en a choisi un
$PDT = $_POST['PDT'];
$resultat2 = mysql_query("Select * from produit where PROD='$PDT'") or die ("Requête non executée.");
$ligne2 = mysql_fetch_array($resultat2);

echo "<br>";
echo "<br>";

//echo ' <b>Produit : </b>'.$ligne2['prod'].' '.$ligne2['ref'].'<br>';

mysql_close($connexion);
?>
<INPUT type="button" value="Supprimer tout" onClick="SupprimerTout(this.form.liste)">
<INPUT type ="button" name = "Supprimer" value = "Supprimer" onClick="Supprimer(this.form.liste)">
</div>

<div id="d2">
<p align=right>Nom : <input type="text" name="prod" size="18" value="<?php echo $ligne2['prod']; ?>"></p>
<p align=right>Référence : <input type="text" name="ref" size="18" value="<?php echo $ligne2['ref']; ?>"></p>
<p align=right>Achetées ou produites : <input type="text"name="qteap" size="18" value="<?php echo $ligne2['qteap']; ?>"></p>
<p align=right>Stockées période-1 : <input type="text"name="qtep1" size="18" value="<?php echo $ligne2['qtep1']; ?>"></p>
<p align=right>pertes stock : <input type="text"name="qtep" size="18" value="<?php echo $ligne2['qtep']; ?>"></p>
<p align=right>stockées : <input type="text"name="qtes" size="18" value="<?php echo $ligne2['qtes']; ?>"></p>
<p align=right>vendues : <input type="text"name="qte" size="18" Id="vendues" onBlur="calcul_form(this)" value="<?php echo $ligne2['qte']; ?>" ></p>
<p align=right><b>prix de revient<b> : <input type="text"name="prix_achat" size="18" value="<?php echo $ligne2['prix_achat']; ?>"></p>
<p align=right><b>%alarmes Px rev<b> : <input type="text"name="alarme_pr" size="18"value="<?php echo $ligne2['alarme_pr']; ?>" ></p>
<p align=right><b>Prix de ventes<b> : <input type="text"name="prix_vente" Id="prixdeventes" onBlur="calcul_form(this)" size="18" value="<?php echo $ligne2['prix_vente']; ?>" ></p>
<p align=right><b>%alarmes px Vente<b> : <input type="text" name="alarme_pv" size="18" value="<?php echo $ligne2['alarme_pv']; ?>"></p>
A voir également:

9 réponses

atspinto Messages postés 338 Date d'inscription   Statut Membre Dernière intervention   27
 
je crois que ça doit etre ref
au lieu de echo '<option value="'.$row['prod'].'">'.$row['ref'].' '.$row['qtep'].'</option>';

fais plutot ceci echo '<option value="'.<gras>$row['ref']</gras>.'">'.$row['ref'].' '.$row['qtep'].'</option>';
parce que c'est la valeur de value dans ton cas $row['prod'] qui est postée.
1
atspinto Messages postés 338 Date d'inscription   Statut Membre Dernière intervention   27
 
vas y plutot comme ça !!

<option value="'.$row['id_produit'].'">'.$row['ref'].' '.$row['qtep'].'</option>';
1
papish Messages postés 11 Date d'inscription   Statut Membre Dernière intervention  
 
je viens de trouvé un code mais le problème c'est que lorsque je supprimer le champs selectionné dans ma liste , il efface tous les champs du même nom!

Comment pourrais-je faire que qu'il efface seulement le champ que je sélectionne ?

sil-vous-plait une réponse

voici mon code de suppression:

<h3>Supprimer un produit</h3>
<form action="boutonsuppr.php" method="POST">
<p>Sélectionnez un produit à supprimer</p>
<select name="liste">
<?php
$connexion=mysql_connect('localhost','root',"") or die ("Connexion impossible.");
$db=mysql_select_db('vigicontrole',$connexion) or die ("Base de données non accessible.");

$sql = "SELECT prod,ref, qtep FROM produit";
$res = mysql_query($sql);
while($row = mysql_fetch_array($res))
{
echo '<option value="'.$row['prod'].'">'.$row['ref'].' '.$row['qtep'].'</option>';
}
?>
</select>
<input type="submit" value="Supprimer" name="supprimer"/>
</form>
<?php

if(isset($_POST['liste']))

{
$rep = $_POST['liste'];

echo 'coucou les gens HFR';

/* Debug */

$requete = "DELETE FROM produit WHERE prod = '$rep'";

echo $requete;

mysql_query($requete) or die (mysql_error());

/* Fin Debug */

}

else

{

echo 'Erreur';

}


mysql_close($connexion);
?>
0
atspinto Messages postés 338 Date d'inscription   Statut Membre Dernière intervention   27
 
normal si tu te sers pur faire ta suppression et que t'as autorisé le meme nom pour des produits distincts.

tes elements ont quoi d'unique ?? genre une clé primaire !!
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
papish Messages postés 11 Date d'inscription   Statut Membre Dernière intervention  
 
ouais mes éléments ont une clef primaire auto_incrémenté ce qui veut dire que je devrais remplacé

$requete = "DELETE FROM produit WHERE prod = '$rep'";

par

$requete = "DELETE FROM produit WHERE id_produit= '$rep'";

Hors cela ne marche pas, lorsque je fais cela rien n'est supprimer !
0
atspinto Messages postés 338 Date d'inscription   Statut Membre Dernière intervention   27
 
normal que ça marche pas... s'il ne trouve pas de correspondance...

l'auto_increment c'est ref je suppose.. fais donc ce que j'ai dit un peu plus haut
0
papish Messages postés 11 Date d'inscription   Statut Membre Dernière intervention  
 
non l'auto incrément est ce nomme id_produit
0
papish Messages postés 11 Date d'inscription   Statut Membre Dernière intervention  
 
merci beaucoup pour ta réponse atspinto mais cela me fait une erreur.
0
papish Messages postés 11 Date d'inscription   Statut Membre Dernière intervention  
 
je te remercie beaucoup!!!! atspinto j'ai réussit !!!!
0
atspinto Messages postés 338 Date d'inscription   Statut Membre Dernière intervention   27
 
de rien.. n'oublies pas le marquer comme résolu..
0