Pb de suppression de la BD php/mysql
Résolu
amine_marc
Messages postés
256
Date d'inscription
Statut
Membre
Dernière intervention
-
amine_marc Messages postés 256 Date d'inscription Statut Membre Dernière intervention -
amine_marc Messages postés 256 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
J'ai un pb dans mon code PHP de suppression d'une insertion d'une table ou deux tables au même temps selon des boutons radio;
Mon pb exactement, c'est quand je clique sur [supprimer] d'un fournisseur précis, toujours le dernier fournisseur enregistré qui va se supprimer de la BD.
Veuillez me dire où le pb, je ne peux pas avancer dans ce code là.
Voici la partie du code qui nous intéresse:
----------------------------------------------------------------------------------------------------------
<form action='suppression_cli.php' method=GET id='mon_form_supp'>
<input type="radio" name="group" value="sup1" checked>Supprimer seulement le fournisseur <br />
<input type="radio" name="group" value="sup2">Supprimer le fournisseur avec ses produits<br />
<table border="2" bordercolor="" width="400">
<tr><th>Code</th><th>Nom</th><th>Action</th></tr>
<?php
$req=mysql_query("SELECT * FROM fournisseurs");
while($donnees=mysql_fetch_array($req))
{
$code_frns=$donnees['code_frns'];
print ("
<tr>
<td>
<input type='text' name='code' value='".$code_frns."' size=4>
</td>
<td>$donnees[nom_frns]</td>
<td>
");
?>
[ <a href='#' onclick="javascript:document.getElementById('mon_form_supp').submit(); return false;">Supprimer</a> ]
</td>
</tr>
<?php
}
mysql_close();
?>
</table>
</form>
-----------------------------------------------------------------------------------------------------------
et voici le code de la page "suppression_cli.php" :
----------------------------------------------------------------------------------------------------------
<?php
$db=mysql_connect("localhost","root","mysql");
mysql_select_db("ma_bd",$db);
$_code_frns=$_GET['code_frns'];
$_selection_radio=$_GET['group'];
if($_selection_radio=="sup1")
{
$sql1="DELETE FROM fournisseurs WHERE code_frns='$_code_frns'";
$res1=mysql_query($sql1,$db);
}
else
{
$sql2="DELETE FROM fournisseurs WHERE code_frns='$_code_frns'";
$sql3="DELETE FROM produits WHERE code_frns='$_code_frns'";
$res2=mysql_query($sql2,$db);
$res3=mysql_query($sql3,$db);
}
mysql_close();
?>
---------------------------------------------------------------------------------------------------------
J'ai un pb dans mon code PHP de suppression d'une insertion d'une table ou deux tables au même temps selon des boutons radio;
Mon pb exactement, c'est quand je clique sur [supprimer] d'un fournisseur précis, toujours le dernier fournisseur enregistré qui va se supprimer de la BD.
Veuillez me dire où le pb, je ne peux pas avancer dans ce code là.
Voici la partie du code qui nous intéresse:
----------------------------------------------------------------------------------------------------------
<form action='suppression_cli.php' method=GET id='mon_form_supp'>
<input type="radio" name="group" value="sup1" checked>Supprimer seulement le fournisseur <br />
<input type="radio" name="group" value="sup2">Supprimer le fournisseur avec ses produits<br />
<table border="2" bordercolor="" width="400">
<tr><th>Code</th><th>Nom</th><th>Action</th></tr>
<?php
$req=mysql_query("SELECT * FROM fournisseurs");
while($donnees=mysql_fetch_array($req))
{
$code_frns=$donnees['code_frns'];
print ("
<tr>
<td>
<input type='text' name='code' value='".$code_frns."' size=4>
</td>
<td>$donnees[nom_frns]</td>
<td>
");
?>
[ <a href='#' onclick="javascript:document.getElementById('mon_form_supp').submit(); return false;">Supprimer</a> ]
</td>
</tr>
<?php
}
mysql_close();
?>
</table>
</form>
-----------------------------------------------------------------------------------------------------------
et voici le code de la page "suppression_cli.php" :
----------------------------------------------------------------------------------------------------------
<?php
$db=mysql_connect("localhost","root","mysql");
mysql_select_db("ma_bd",$db);
$_code_frns=$_GET['code_frns'];
$_selection_radio=$_GET['group'];
if($_selection_radio=="sup1")
{
$sql1="DELETE FROM fournisseurs WHERE code_frns='$_code_frns'";
$res1=mysql_query($sql1,$db);
}
else
{
$sql2="DELETE FROM fournisseurs WHERE code_frns='$_code_frns'";
$sql3="DELETE FROM produits WHERE code_frns='$_code_frns'";
$res2=mysql_query($sql2,$db);
$res3=mysql_query($sql3,$db);
}
mysql_close();
?>
---------------------------------------------------------------------------------------------------------
A voir également:
- Pb de suppression de la BD php/mysql
- Forcer la suppression d'un fichier - Guide
- Easy php - Télécharger - Divers Web & Internet
- Suppression compte gmail - Guide
- Mysql community server - Télécharger - Bases de données
- Outil de suppression mcafee - Guide
6 réponses
voilà une solution:
<script type="text/javascript"> function appel_page(code_frns){ //cette fonction va appeler le script de suppression en lui passant en parametre la valeur du bouton radio coché (lu par la boucle) et le code_frns (passé en argument a la fct) //boucle de recherche du bouton radio qui a été coché! for (i=0, i<formulaire_suppr.group.length; i++) { if (formulaire_suppr.group[i].checked) { var valeur_bt_coche = formulaire_suppr.group[i].value; } } //appel du script window.location.href="suppression_cli.php?code_frns="+code_frns+"&group="+valeur_bt_coche+""; } </script> <form name="formulaire_suppr" action='suppression_cli.php' method="GET" id='mon_form_supp'> <input type="radio" name="group" value="sup1" checked>Supprimer seulement le fournisseur <br /> <input type="radio" name="group" value="sup2">Supprimer le fournisseur avec ses produits<br /> <table border="2" bordercolor="" width="400"> <tr><th>Code</th><th>Nom</th><th>Action</th></tr> <?php $req=mysql_query("SELECT * FROM fournisseurs"); while($donnees=mysql_fetch_array($req)) { $code_frns=$donnees['code_frns']; print (" <tr> <td> <input type='text' name='code' value='".$code_frns."' size=4> </td> <td>$donnees[nom_frns]</td> <td> "); ?> <!-- ton lien devient ainsi: appel de la fonction en lui passant le code_frns --> [ <a href="javascript:appel_page('<?php echo $donnees['code_frns'];?>');" >Supprimer</a> ] </td> </tr> <?php } mysql_close(); ?> </table> </form>
amine_marc
Messages postés
256
Date d'inscription
Statut
Membre
Dernière intervention
2
merci bcp Alain_42 pour ce vos efforts, mais malheureusement aucun effet après un clic sur [supprimer] sauf une erreur javascript parait sur la barre d'état du navigateur (IEx).
c'est vrai que IE n'est pas bavard en debuggae javascript si tu cliques sur l'erreur tu as une fenêtre qui te dis erreur à la ligne ...
sur Firefox il y a une console d'erreur javascript
il y avait juste une petite erreur à cette ligne
//boucle de recherche du bouton radio qui a été coché!
for (i=0, i<formulaire_suppr.group.length; i++) {
il faut ; à la place de , après i=0
un copier coller malheureux
sur Firefox il y a une console d'erreur javascript
il y avait juste une petite erreur à cette ligne
//boucle de recherche du bouton radio qui a été coché!
for (i=0, i<formulaire_suppr.group.length; i++) {
il faut ; à la place de , après i=0
un copier coller malheureux
//boucle de recherche du bouton radio qui a été coché! for (i=0; i<formulaire_suppr.group.length; i++) {
$_code_frns=$_GET['code_frns'];
c'est çà qui marche pas, as tu pris le temps de tester ce que te renvoyait ta variable ??
voici ton code
<input type='text' name='code' value='".$code_frns."' size=4>
il faut donc mettre
$_code_frns=$_GET['code'];
merci pour votre réponse tt d'abord, mais moi aussi je mets $_GET['code']; au lieu de $_GET['code_frns']; c'est seulement erreur de frappe;
c'est pas la source de mon pb exactement;
c'est pas la source de mon pb exactement;
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question