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

JavaScript Discussion :

Image inscription ajax


Sujet :

JavaScript

  1. #1
    Membre habitué Avatar de mimagyc
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    310
    Détails du profil
    Informations personnelles :
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations forums :
    Inscription : Novembre 2006
    Messages : 310
    Points : 151
    Points
    151
    Par défaut Image inscription ajax
    Bonjour,

    j'ai donc fait un formulaire d'inscription ... (j'en parle d'en d'autre sujet . ) .

    Mon souci est que je vérifie tout les champs en ajax dans ma base de donnée, mais pour vérifié le code de validation , il m'est impossible de le faire , le code inséré dans le $_SESSION['code'] a toujours une page de retard ...

    Comment procédé pour pour avoir le code afficher sur la page dans ma session ...

    Voici la page test => http://mimagyc.ovh.org/projet_site/
    (Actualisé plusieur fois la page, vous aller voir le code s'afficher, j'ai simplement fait un echo $_SESSION['code']; )

    et le fichier image.php
    Code : 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
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
     
    <?php
     
    session_start();
     
    $liste = "123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ";
     
    $code = '';
    while(strlen($code) != 6) {
       $code .= $liste[mt_rand(0,36)];
    }
     
    $_SESSION['code']=$code; 
     
     
     
     
     
    $img = imageCreate(70, 20) or die ("Problème de création GD");
     
    $background_color = imagecolorallocate ($img, 238, 238, 238);
     
    $ecriture_color = imagecolorallocate ($img, 0, 0, 0);
     
    $code_police=5;
     
    header('Expires: Mon, 26 Jul 1997 05:00:00 GMT');
    header('Cache-Control: no-store, no-cache, must-revalidate');
    header('Cache-Control: post-check=0, pre-check=0', false);
    header("Content-type: image/jpeg");
     
    imageString($img, $code_police,(70-imageFontWidth($code_police) * strlen("".$code.""))/2,0, $code,$ecriture_color);
     
     
    imagejpeg($img,'',20);
     
    imagedestroy($img);
     
    ?>
    N'hésite pas pour de plus ample information.

    Merci.

  2. #2
    Rédacteur

    Avatar de Bovino
    Homme Profil pro
    Développeur Web
    Inscrit en
    Juin 2008
    Messages
    23 647
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 53
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2008
    Messages : 23 647
    Points : 91 220
    Points
    91 220
    Billets dans le blog
    20
    Par défaut
    Pourquoi ne l'intègres-tu pas dans les paramètres transmis par ta requête Ajax (pas de changement de page, donc code valable) pour ensuite l'insérer dans le tableau SESSION ?
    Du style :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $_SESSION['code'] = $_POST['code']
    Pas de question technique par MP !
    Tout le monde peut participer à developpez.com, vous avez une idée, contactez-moi !
    Mes formations video2brain : La formation complète sur JavaScriptJavaScript et le DOM par la pratiquePHP 5 et MySQL : les fondamentaux
    Mon livre sur jQuery
    Module Firefox / Chrome d'intégration de JSFiddle et CodePen sur le forum

  3. #3
    Membre habitué Avatar de mimagyc
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    310
    Détails du profil
    Informations personnelles :
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations forums :
    Inscription : Novembre 2006
    Messages : 310
    Points : 151
    Points
    151
    Par défaut
    je n'ai pas bien compris ..

    je ne peut pas utiliser $_POST['code] pour la simple raison que je n'utilise pas le tableau du formulaire , mais je prend les info via ajax, donc
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    document.getElementById(element).value
    mais l'insertion du code dans la session ce fait un rafraichissement de page ... d'ou le retard enfin je pense, mais comment palier a ce retard.

  4. #4
    Rédacteur

    Avatar de Bovino
    Homme Profil pro
    Développeur Web
    Inscrit en
    Juin 2008
    Messages
    23 647
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 53
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2008
    Messages : 23 647
    Points : 91 220
    Points
    91 220
    Billets dans le blog
    20
    Par défaut
    Citation Envoyé par mimagyc Voir le message
    je n'ai pas bien compris ..
    Non, je crois que c'est moi qui n'ai pas bien compris en fait...
    Reprenons du début :
    tu crées une variable de session concernant le code dans ton image.
    Jusque là, à priori, pas de problème, en revanche, pourquoi veux-tu changer ce code à chaque fois ? Logiquement, tu ne devrais le changer QUE si l'utilisateur à mal entré le code...
    Pas de question technique par MP !
    Tout le monde peut participer à developpez.com, vous avez une idée, contactez-moi !
    Mes formations video2brain : La formation complète sur JavaScriptJavaScript et le DOM par la pratiquePHP 5 et MySQL : les fondamentaux
    Mon livre sur jQuery
    Module Firefox / Chrome d'intégration de JSFiddle et CodePen sur le forum

  5. #5
    Membre habitué Avatar de mimagyc
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    310
    Détails du profil
    Informations personnelles :
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations forums :
    Inscription : Novembre 2006
    Messages : 310
    Points : 151
    Points
    151
    Par défaut
    Je ne veut pas le changer ?! ^^

    J'aimerai pouvoir vérifier en javascript si le code rentré est identique a celui de la session or a chaque vois que je vais sur la page , la session est vide a la première visite, après un rafraichissement , la session contiens la premier code, or l'image elle a changer de code ...

  6. #6
    Rédacteur

    Avatar de Bovino
    Homme Profil pro
    Développeur Web
    Inscrit en
    Juin 2008
    Messages
    23 647
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 53
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2008
    Messages : 23 647
    Points : 91 220
    Points
    91 220
    Billets dans le blog
    20
    Par défaut
    Oui, il te manque une condition :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    session_start();
    if(!isset($_SESSION['code']) //par la suite ou "le code entré n'est pas bon"
    {$liste = "123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ";
     
    $code = '';
    while(strlen($code) != 6) {
       $code .= $liste[mt_rand(0,36)];
    }
     
    $_SESSION['code']=$code;}
    Pas de question technique par MP !
    Tout le monde peut participer à developpez.com, vous avez une idée, contactez-moi !
    Mes formations video2brain : La formation complète sur JavaScriptJavaScript et le DOM par la pratiquePHP 5 et MySQL : les fondamentaux
    Mon livre sur jQuery
    Module Firefox / Chrome d'intégration de JSFiddle et CodePen sur le forum

  7. #7
    Membre habitué Avatar de mimagyc
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    310
    Détails du profil
    Informations personnelles :
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations forums :
    Inscription : Novembre 2006
    Messages : 310
    Points : 151
    Points
    151
    Par défaut
    Oui donc l' code reste le meme, et je suis obliger de rafraicir la page si je veu que le code soit dans ma session .

    Et avec ceci, l'image ne s'affiche plus ..

  8. #8
    Rédacteur

    Avatar de Bovino
    Homme Profil pro
    Développeur Web
    Inscrit en
    Juin 2008
    Messages
    23 647
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 53
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2008
    Messages : 23 647
    Points : 91 220
    Points
    91 220
    Billets dans le blog
    20
    Par défaut
    Oui donc l' code reste le meme, et je suis obliger de rafraicir la page si je veu que le code soit dans ma session .
    Ben non, à partir du moment où la page est ouverte une première fois, ton code est dans la session... ensuite, tu peux utiliser Ajax pour faire la vérification. Là où ça posait problème avant, c'est que ta requête appelait la page php qui recréait donc systématiquement un code. Ajax te permet de ne pas recharger la page, mais le script php était malgré tout lancé et te recréait un code session, ce n'est plus le cas.

    Et avec ceci, l'image ne s'affiche plus ..
    oui, la fermeture du if était probablement mal positionné, à toi de rectifier pour ne recréer l'image que si le code change...
    Pas de question technique par MP !
    Tout le monde peut participer à developpez.com, vous avez une idée, contactez-moi !
    Mes formations video2brain : La formation complète sur JavaScriptJavaScript et le DOM par la pratiquePHP 5 et MySQL : les fondamentaux
    Mon livre sur jQuery
    Module Firefox / Chrome d'intégration de JSFiddle et CodePen sur le forum

  9. #9
    Membre habitué Avatar de mimagyc
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    310
    Détails du profil
    Informations personnelles :
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations forums :
    Inscription : Novembre 2006
    Messages : 310
    Points : 151
    Points
    151
    Par défaut
    J'ai compris , mais le problème est maintenant que la session est vide lorsque tu arrive sur la page , pour que la session prenne en compte le code, il faut que la page soit recharge ou bien aller vers un lien, un truc du genre. donc la, ma session reste vide ... essaye d'aller dessus, tu verra que la session ne s'affiche, elle est sensé s'afficher en bas de la page

  10. #10
    Rédacteur

    Avatar de Bovino
    Homme Profil pro
    Développeur Web
    Inscrit en
    Juin 2008
    Messages
    23 647
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 53
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2008
    Messages : 23 647
    Points : 91 220
    Points
    91 220
    Billets dans le blog
    20
    Par défaut
    Essaye en rajoutant :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    session_start();
    session_register('code');
    Pas de question technique par MP !
    Tout le monde peut participer à developpez.com, vous avez une idée, contactez-moi !
    Mes formations video2brain : La formation complète sur JavaScriptJavaScript et le DOM par la pratiquePHP 5 et MySQL : les fondamentaux
    Mon livre sur jQuery
    Module Firefox / Chrome d'intégration de JSFiddle et CodePen sur le forum

  11. #11
    Membre habitué Avatar de mimagyc
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    310
    Détails du profil
    Informations personnelles :
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations forums :
    Inscription : Novembre 2006
    Messages : 310
    Points : 151
    Points
    151
    Par défaut
    toujours pas

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
     
    session_start();
    session_register('code');
    if(!isset($_SESSION['code']) {
    $liste = "123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ";
     
    $code = '';
    while(strlen($code) != 6) {
       $code .= $liste[mt_rand(0,36)];
    }
     
    $_SESSION['code']=$code;
    }

  12. #12
    Rédacteur

    Avatar de Bovino
    Homme Profil pro
    Développeur Web
    Inscrit en
    Juin 2008
    Messages
    23 647
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 53
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2008
    Messages : 23 647
    Points : 91 220
    Points
    91 220
    Billets dans le blog
    20
    Par défaut
    Alors 2 pistes :
    1) Si on suit la solution session_register(), du coup le problème vient du fait que dans ce cas,
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    if(!isset($_SESSION['code'])
    est toujours faux... il faut donc changer le test, cependant, après réflexion, je ne pense pas que ce soit pas la solution...

    2) Il doit y avoir une erreur dans ton code php car quand tu arrives sur la page, il est censé te créer la session puis te créer $_SESSION[code]...
    D'ailleurs, essaye de faire
    $_SESSION[code]
    au lieu de
    Pas de question technique par MP !
    Tout le monde peut participer à developpez.com, vous avez une idée, contactez-moi !
    Mes formations video2brain : La formation complète sur JavaScriptJavaScript et le DOM par la pratiquePHP 5 et MySQL : les fondamentaux
    Mon livre sur jQuery
    Module Firefox / Chrome d'intégration de JSFiddle et CodePen sur le forum

  13. #13
    Membre habitué Avatar de mimagyc
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    310
    Détails du profil
    Informations personnelles :
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations forums :
    Inscription : Novembre 2006
    Messages : 310
    Points : 151
    Points
    151
    Par défaut
    Résolu ! :p

    il fallait mettre dans tout les fichier un
    Merci

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [AJAX] upload d'images php/ajax
    Par zehni dans le forum Général JavaScript
    Réponses: 5
    Dernier message: 17/08/2007, 14h13
  2. [AJAX] Image et Ajax
    Par moscovisci dans le forum Général JavaScript
    Réponses: 1
    Dernier message: 03/01/2007, 16h33
  3. [AJAX] affichage d'images avec ajax
    Par Pi2 dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 10/12/2006, 18h56

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