Probleme de suppression de ligne SQL/PHP

kzykx Messages postés 6 Date d'inscription   Statut Membre Dernière intervention   -  
jordane45 Messages postés 38486 Date d'inscription   Statut Modérateur Dernière intervention   -
Hello je suis bloqué :( j'essaye de permettre a mes utilisateurs de ma base de donnée de pouvoir supprimer leur compte mais a chaque fois ca ne marche pas je ne comprend pas du tout pourquoi . Un peu d'aide serait cool merci :)

<?php
//Session_Start obligatoire pour la récupérations de variables
session_start();

//Connexion a la base de donnée whatsnight
$bdd = new PDO('mysql:host=127.0.0.1;dbname=whatsnight', 'root', '');
 //récupération de la variable d'URL,
  //qui va nous permettre de savoir quel enregistrement supprimer:
  $id  = $_GET["id"] ;


  //requête SQL:
  $sql = "DELETE 
            FROM utilisateurs
        WHERE id = ?" ;
          
  //exécution de la requête:
  $requete = mysqli_query( $cnx ,$sql ) ;
 
  //affichage des résultats, pour savoir si la suppression a marchée:
  if($requete)
  {
    echo("La suppression à été correctement effectuée") ;
  }
  else
  {
    echo("La suppression à échouée") ;
  }
?>

</body>
</html>






EDIT : Ajout du LANGAGE dans les balises de code (la coloration syntaxique).
Explications disponibles ici : ICI

Merci d'y penser dans tes prochains messages.
A voir également:

4 réponses

NHenry Messages postés 15221 Date d'inscription   Statut Modérateur Dernière intervention   366
 
Où indiques-tu à mysqli quel est l'Id à supprimer ?
0
kzykx Messages postés 6 Date d'inscription   Statut Membre Dernière intervention  
 
Ah je suis novice la dedans , j'ai un php similaire a cela mais j'arrive pourtant a faire en sorte que l'utilisateur puisse modifier ses info et uniquement les siennes comme ceci :
<?php
//On Selectionne la base de donnée
session_start();

$bdd = new PDO('mysql:host=127.0.0.1;dbname=whatsnight', 'root', '');


