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

jQuery Discussion :

ajax et php et valeur de retour


Sujet :

jQuery

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Août 2009
    Messages
    7
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2009
    Messages : 7
    Par défaut ajax et php et valeur de retour
    Bonjour à tous,

    J'utilise jquery ajax pour exécuter mes procédures ajax.
    J'ai une requete ajax qui va lire un fichier texte sur le serveur en php.
    dont voici le code php.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    $trouve="";
    $file=$form_file;
    if (file_exists($file))
    { 
    $trouve=trim(file_get_contents($file));	
    }
    $trouve = preg_replace('#\s#', '', $trouve);
    echo $trouve;

    Voici maintenant mon javascript qui appelle la page php.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    $.ajax({
    		type:'post',
    		url:"ajaxfamily.php",
    		data:{'file':file,'proc':'lire_talk','mess':'h'},
    		async:true,
    		success:function(data){
    			if (data.length-7>0)
    			{
    }
    })
    Ma question est la suivante pourquoi même si j'ai une chaine(data) vide, elle fait une taille de 7 caractères ?

    Merci d'avance pour vos réponses.

    Denis

  2. #2
    Membre Expert Avatar de darkstar123456
    Homme Profil pro
    Développeur Web
    Inscrit en
    Mars 2008
    Messages
    1 895
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Mars 2008
    Messages : 1 895
    Par défaut
    probablement des espaces qui se perdent dans ton fichier appelé par AJAX

  3. #3
    Membre du Club
    Profil pro
    Inscrit en
    Août 2009
    Messages
    7
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2009
    Messages : 7
    Par défaut
    Salut darkstar123456,

    Je ne comprends pas ta réponse mais j'ai fait les tests suivants.
    J'ai testé et envoyé la taille de $trouve qui était de 0.
    Mais data a comme taille la taille de la $trouve+7.

    C'est ça que je ne comprends pas pourquoi j'ai 7 caractères en plus.

  4. #4
    Membre Expert
    Avatar de Gruik
    Profil pro
    Développeur Web
    Inscrit en
    Juillet 2003
    Messages
    1 566
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Juillet 2003
    Messages : 1 566
    Par défaut
    Hello,

    Ca peut être aussi des espaces / sauts de ligne émis par le code php, genre tu as un include contenant des fonctions et il a contient des sauts de lignes avant ou après le debut du code php
    Code php : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
     
     
    <?php
     
    /* ... */
     
    ?>

  5. #5
    Membre du Club
    Profil pro
    Inscrit en
    Août 2009
    Messages
    7
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2009
    Messages : 7
    Par défaut
    y-a-t-il une méthode pour éviter ça ?
    et pourquoi trim n'enlève pas ces espaces ?

    merci encore

  6. #6
    Membre Expert
    Avatar de Gruik
    Profil pro
    Développeur Web
    Inscrit en
    Juillet 2003
    Messages
    1 566
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Juillet 2003
    Messages : 1 566
    Par défaut
    Citation Envoyé par bdisplay Voir le message
    y-a-t-il une méthode pour éviter ça ?
    et pourquoi trim n'enlève pas ces espaces ?

    merci encore
    Bah vérifier chacun des fichiers sources inclus et voir si les balises d'ouverture et de fermeture php collent bien au débuts et fins des fichier.
    trim() va enlever les caractères d'espacement de la chaine en paramètre, pas de ce qui va être envoyé au navigateur

  7. #7
    Membre du Club
    Profil pro
    Inscrit en
    Août 2009
    Messages
    7
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2009
    Messages : 7
    Par défaut
    Merci les gars,

    Effectivement j'avais des includes et de dans des espaces entre des sections php.

    Merci encore pour votre aide.

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

Discussions similaires

  1. Réponses: 3
    Dernier message: 06/05/2012, 06h55
  2. appel script php et condition sur valeur de retour
    Par lolodev dans le forum Général JavaScript
    Réponses: 3
    Dernier message: 03/06/2011, 08h18
  3. [AJAX] Ajax, array, php, renvoi de valeur
    Par Oukaria dans le forum AJAX
    Réponses: 4
    Dernier message: 16/06/2010, 16h56
  4. [AJAX] Récupération d'une valeur en retour d'un php
    Par lodan dans le forum Général JavaScript
    Réponses: 6
    Dernier message: 08/02/2007, 21h18
  5. Pourquoi une seule valeur de retour pour les fonctions ?
    Par Bruno75 dans le forum Langages de programmation
    Réponses: 33
    Dernier message: 18/01/2004, 13h58

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