karasnake
Messages postés27Date d'inscriptiondimanche 12 novembre 2006StatutMembreDernière intervention16 juin 2009
-
3 juin 2008 à 16:51
karasnake
Messages postés27Date d'inscriptiondimanche 12 novembre 2006StatutMembreDernière intervention16 juin 2009
-
4 juin 2008 à 14:36
bonjour,
Je viens vers vous car je fais actuellement face à un beug que je trouve incompréhensible.
Je dois supprimer des élements de la base de données mais une de mes requete ne fonctionne pas. je m'explique
Dans ma base j'ai les tables suivantes: Utilisateur , groupe et droit, un utilisateur appartient a un groupe et un groupe a des droits
lorsque je dois supprimmer un groupe je dois d'abord supprimer les droit de celui-ci j'ai crée une classe deleteData dans laquel je met toute mes methodes de suppréssion .
voici les methodes de la classe deleteData que j'utilise:
function selectIdDroit($idGroupe)
{
$rsql="select ID_DROIT from groupe where ID_GROUP=$idGroupe";
$resultat=mysql_query($rsql);
if($resultat)
{
$data=mysql_fetch_assoc($resultat);
return $data['ID_DROIT'];
}
else return $rsql;
}
function droit($idGroupe)
{
$idDroit=$this->selectIdDroit($idGroupe);
$sql="delete from droit where ID_DROIT=$idDroit";
$res=mysql_query($sql);
if($res)
{
echo "Suppréssion du droit éffectué avec succès!";
}
else return $sql;
}
function groupe($idGroupe)
{
$rsql="delete from groupe where ID_GROUP=$idGroupe";
$resultat=mysql_query($rsql);
if($resultat)
{
echo "Suppréssion du groupe éffectué avec succès!";
}
else return $rsql;
}
dans la page qui recois les informations quz j'ai besoin j'ai ce code qui me permet de supprimer mon groupe et son champs droit:
if (isset($_POST['listeGroupe']))
{
$delete= new deleteData;
echo $delete->droit($_POST['listeGroupe']);//suppréssion du droit associé au groupe en premier (foreign key)
echo $delete->groupe($_POST['listeGroupe']);//puis suppréssion du groupe
}
ici je crée bien mon instance et je fais appel a mes methodes je commence par recuperer l'identifiant de mon droit puis je le supprime et enfin je supprime mon groupe mais lorsque j'execute ce code il ne supprime pas mon droit
plus précisement ici
function droit($idGroupe)
{
$idDroit=$this->selectIdDroit($idGroupe);
$sql="delete from droit where ID_DROIT=$idDroit";
$res=mysql_query($sql);
if($res)
{
echo "Suppréssion du droit éffectué avec succès!";
}
else return $sql;
}
il n'entre pas dans le if mais que le else et m'affiche ma requete exemple de requete renvoyer
delete from droit where ID_DROIT=28
Et lorsque j'execute la requete directement sous phpmyadmin(je travail en local) la requête fonctionne!!!!
la requete precedente fonctionne bien puisque je recois l'identifiant et le groupe et supprimmé il n'y a que le droit qui ne fonctionne pas.
Si quelqu'un peut m'aider!!!!