//Selection d'utilisateurs connecté
if(isset($_SESSION['id'])) {
   $requser = $bdd->prepare("SELECT * FROM utilisateurs WHERE id = ?");
   $requser->execute(array($_SESSION['id']));
   $user = $requser->fetch();
   
    if(isset($_POST['newSexe']) AND !empty($_POST['newSexe']) AND $_POST['newSexe'] != $user['SexeUser']) {
      $newSexe =($_POST['newSexe']);
      $insertSexe = $bdd->prepare("UPDATE utilisateurs SET SexeUser = ? WHERE id = ?");
      $insertSexe->execute(array($newSexe, $_SESSION['id']));
      header('Location: Profil.php?id='.$_SESSION['id']);
   }
    if(isset($_POST['newCP']) AND !empty($_POST['newCP']) AND $_POST['newCP'] != $user['CodepostalUser']) {
      $newCP =($_POST['newCP']);
      $insertCP = $bdd->prepare("UPDATE utilisateurs SET CodepostalUser = ? WHERE id = ?");
      $insertCP->execute(array($newCP, $_SESSION['id']));
      header('Location: Profil.php?id='.$_SESSION['id']);
   }
    if(isset($_POST['newVilleUser']) AND !empty($_POST['newVilleUser']) AND $_POST['newVilleUser'] != $user['VilleUser']) {
      $newVilleUser =($_POST['newVilleUser']);
      $insertville = $bdd->prepare("UPDATE utilisateurs SET VilleUser = ? WHERE id = ?");
      $insertville->execute(array($newVilleUser, $_SESSION['id']));
      header('Location: Profil.php?id='.$_SESSION['id']);
   }
   if(isset($_POST['newAgeUser']) AND !empty($_POST['newAgeUser']) AND $_POST['newAgeUser'] != $user['AgeUser']) {
      $newAgeUser =($_POST['newAgeUser']);
      $insertage = $bdd->prepare("UPDATE utilisateurs SET AgeUser = ? WHERE id = ?");
      $insertage->execute(array($newAgeUser, $_SESSION['id']));
      header('Location: Profil.php?id='.$_SESSION['id']);
   }
  if(isset($_POST['newAdresseUser']) AND !empty($_POST['newAdresseUser']) AND $_POST['newAdresseUser'] != $user['AdresseUser']) {
      $newAdresseUser =($_POST['newAdresseUser']);
      $insertadresse = $bdd->prepare("UPDATE utilisateurs SET AdresseUser = ? WHERE id = ?");
      $insertadresse->execute(array($newAdresseUser, $_SESSION['id']));
      header('Location: Profil.php?id='.$_SESSION['id']);
   }
   if(isset($_POST['newprenom']) AND !empty($_POST['newprenom']) AND $_POST['newprenom'] != $user['PrenomUser']) {
      $newprenom =($_POST['newprenom']);
      $insertprenom = $bdd->prepare("UPDATE utilisateurs SET PrenomUser = ? WHERE id = ?");
      $insertprenom->execute(array($newprenom, $_SESSION['id']));
      header('Location: Profil.php?id='.$_SESSION['id']);
   }
   if(isset($_POST['newnom']) AND !empty($_POST['newnom']) AND $_POST['newnom'] != $user['NomUser']) {
      $newnom =($_POST['newnom']);
      $insertnom= $bdd->prepare("UPDATE utilisateurs SET NomUser = ? WHERE id = ?");
      $insertnom->execute(array($newnom, $_SESSION['id']));
      header('Location: Profil.php?id='.$_SESSION['id']);
   }
   
   if(isset($_POST['newmail']) AND !empty($_POST['newmail']) AND $_POST['newmail'] != $user['MailUser']) {
      $newmail =($_POST['newmail']);
      $insertmail = $bdd->prepare("UPDATE utilisateurs SET MailUser = ? WHERE id = ?");
      $insertmail->execute(array($newmail, $_SESSION['id']));
      header('Location: Profil.php?id='.$_SESSION['id']);
   }
   if(isset($_POST['newmdp']) AND !empty($_POST['newmdp']) AND $_POST['newmdp'] != $user['Motdepasse']) {
      $newmdp =($_POST['newmdp']);
      $insertmdp = $bdd->prepare("UPDATE utilisateurs SET Motdepasse = ? WHERE id = ?");
      $insertmdp->execute(array($newmdp, $_SESSION['id']));
      header('Location: Profil.php?id='.$_SESSION['id']);
   }
   if(isset($_POST['newbio']) AND !empty($_POST['newbio']) AND $_POST['newbio'] != $user['BiographieUser']) {
      $newbio =($_POST['newbio']);
      $insertbio = $bdd->prepare("UPDATE utilisateurs SET BiographieUser = ? WHERE id = ?");
      $insertbio->execute(array($newbio, $_SESSION['id']));
      header('Location: Profil.php?id='.$_SESSION['id']);
   }
   if (isset($_POST['newprenom']) AND $_POST['newprenom'] == $user['PrenomUser'])
   {
     header('Location: Profil.php?id='.$_SESSION['id']);
   }

   //Image de profil
   if(isset($_FILES['pp']) AND !empty($_FILES['pp']['name']))
   {
  $taillemax = 2097152;
  $extensionsok = array('jpg', 'jpeg', 'gif', 'png');
  if($_FILES['pp']['size'] <= $taillemax)
   
 {
  $extensionupload = strtolower(substr(strrchr($_FILES['pp']['name'], '.'), 1));
  if(in_array($extensionupload, $extensionsok))
  {
   $chemin = "Utilisateurs/pp/".$_SESSION['id'].".".$extensionupload;
   //Deplacement du fichier
   $resultat = move_uploaded_file($_FILES['pp']['tmp_name'],$chemin);
   if($resultat)
   {
    $updatepp = $bdd ->prepare('UPDATE utilisateurs SET pp = :pp WHERE id = :id');
    $updatepp->execute(array(
    'pp' => $_SESSION['id'].".".$extensionupload,
    'id' => $_SESSION['id']
    ));
    header('Location: Profil.php?id='.$_SESSION['id']);
   }
   else
   {
     $msg = "Erreur durant l'importation de votre photo de profil";
   }
  }
  else
  {
   $msg = "Votre photo doit etre en jpg jpeg gif ou png , Merci";
  }
 }
 else
 {
  $msg = "Votre photo de profil ne doit pas dépasser 2Mo";
 }
   }
  
?>
<html>
   <head>
      <title>TUTO PHP</title>
     
   </head>
   <body bgcolor=blue>
      <div align="center">
         <h2>Edition de mon profil</h2>
         <div align="center">
            <form method="POST" action="" enctype="multipart/form-data">
               <label>Votre Prenom :</label>
               <input type="text" name="newprenom" placeholder="PrenomUser" value="<?php echo $user['PrenomUser']; ?>" /><br /><br />
       <label>Votre Age:</label>
      <input type="number" name="newAgeUser" placeholder="AgeUser" min="18" max="99" value="<?php echo $user['AgeUser']; ?>" /><br /><br />
      <label>Votre Adresse:</label>
               <input type="text" name="newAdresseUser" placeholder="AdresseUser" value="<?php echo $user['AdresseUser']; ?>" /><br /><br />
       <label>Votre Ville :</label>
               <input type="text" name="newVilleUser" placeholder="VilleUser" value="<?php echo $user['VilleUser']; ?>" /><br /><br />
       <label>Votre Code Postal :</label>
               <input type="text" name="newCP" placeholder="CodepostalUser" value="<?php echo $user['CodepostalUser']; ?>" /><br /><br />
      <label>Votre Nom :</label>
               <input type="text" name="newnom" placeholder="NomUser" value="<?php echo $user['NomUser']; ?>" /><br /><br />
               <label>Votre Mail ou nouvelle adresse Mail :</label>
               <input type="text" name="newmail" placeholder="MailUser" value="<?php echo $user['MailUser']; ?>" /><br /><br />
     <tr align="center">
      
  
   <label>Votre sexe est <u><?php echo $user['SexeUser']; ?></u> , Voulez vous changez de sexe ?</label><br />
   <br />
   <INPUT TYPE="radio" NAME="newSexe" VALUE="Masculin" />Masculin<BR />
      <INPUT TYPE="radio" NAME="newSexe" VALUE="Feminin" />Féminin<BR />
   <INPUT TYPE="radio" NAME="newSexe" VALUE="Autre" />Autre<BR />
   </td>
    <br /><td>
<label>Votre Biographie :</label>
               <input type="text" name="newbio" placeholder="BiographieUser" value="<?php echo $user['BiographieUser']; ?>" /><br /><br />
     <tr align="center">
   
   
               <label>Voulez vous changez de mot de passe ? si oui remplissez ce champ:</label><br /><br />
      <input type="password" name="newmdp" placeholder="Votre nouveau mot de passe" /><br /><br /> 
         <label>Changer votre photo de profil ?</label>
 <input type="file" name="pp" /><br /><br />
              <input type="button" name="SuppressionCompte" value="Supprimer mon compte" 
    onclick="self.location.href='SuppressionUtilisateur.php'">
     <input type="button" value="Retour" onclick="history.go(-1)">

 
               <input type="submit" value="Mettre à jour mon profil !" />
            </form>
            <?php if(isset($msg)) { echo $msg; } ?>
         </div>
      </div>
   </body>
</html>
<?php   
}
else {
   header("Location: PageConnexion.php");
}
?>
Le probleme etant que j'aimerais creer un bouton "supprimer mon compte " et faire en sorte qu'en cliquant dessus cela supprime le compte de l'utilisateur qui clique dessus j'ai essayer un tas de code j'ai toujours pas réussi , la seul avancée que j'ai c'est le session start mais je ne sais vraiment pas quoi faire appart
<?php
//On Selectionne la base de donnée
session_start();

