Suppression dans la bdd

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : Suppression dans la bdd

Re: Suppression dans la bdd

par Thibaud C » 16 févr. 2012, 21:06

Hum a oui :P la PDO ca remonte a loin dsl :P

Re: Suppression dans la bdd

par Evolved » 16 févr. 2012, 21:03

C'était bien ça, merci à vous deux ;)
voici la ligne correct:
$bdd->exec("DELETE FROM occasions WHERE id ='$id'");
(query pour SELECT et exec pour INSERT, UPDATE et DELETE)

Re: Suppression dans la bdd

par Thibaud C » 16 févr. 2012, 20:17

$bdd->query('ma requete');

Re: Suppression dans la bdd

par xTG » 16 févr. 2012, 20:01

Tu mélanges l'interface PDO et les fonctions mysql_xxx.
Soit tu utilises le jeu de fonction de l'un ou de l'autre, mais faut pas mélanger les deux. ;)

Re: Suppression dans la bdd

par Evolved » 16 févr. 2012, 19:40

oui, elle fonctionne, c'est peut-être la connexion à la bdd de données qui pose problème ?
(pourtant c'est les même infos de connexion que j'ai utiliser pour ajoutés des entrées dans la bdd et ça ça fonctionne)

Re: Suppression dans la bdd

par Thibaud C » 16 févr. 2012, 19:34

tu as testé le echo de ta requête dans phpmyadmin ?

Re: Suppression dans la bdd

par Evolved » 16 févr. 2012, 19:26

ça marche un peu mieux ^^

Mais le echo renvoie maintenant :
DELETE FROM occasions WHERE id ='26'Exécution de la requête impossible

Le formulaire et la variable fonctionne bien apparemment mais le code ne peut pas exécuté la requête ?

Re: Suppression dans la bdd

par Thibaud C » 16 févr. 2012, 19:16

Hello,

hum essaie plutot
$sql = "DELETE FROM occasions WHERE id ='$id'";
car la je pense qu'il n'aime pas beaucoup tes doubles doubles cotes
ou
$sql = "DELETE FROM occasions WHERE id =".$id."";
si t'y tiens vaiment :) !

Suppression dans la bdd

par Evolved » 16 févr. 2012, 19:00

Bonjour,

J'ai un petit problème, je reçois une Parse error: syntax error, unexpected T_VARIABLE, voici le code:
(le but de ce code est de supprimer une ligne dans la bdd après avoir entrer le numéro de l'id dans un formulaire depuis une page admin)
<?php
// On commence par récupérer les champs
if(isset($_POST['id']))      $id=$_POST['id'];
else      $id="";

// On vérifie si les champs sont vides
if(empty($id))
    {
    echo '<font color="red">Un ou des champs sont vides !</font>';
    }

// Aucun champ n'est vide, on peut enregistrer dans la table
else     
    {
       $pdo_options[PDO::ATTR_ERRMODE] = PDO::ERRMODE_EXCEPTION;
    $bdd = new PDO('mysql:host=localhost;dbname=bd_garage', 'root', '', $pdo_options);

	
$sql = "DELETE FROM occasions WHERE id ="$id"";
echo $sql ;
// Si il y a une erreur.
$result = mysql_query($sql) or die ("Exécution de la requête impossible");   
if($result)
{
echo("La suppression à été correctement effectuée") ;
}
else
{
echo("La suppression à échouée") ;
}
}
?>
d'après mes recherches ça pourrait être la variable $id qui n'est pas connu, mais elle est pourtant déclaré au début :x ? la ligne qui renvoie l'erreur est : $sql = "DELETE FROM occasions WHERE id ="$id"";
(le echo ne renvoie rien)