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

AJAX Discussion :

[AJAX] Exécuter avec JS un code PHP


Sujet :

AJAX

  1. #1
    Membre averti
    Homme Profil pro
    Étudiant
    Inscrit en
    Novembre 2011
    Messages
    10
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Enseignement

    Informations forums :
    Inscription : Novembre 2011
    Messages : 10
    Par défaut [AJAX] Exécuter avec JS un code PHP
    Bonsoir.

    Actuellement je travaille sur un site de radio, et pour faire pratique je dois récupérer le nom de la chanson stocké dans une partie d'une page web.

    J'ai un script PHP qui récupère et affiche le nom de cette chanson, malheursement je n'ai pas trouvé de moyen permettant de créer une fonction javascript qui éxécute ce script puis récupère le nom de la chanson et le renvoie en paramètre return de manière régulière(au mieux toutes les secondes au pire toutes les 5 secondes).

    J'ai déja essayé de mettre le script php dans un fichier à part puis d'inclure le fichier en JS/AJAX avec HTTPXMLRequest, cependant il semblerait qu'il y ait un cache ce qui fait que le nom de la chanson ne change pas.

    Merci d'avance pour vos réponse.

  2. #2
    Rédacteur/Modérateur
    Avatar de andry.aime
    Homme Profil pro
    Inscrit en
    Septembre 2007
    Messages
    8 391
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Ile Maurice

    Informations forums :
    Inscription : Septembre 2007
    Messages : 8 391
    Par défaut
    Bonjour,

    Si tu es sûre que c'est un problème de cache, regarde la FAQ http://javascript.developpez.com/faq...Ajax#xhr-cache. Une autre astuce c'est t'ajouter une variable timestamp à l'url.
    Sinon, il est difficile de t'aider sans voir ton code.

    A+.

  3. #3
    Membre averti
    Homme Profil pro
    Étudiant
    Inscrit en
    Novembre 2011
    Messages
    10
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Enseignement

    Informations forums :
    Inscription : Novembre 2011
    Messages : 10
    Par défaut
    En fait je pense au cache car quand j'utilise le HTTPXMLRequest il garde en mémoire la première entrée sans jamais en changé.

    Pour les codes j'ai ç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
    JV : 
    function creerobjet(fichier) 
    	{ 
    		if(window.XMLHttpRequest) // FIREFOX 
    			xhr_object = new XMLHttpRequest(); 
    		else if(window.ActiveXObject) // IE 
    			xhr_object = new ActiveXObject("Microsoft.XMLHTTP"); 
    		else 
    			return(false); 
    		xhr_object.open("GET", fichier, false); 
    		xhr_object.send(null); 
    		if(xhr_object.readyState == 4) return(xhr_object.responseText); 
    		else return(false); 
    	} 
     
    	function updateSongName()
    	{
    		document.getElementById('musique').innerHTML=creerobjet('testradio2.0.php');
    		setTimeout(updateSongName(),1000);
    	}
    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
    PHP:
    <?php
            header("Expires: Mon, 26 Jul 1997 05:00:00 GMT");
            header("Last-Modified: " . gmdate("D, d M Y H:i:s") . " GMT");
            header("Cache-Control: no-store, no-cache, must-revalidate");
            header("Cache-Control: post-check=0, pre-check=0", false);
            header("Pragma: no-cache");
     
            $url=file_get_contents('url');
            
            $pos=strpos($url,'Current Song:</td><td class="streamdata">',0);
            
            //for($i=$pos;$i<$pos+41;$i++) echo $url[$i];
            $end=0;
            $i=0;
            while($end===0)
            {
                    echo $url[$pos+41+$i];
                    if($url[$pos+41+$i+1]==='<')
                    {
                            $end=1;
                    }
                    else $i++;
            }
    ?>
     
    <meta http-equiv="refresh" content="1; URL=testradio2.0.php">
    Le problème c'est que j'ai un échec au niveau du get(je test actuellement en local), mais cette erreur se retrouve aussi quand j'essaie d'accéder à l'url ou j'ai les infos(pas sur le même serveur).

Discussions similaires

  1. [FPDF] Générer PDF avec toute le code PHP
    Par Archibald_Teepo dans le forum Bibliothèques et frameworks
    Réponses: 11
    Dernier message: 03/06/2008, 21h41
  2. Réponses: 2
    Dernier message: 16/07/2007, 16h04
  3. [POO] Problème de code PHP avec Internet Explorer
    Par bzoler dans le forum Langage
    Réponses: 5
    Dernier message: 12/02/2006, 11h00
  4. [Système] Forcer l'exécution d'un code php
    Par florent dans le forum Langage
    Réponses: 4
    Dernier message: 02/12/2005, 13h13

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