IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

PHP & Base de données Discussion :

[SQL] Ecraser une image dans une table.


Sujet :

PHP & Base de données

  1. #1
    klerdesign
    Invité(e)
    Par défaut [SQL] Ecraser une image dans une table.
    Bonjour,
    grâce à l'aide de Dia_fr et Titoumimi, j'arrive enfin à afficher mes images dans mon module admin pour mes news. Mais Quelle requête utiliser si je ne veux insérer dans ma table 'images' qu'une seule image et supprimer l'autre déjà présente?

    Je pensais utiliser une requête du type :
    DELETE FROM 'images' WHERE 'img_id' = 1 LIMIT1;
    Mais cela ne rentrera-t'il pas en conflit avec mon script d'insertion d'image?

  2. #2
    Membre averti
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    27
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2006
    Messages : 27
    Par défaut
    Citation Envoyé par klerdesign
    Quelle requête utiliser si je ne veux insérer dans ma table 'images' qu'une seule image et supprimer l'autre déjà présente?
    Je peut-etre mal compris le sens de ta phrase mais ce que tu cherche a faire resemble a une mise à jour. Si c'est le cas utilise une requete SQL de type UPDATE

    UPDATE nom_de_la_table SET nom_du_champ = nouvelle_valeur WHERE identifiant_du_champ = identifiant_de_image_a_modifier

    ++ nairolf

  3. #3
    klerdesign
    Invité(e)
    Par défaut
    J'ai parlé trop vite :

    Pour l'instant ma requête d'insertion d'image est la suivante :
    $req = "INSERT INTO `images` (".
    "img_nom, img_taille, img_type, img_blob ".
    ") VALUES (".
    "'".$img_nom."', ".
    "'".$img_taille."', ".
    "'".$img_type."', ".
    "'".addslashes ($img_blob)."') ";

    Je voudrais bien l'adapter en UPDATE :

    $req="UPDATE into ‘images‘ SET
    img_nom='$img_nom',
    img_taille='$img_taille',
    img_type='$img_type',
    img_blob="addslashes '$img_blob' "
    WHERE img_id='$img_id' ";

    Et tout ça me renvoie une belle erreur de syntaxe. Ce qui manque dans PHPMyAdmin, c'est la correction

    Si l'un d'entre vous aperçoit l'erreur, je vous en serai très reconnaisssant
    Dernière modification par klerdesign ; 05/10/2006 à 16h36. Motif: j'ai parlé trop vite

  4. #4
    Membre confirmé Avatar de kodokan
    Profil pro
    Lycéen
    Inscrit en
    Avril 2006
    Messages
    127
    Détails du profil
    Informations personnelles :
    Âge : 33
    Localisation : France

    Informations professionnelles :
    Activité : Lycéen

    Informations forums :
    Inscription : Avril 2006
    Messages : 127
    Par défaut
    Salut

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    $img_blob = addslashes($img_blob);
     
    $req="UPDATE into ‘images‘ SET
    img_nom='$img_nom',
    img_taille='$img_taille',
    img_type='$img_type',
    img_blob='$img_blob'
    WHERE img_id=\"{$img_id}\"";

  5. #5
    Expert confirmé
    Avatar de N1bus
    Homme Profil pro
    Dev. Web & OpenERP
    Inscrit en
    Janvier 2003
    Messages
    2 827
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 60
    Localisation : France, Seine et Marne (Île de France)

    Informations professionnelles :
    Activité : Dev. Web & OpenERP
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Janvier 2003
    Messages : 2 827
    Par défaut
    Citation Envoyé par kodokan
    Salut

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    $img_blob = addslashes($img_blob);
     
    $req="UPDATE into ‘images‘ SET
    img_nom='$img_nom',
    img_taille='$img_taille',
    img_type='$img_type',
    img_blob='$img_blob'
    WHERE img_id=\"{$img_id}\"";
    Comme je ne connais pas le numero de la ligne où tu as l'erreur, je suppose qu'elle est dans ta requete .

    J'aurais écris ça :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    $img_blob = addslashes($img_blob);
     
    $req="UPDATE into images SET
    img_nom='$img_nom',
    img_taille='$img_taille',
    img_type='$img_type',
    img_blob='$img_blob'
    WHERE img_id='" . $img_id . "' ";
    (clause WHERE )

    N1bus

  6. #6
    klerdesign
    Invité(e)
    Par défaut
    je n'ai pas pu tester avant aujourd'hui et je retrouve encore la même erreur :
    you have an error in your SQL syntax near 'into images SET...' à la ligne 1.

    Je ne comprends pas, c'est vraiment dément.

  7. #7
    Membre confirmé Avatar de kodokan
    Profil pro
    Lycéen
    Inscrit en
    Avril 2006
    Messages
    127
    Détails du profil
    Informations personnelles :
    Âge : 33
    Localisation : France

    Informations professionnelles :
    Activité : Lycéen

    Informations forums :
    Inscription : Avril 2006
    Messages : 127
    Par défaut
    Peut-etre que cela vient de ta table SQL ...

    On pourrait voir la structure ?

  8. #8
    Expert confirmé
    Avatar de N1bus
    Homme Profil pro
    Dev. Web & OpenERP
    Inscrit en
    Janvier 2003
    Messages
    2 827
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 60
    Localisation : France, Seine et Marne (Île de France)

    Informations professionnelles :
    Activité : Dev. Web & OpenERP
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Janvier 2003
    Messages : 2 827
    Par défaut
    Ben oui !
    J'avais lu trop vite !

    Si ta table s'appelle images , la syntaxe de UPDATE c'est :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    "UPDATE images SET ...."
    et non pas

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    "UPDATE into images SET ...."
    N1bus

  9. #9
    klerdesign
    Invité(e)
    Par défaut
    En réponse à Kodokan, cela ne vient pas de la structure de ma table puisqu'un INSERT into fonctionne parfaitement. Je n'ai pas de problème à insérer une image, mais à écraser tout ce qui se trouve déjà dans la table.

    Voici quand même la syntaxe de création de ma table au cas où un paramètre serait mal renseigné :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    CREATE TABLE `images` (
    `img_id` INT NOT NULL AUTO_INCREMENT ,
    `img_nom` VARCHAR( 50 ) NOT NULL ,
    `img_taille` VARCHAR( 25 ) NOT NULL ,
    `img_type` VARCHAR( 25 ) NOT NULL ,
    `img_desc` VARCHAR( 100 ) NOT NULL ,
    `img_blob` BLOB NOT NULL ,
    PRIMARY KEY ( `img_id` )
    )

  10. #10
    Expert confirmé
    Avatar de N1bus
    Homme Profil pro
    Dev. Web & OpenERP
    Inscrit en
    Janvier 2003
    Messages
    2 827
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 60
    Localisation : France, Seine et Marne (Île de France)

    Informations professionnelles :
    Activité : Dev. Web & OpenERP
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Janvier 2003
    Messages : 2 827
    Par défaut
    INSERT INTO images = ok

    mais pas UPDATE INTO images .

    C'est : UPDATE images

    je rabâche, mais bon ...

    N1bus

  11. #11
    klerdesign
    Invité(e)
    Par défaut
    c'est exactement ce que j'ai testé : UPDATE images SET...

  12. #12
    Expert confirmé
    Avatar de N1bus
    Homme Profil pro
    Dev. Web & OpenERP
    Inscrit en
    Janvier 2003
    Messages
    2 827
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 60
    Localisation : France, Seine et Marne (Île de France)

    Informations professionnelles :
    Activité : Dev. Web & OpenERP
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Janvier 2003
    Messages : 2 827
    Par défaut
    Et ça marche ou pas ?

  13. #13
    klerdesign
    Invité(e)
    Par défaut
    ben non justement. Ca ne marche pas.
    Est-ce que je ne peux pas renseigner le champ image de ma table avec certaines valeurs, de sorte que cette dernière n'accepte q'un seul enregistrement ?

  14. #14
    klerdesign
    Invité(e)
    Par défaut
    J'ai trouvé une réponse :

    $req = 'UPDATE images SET img_nom="'.$img_nom.'",
    img_taille="'.$img_taille.'",
    img_type="'.$img_type.'",
    img_blob="'.addslashes ($img_blob).'"';

    Cela marche plutôt bien.

Discussions similaires

  1. [Débutant] Manipulation d'images : intégrer une image dans une image
    Par noscollections dans le forum VB.NET
    Réponses: 2
    Dernier message: 17/10/2014, 11h51
  2. Réponses: 2
    Dernier message: 27/10/2010, 20h38
  3. Mettre une Image dans une Image
    Par shadowhocine dans le forum SWT/JFace
    Réponses: 2
    Dernier message: 19/12/2006, 18h40
  4. Réponses: 3
    Dernier message: 30/10/2006, 11h21
  5. Insérer une légende dans une image avec une police plus petite
    Par Paulinho dans le forum Tableaux - Graphiques - Images - Flottants
    Réponses: 3
    Dernier message: 29/04/2006, 14h19

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo