problême avec delete

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 : problême avec delete

par ouckileou » 27 juil. 2006, 10:07

Une requête DELETE supprime toute la ligne, je ne vois pas comment tu pourrais n'avoir qu'une colonne d'effacée :shock:

Et, on va le répéter encore une fois, pour débugger une requête SQL il faut avoir le code SQL généré, pas le code PHP qui la crée...

donc : echo $query

Et ça c'est un problème SQL, il y a un forum pour ça...

par Kwansu » 27 juil. 2006, 10:06

Mon problème est règlé...en fait plus loin dans la page je gere également les créations de champs..et j'avais pas mis qu'il ne fallait pas creer de champs si $operation = "supprimer" :oops:

Merci pour votre rapidité :D

par Kwansu » 27 juil. 2006, 09:40

Merci pour ta réponse aelurus mais la requete ne s'effecute plus si je rajoute ALL.

Tictac :arrow: Oui il s'agit bien de supprimer si toutes les conditions sont réunies donc AND.

par aelurus » 27 juil. 2006, 09:10

Je dirais
$query = "DELETE ALL FROM contenu_page WHERE id_type_page=$id_type_page AND id_sous_type_page=$id_sous_type_page AND num_page=$num_page";
si tu veux supprimer tout ce qui correspond a ta clause WHERE. Je n'explique pas quand ne précisant rien ta requette supprime quand meme un champ ?
Mais il est tot :)

par Tictac » 27 juil. 2006, 09:07

Tu veux effacer seulement si les 4 conditions sont remplies ou si le champ contient une des valeurs ?

Car sinon, je pense que tu devrais plutot utiliser OR !

problême avec delete

par Kwansu » 27 juil. 2006, 09:02

Bonjour tout le monde,

Voila j'ai un petit probleme avec la fonciton delete.

Je souhaite effacer les champs d'une tables:

voici mon code:
if ($operation == "supprimer")
{
    $query = "DELETE FROM contenu_page WHERE id_type_page=$id_type_page AND id_sous_type_page=$id_sous_type_page AND num_page=$num_page";
    $result = mysql_query($query);
    if (!$result)
    {
        echo "Texte pas effacé";
    }
    else {
        echo "Texte effacé";
}
La table contient 5 champs (4 INT et 1 TEXT): id_type_page, id_sous_type_page, num_page, num_texte, texte.

Lorsque j'effectue le requete seul le champ texte est effacé.

Merci de me dire d'ou peux venir ce résultat.