Beug php pour une requete delete!!! [Résolu]

Signaler
Messages postés
27
Date d'inscription
dimanche 12 novembre 2006
Statut
Membre
Dernière intervention
16 juin 2009
-
Messages postés
27
Date d'inscription
dimanche 12 novembre 2006
Statut
Membre
Dernière intervention
16 juin 2009
-
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!!!!

2 réponses

Messages postés
12303
Date d'inscription
mardi 10 février 2004
Statut
Modérateur
Dernière intervention
30 juillet 2012
40
salut

tu peux afficher le mysql_error () ca aiderait a debuger.
Messages postés
27
Date d'inscription
dimanche 12 novembre 2006
Statut
Membre
Dernière intervention
16 juin 2009

c'est bon j'ai trouver l'erreur c'etait a cause d'une clef secondaire dans la table groupe -_-'  comme quoi !! merci pour le coup de pouce!