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 :

Interaction AJAX et PHP


Sujet :

Langage PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Février 2020
    Messages
    77
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations professionnelles :
    Activité : Administrateur de base de données

    Informations forums :
    Inscription : Février 2020
    Messages : 77
    Par défaut Interaction AJAX et PHP
    Bonjour j'ai ce bout de code :
    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
     
    function getContent(timestamp)
    {
        var queryString = {'timestamp' : timestamp};
     
        $.ajax(
            {
                type: 'GET',
                url: 'php-long-polling/server/serverNewUser.php',
                data: queryString,
                success: function(data){
                    var obj = jQuery.parseJSON(data);
                    $('#response').html(obj.data_from_file);
                    getContent(obj.timestamp);
                }
            }
        );
    }
     
    // initialize jQuery
    $(function() {
        getContent();
    });
    Le probleme c'est que si je met du PHP dans**php-long-polling/server/serverNewUser.php** il ne s'affiche strictement rien.

    Tandis qu'avec du texte standard cela fonctionne.

    Pouvez vous m'aider svp ?

  2. #2
    Membre Expert
    Avatar de cavo789
    Homme Profil pro
    Développeur Web
    Inscrit en
    Mai 2004
    Messages
    1 797
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Mai 2004
    Messages : 1 797
    Par défaut
    Bonjour

    Que se passe-t-il quand tu accèdes directement au script ? Accède à http tonsite/php-long-polling/server/serverNewUser.php et vois ce qu'il se passe. Si tu ne vois rien de rien, c'est que ton script PHP est incorrect ou qu'il ne retourne en effet rien.
    Essaie alors un bête "phpinfo();" dans le script, juste ça, histoire de bien voir que le script retourne bien un contenu et de valider ton code javascript.

  3. #3
    Membre confirmé
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Février 2020
    Messages
    77
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations professionnelles :
    Activité : Administrateur de base de données

    Informations forums :
    Inscription : Février 2020
    Messages : 77
    Par défaut
    Merci.

    J'ai ça :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    {"data_from_file":"test","timestamp":1634884971}
    OU "test" est le contenu de moin fichier

    Sinon je met du php ccomme ceci
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    <?php 
    echo "test";
    ?>
    ça me retourne sa :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    {"data_from_file":"","timestamp":1634884971}
    Je join aussi mon fichier de traitement :
    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
     
    <?php
    set_time_limit(0);
     
    $data_source_file = 'welcomeMessage.php';
     
    while (true) {
     
        $last_ajax_call = isset($_GET['timestamp']) ? (int)$_GET['timestamp'] : null;
     
        clearstatcache();
     
        $last_change_in_data_file = filemtime($data_source_file);
     
        if ($last_ajax_call == null || $last_change_in_data_file > $last_ajax_call) {
     
            // get content of data.txt
            $data = file_get_contents($data_source_file);
     
            // put data.txt's content and timestamp of last data.txt change into array
            $result = array(
                'data_from_file' => $data,
                'timestamp' => $last_change_in_data_file
            );
     
            // encode to JSON, render the result (for AJAX)
            $json = json_encode($result);
            echo $json;
     
            // leave this loop step
            break;
     
        } else {
            // wait for 1 sec (not very sexy as this blocks the PHP/Apache process, but that's how it goes)
            sleep( 1 );
            continue;
        }
    }

  4. #4
    Membre confirmé
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Février 2020
    Messages
    77
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations professionnelles :
    Activité : Administrateur de base de données

    Informations forums :
    Inscription : Février 2020
    Messages : 77
    Par défaut
    Si ceci :
    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
     
    <?php
    set_time_limit(0);
     
    $data_source_file = 'welcomeMessage.php';
     
    while (true) {
     
        $last_ajax_call = isset($_GET['timestamp']) ? (int)$_GET['timestamp'] : null;
     
        clearstatcache();
     
        $last_change_in_data_file = filemtime($data_source_file);
     
        if ($last_ajax_call == null || $last_change_in_data_file > $last_ajax_call) {
     
            // get content of data.txt
            $data = file_get_contents($data_source_file);
     
            // put data.txt's content and timestamp of last data.txt change into array
            $result = array(
                'data_from_file' => $data,
                'timestamp' => $last_change_in_data_file
            );
     
            // encode to JSON, render the result (for AJAX)
            $json = json_encode($result);
            echo $json;
     
            // leave this loop step
            break;
     
        } else {
            // wait for 1 sec (not very sexy as this blocks the PHP/Apache process, but that's how it goes)
            sleep( 1 );
            continue;
        }
    }
    Ne renvoie pas d’interprétation de php est ce que cela se peut etre a cause de ça ?
    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
     
    function getContent(timestamp)
    {
        var queryString = {'timestamp' : timestamp};
     
        $.ajax(
            {
                type: 'GET',
                url: 'php-long-polling/server/serverNewUser.php',
                data: queryString,
                success: function(data){
                    // put result data into "obj"
                    var obj = jQuery.parseJSON(data);
                    // put the data_from_file into #response
                    $('#response').html(obj.data_from_file);
                    // call the function again, this time with the timestamp we just got from server.php
                    getContent(obj.timestamp);
                }
            }
        );
    }
     
    // initialize jQuery
    $(function() {
        getContent();
    });
    Merci

  5. #5
    Expert confirmé
    Avatar de mathieu
    Profil pro
    Inscrit en
    Juin 2003
    Messages
    10 670
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 10 670
    Par défaut
    est ce que vous accédez bien à tous ces url en passant par un serveur http avec des adresse du genre http://serveur/repertoire/... ?

  6. #6
    Membre confirmé
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Février 2020
    Messages
    77
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations professionnelles :
    Activité : Administrateur de base de données

    Informations forums :
    Inscription : Février 2020
    Messages : 77
    Par défaut
    Oui bien sur.

    Merci

  7. #7
    Expert confirmé
    Avatar de mathieu
    Profil pro
    Inscrit en
    Juin 2003
    Messages
    10 670
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 10 670
    Par défaut
    vous avez un souci de configuration du serveur alors si le php n'est pas exécuté.

    vous n'avez pas répondu à cavo789 pour ça :
    Citation Envoyé par cavo789 Voir le message
    Essaie alors un bête "phpinfo();" dans le script, juste ça, histoire de bien voir que le script retourne bien un contenu et de valider ton code javascript.

  8. #8
    Membre confirmé
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Février 2020
    Messages
    77
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations professionnelles :
    Activité : Administrateur de base de données

    Informations forums :
    Inscription : Février 2020
    Messages : 77
    Par défaut
    La reponse que ya pas de probleme avec PHP

    J'utilise ça si cela peu vous aider :
    https://github.com/panique/php-long-polling

  9. #9
    Expert confirmé
    Avatar de mathieu
    Profil pro
    Inscrit en
    Juin 2003
    Messages
    10 670
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 10 670
    Par défaut
    dans votre 1er message vous dite que le php dans "serverNewUser.php" ne s'affiche pas. mais en fait c'est le php dans "welcomeMessage.php" qui vous pose problème, non ?

  10. #10
    Membre confirmé
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Février 2020
    Messages
    77
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations professionnelles :
    Activité : Administrateur de base de données

    Informations forums :
    Inscription : Février 2020
    Messages : 77
    Par défaut
    Alors oui.

    Pour etre clair, le serverNewUser.php charge mon fichier welcomeMessage.php qui dedans contient ce que l'on desire.

    Et le contenu de welcomeMessage.php ne pose aucun probleme si je met du texte brute ou du HTML, pour le php il affiche plus rien et cela n'a rien avoir avec php car mon code est correct

    Merci

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

Discussions similaires

  1. Interaction entre AJAX et PHP
    Par Acarya dans le forum AJAX
    Réponses: 11
    Dernier message: 26/06/2017, 10h06
  2. [AJAX] chat php ajax
    Par xperienss dans le forum Général JavaScript
    Réponses: 3
    Dernier message: 04/07/2006, 20h49
  3. [AJAX] Moins de requetes possibles sur un server. Ajax ou Php?
    Par trihanhcie dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 12/05/2006, 13h08
  4. [Librairies] Ajax et PHP, qu'en pensez-vous ?
    Par shadeoner dans le forum Bibliothèques et frameworks
    Réponses: 7
    Dernier message: 05/05/2006, 12h41
  5. [AJAX] Communication PHP ~ JavaScript
    Par TheBaeK1 dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 04/05/2006, 18h24

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