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

Langage PHP Discussion :

Création d'une galerie web


Sujet :

Langage PHP

  1. #41
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Novembre 2008
    Messages
    90
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2008
    Messages : 90
    Points : 36
    Points
    36
    Par défaut
    $_SESSION je l'avais oublié celui-là !
    Faut que je le garde en tête. Maintenant faut que je teste tout ça !
    Je vous tiens au courant soit par un post si on me répond soit en éditant !

    EDIT: Quand j'essaie la commande dans ma base de données, ça me dit qu'il y a une erreur sur $_SESSION['login'] ...

  2. #42
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Novembre 2008
    Messages
    90
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2008
    Messages : 90
    Points : 36
    Points
    36
    Par défaut
    Bon je fais un double-post pour actualiser (au cas où personne n'aurait vu mon edit). Vous pouvez supprimer ce message si vous voulez !

  3. #43
    Inactif   Avatar de Deallyra
    Profil pro
    Étudiant
    Inscrit en
    Février 2007
    Messages
    1 997
    Détails du profil
    Informations personnelles :
    Âge : 35
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2007
    Messages : 1 997
    Points : 1 769
    Points
    1 769
    Par défaut
    Tu pourrais être plus précis que "il y a une erreur" ?
    *Si la réponse vous convient, n'oubliez pas le tag
    *Exprimez vous dans un français correct; on prend le temps de vous lire, prenez le temps de bien écrire.
    *Et comment on interprète votre code? N'oubliez pas la balise!

    *Pour une mise en page simple avec des divs.
    *Pour faire des formulaires xHTML CSS.

  4. #44
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Novembre 2008
    Messages
    90
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2008
    Messages : 90
    Points : 36
    Points
    36
    Par défaut
    Ah oui excuse moi...

    Erreur

    requête SQL:

    UPDATE user SET avatar = $fichier WHERE id_user = $_SESSION[ 'login']

    MySQL a réponduocumentation
    #1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '['login']' at line 3

  5. #45
    Inactif   Avatar de Deallyra
    Profil pro
    Étudiant
    Inscrit en
    Février 2007
    Messages
    1 997
    Détails du profil
    Informations personnelles :
    Âge : 35
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2007
    Messages : 1 997
    Points : 1 769
    Points
    1 769
    Par défaut
    et par hasard, n'aurais-tu pas testé quelque chose du genre :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    $sql = ' UPDATE user SET avatar = $fichier WHERE id_user = $_SESSION[ 'login']';
    Avec des simples quotes?
    *Si la réponse vous convient, n'oubliez pas le tag
    *Exprimez vous dans un français correct; on prend le temps de vous lire, prenez le temps de bien écrire.
    *Et comment on interprète votre code? N'oubliez pas la balise!

    *Pour une mise en page simple avec des divs.
    *Pour faire des formulaires xHTML CSS.

  6. #46
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Novembre 2008
    Messages
    90
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2008
    Messages : 90
    Points : 36
    Points
    36
    Par défaut
    Ben ca fait ça dans la partie de test d'un script SQL sur phpmyadmin. J'ai toujours la même erreur

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    Erreur
     
    requête SQL:
     
    $sql = ' UPDATE user SET avatar = $fichier WHERE id_user = $_SESSION[ 'login ']'
     
    MySQL a répondu:Documentation
    #1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '$sql = ' UPDATE user
    SET avatar = $fichier
    WHERE id_user = $_SESSION[ 'login' at line 1

  7. #47
    Inactif   Avatar de Deallyra
    Profil pro
    Étudiant
    Inscrit en
    Février 2007
    Messages
    1 997
    Détails du profil
    Informations personnelles :
    Âge : 35
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2007
    Messages : 1 997
    Points : 1 769
    Points
    1 769
    Par défaut
    Ok ^^'

    Code php : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    $sql = ' UPDATE user SET avatar = $fichier WHERE id_user = $_SESSION[ 'login ']'

    Cette syntaxe est incorrecte...

    Ce que je voulais te dire...
    Donc si tu l'utilisais, ton problème venait de là.

    Si tu ouvres ta chaîne de caractères avec une simple cote, elle finira après le crochet ouvrant de $_SESSION.

    Si tu testes ta requête sans donner de valeur à $_SESSION['login'], c'est normal que ça plante également.

    Avec un id_user = 1, ca marchera.

    Comment as-tu eu l'idée de tester cette requête dans phpmyadmin? -_-
    *Si la réponse vous convient, n'oubliez pas le tag
    *Exprimez vous dans un français correct; on prend le temps de vous lire, prenez le temps de bien écrire.
    *Et comment on interprète votre code? N'oubliez pas la balise!

    *Pour une mise en page simple avec des divs.
    *Pour faire des formulaires xHTML CSS.

  8. #48
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Novembre 2008
    Messages
    90
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2008
    Messages : 90
    Points : 36
    Points
    36
    Par défaut
    La première requête que j'ai utilisé dans phpmyadmin, il n'y avait pas de guillemets comme cela, j'ai testé sans la variable, et même en testant avec la variable et en mettant des "..." au lieu des '...' (pour l'ensemble de la reqête), je me retrouve avec la même erreur, quoi que je fasse, quoi que je mette dans les [...] de $_SESSION. J'ai essayé dans le code normal, on ne m'envoie rien dans ma table user, la partie avatar reste toujours vide... Pourtant je fais tout pou faire attention à la synthaxe, j'ai essayé plein de choses différentes, résultat: dans le code rien ne se rajoute à avatar et dans phpmyadmin toujours la même erreur...

  9. #49
    Inactif   Avatar de Deallyra
    Profil pro
    Étudiant
    Inscrit en
    Février 2007
    Messages
    1 997
    Détails du profil
    Informations personnelles :
    Âge : 35
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2007
    Messages : 1 997
    Points : 1 769
    Points
    1 769
    Par défaut
    Juste une chose...

    On ne t'a pas demandé de faire des tests sous PhpMyAdmin...

    Bon... Je vais faire les test de mon coté >.>

    Code SQL : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
     
    DROP DATABASE IF EXISTS test;
    CREATE DATABASE IF NOT EXISTS test;
     
    DROP TABLE IF EXISTS user;
    CREATE TABLE IF NOT EXISTS user (
      id int(11) NOT NULL auto_increment,
      pseudo varchar(20) NOT NULL,
      avatar varchar(80) NOT NULL,
      PRIMARY KEY  (id)
    ) ENGINE=InnoDB  DEFAULT CHARSET=latin1 AUTO_INCREMENT=5 ;
     
     
    INSERT INTO user (id, pseudo, avatar) VALUES
    (1, 'toto', './Avatar/01.jpg'),
    (2, 'titi', './Avatar/02.jpg'),
    (3, 'tutu', './Avatar/03.jpg'),
    (4, 'tata', './Avatar/04.jpg');

    Ensuite, la requête dont nous parlions :

    Code SQL : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
     UPDATE user SET avatar = "./newAvatar/01.bmp" WHERE id =1

    Il me retourne :

    Nombre d'enregistrements affectés : 1 (Traitement en 0.0671 sec.)
    Code SQL : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    SELECT *
    FROM user

    1 toto ./newAvatar/01.bmp
    2 titi ./Avatar/02.jpg
    3 tutu ./Avatar/03.jpg
    4 tata ./Avatar/04.jpg
    Donc tu as un problème.

    As-tu remplacé les variables par des valeurs comme je te l'avais suggéré?

    $fichier et $_SESSION['login'] sont inconnus de phpmyadmin.
    Sous phpmyadmin, tu n'es plus dans ton application
    *Si la réponse vous convient, n'oubliez pas le tag
    *Exprimez vous dans un français correct; on prend le temps de vous lire, prenez le temps de bien écrire.
    *Et comment on interprète votre code? N'oubliez pas la balise!

    *Pour une mise en page simple avec des divs.
    *Pour faire des formulaires xHTML CSS.

  10. #50
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Novembre 2008
    Messages
    90
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2008
    Messages : 90
    Points : 36
    Points
    36
    Par défaut
    Bon, désolé du retard, toujours pas internet.
    Bref j'ai essayé avec des valeurs numériques ça marche mais lorsque je demande à l'utilisateur connecté rien ne s'affiche. Il doit sûrement manquer une entête "require_once" qui vérifie l'utilisateur connecté. Et pourtant j'ai rajouté le require_once "lib.inc.php" qui le fait normalement mais il doit manquer quelque chose. Et si ce n'est pas là c'est soit la synthaxe soit autre chose (mais là je suis perdu).

    Normalement c'est un travail que je dois rendre aujourd'hui même mais je veux personnellement que le projet aboutisse. Donc je continuerais à venir ici pour m'améliorer en PHP.

    En attendant quel est mon erreur ?

  11. #51
    Inactif   Avatar de Deallyra
    Profil pro
    Étudiant
    Inscrit en
    Février 2007
    Messages
    1 997
    Détails du profil
    Informations personnelles :
    Âge : 35
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2007
    Messages : 1 997
    Points : 1 769
    Points
    1 769
    Par défaut
    Une erreur de transfert de paramètres...

    Je ne peux pas trop en dire plus actuellement car je devrai me repencher sur ton code et je manque un peu de temps actuellement... Mais vois de ce coté.

    Fais donc un echo de tes variables histoire de savoir ce qu'elles ont dans le ventre.

    Et pour éviter de voir des erreurs inutiles, mets donc un exit(); après ton code.
    Au point où on en est
    *Si la réponse vous convient, n'oubliez pas le tag
    *Exprimez vous dans un français correct; on prend le temps de vous lire, prenez le temps de bien écrire.
    *Et comment on interprète votre code? N'oubliez pas la balise!

    *Pour une mise en page simple avec des divs.
    *Pour faire des formulaires xHTML CSS.

  12. #52
    Expert éminent
    Avatar de 12monkeys
    Homme Profil pro
    Webmaster
    Inscrit en
    Novembre 2006
    Messages
    4 093
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : Webmaster
    Secteur : Service public

    Informations forums :
    Inscription : Novembre 2006
    Messages : 4 093
    Points : 9 031
    Points
    9 031
    Par défaut
    Bonsoir

    Il faut toujours penser au débogage et les moyens qui y parviennent... Dans ton cas affiche la requête pour voir ce qu'elle contient, par exemple :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    $query = "SELECT * FROM tuto_table";
     
    echo $query;// affichage de la requête...
     
    $result = mysql_query($query, $link) or die($query . " - " . mysql_error());
    Vous souhaitez participer à la rubrique (X)HTML/CSS, contactez moi.
    débutez avec les CSS
    Pas de MP pour des questions techniques ! Mode d'emploi du forum ; Règles ; Pensez à la balise code ; Pas de SMS !
    Votez pour les messages qui vous ont aidés...

Discussions similaires

  1. [Galerie] Création d'une galerie photo
    Par saith dans le forum EDI, CMS, Outils, Scripts et API
    Réponses: 4
    Dernier message: 12/10/2007, 17h35
  2. création d'une page web dynamique
    Par mohamed2006 dans le forum Général JavaScript
    Réponses: 1
    Dernier message: 18/01/2007, 16h33
  3. [SOAP][Web Service] erreur création d'une référence Web
    Par Maximil ian dans le forum XML/XSL et SOAP
    Réponses: 6
    Dernier message: 20/06/2005, 14h29
  4. [tomcat] Création d'une application WEB
    Par bob33 dans le forum Tomcat et TomEE
    Réponses: 2
    Dernier message: 25/10/2004, 20h35

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