$bdd = new PDO('mysql:host=127.0.0.1;dbname=whatsnight', 'root', '');


//Selection d'utilisateurs connecté
if(isset($_SESSION['id'])) {
$requser = $bdd->prepare("SELECT * FROM utilisateurs WHERE id = ?");
$requser->execute(array($_SESSION['id']));
$user = $requser->fetch();
Et encore je ne suis pas sure que cela marche :/

EDIT : Ajout du LANGAGE dans les balises de code (la coloration syntaxique).
Explications disponibles ici : ICI

Merci d'y penser dans tes prochains messages.
0
jordane45 Messages postés 38486 Date d'inscription   Statut Modérateur Dernière intervention   4 752
 
Bonjour,

Attention !
D'un côté tu utilises la PDO .... et d'un autre... tu nous montres du code avec MYSQLI ....... !

Commence par tout mettre à l'identique (perso... je préfère la PDO ).


0
Tzmagnum Messages postés 126 Date d'inscription   Statut Membre Dernière intervention  
 
Bonjour,

A quoi correspond ton $cnx stp ?

Je ne suis pas sur du tout, mais as tu essayé ?

<?php
//Session_Start obligatoire pour la récupérations de variables
session_start();

//Connexion a la base de donnée whatsnight
$bdd = new PDO('mysql:host=127.0.0.1;dbname=whatsnight', 'root', '');
 //récupération de la variable d'URL,
  //qui va nous permettre de savoir quel enregistrement supprimer:
  $id  = $_GET["id"] ;


  //requête SQL:
  $sql = "DELETE 
            FROM utilisateurs
        WHERE id = ".$id ;
          
  //exécution de la requête:
  $requete = mysqli_query( $cnx ,$sql ) or die (mysql_error()) ;;
 
  //affichage des résultats, pour savoir si la suppression a marchée:
  if($requete)
  {
    echo("La suppression à été correctement effectuée") ;
  }
  else
  {
    echo("La suppression à échouée") ;
  }
?>
-1
jordane45 Messages postés 38486 Date d'inscription   Statut Modérateur Dernière intervention   4 752
 
Attention.
Tu as utilisé une connexion en PDO ... et ensuite tu essayes d'exécuter la requête avec du mysqli !!!!

Sans oublier que tu essaye de traper l'erreur avec du mysql tout court...

Bref... un gros n'importe quoi pour le coup.
Ca ne peut pas fonctionner....
0