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 :

Fonction js pour évaluer le php


Sujet :

JavaScript

  1. #1
    Membre régulier
    Profil pro
    Inscrit en
    Mai 2009
    Messages
    241
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2009
    Messages : 241
    Points : 95
    Points
    95
    Par défaut Fonction js pour évaluer le php
    Bonjours à tous et à toute

    Je vous donne en gros le problème : J'ai en JS une variable JS appelé contenu qui contient le contenu entier d'une page php... Le problème, c'est que JS ne sais pas "l'interpréter" et de ce fait, cela me pose un problème puisque je doit mettre cette variable dans une div...

    Bon, je vois que je m'embrouille et que je vous embrouille, voila à peut près le code :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    // contenu contient le code d'une page php (récupéré par ajax)
    document.getElementById('corps').innerHTML = contenu;
    Une idée svp ?

    Je suis désespéré...

  2. #2
    Rédacteur/Modérateur

    Avatar de SpaceFrog
    Homme Profil pro
    Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Inscrit en
    Mars 2002
    Messages
    39 640
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 74
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2002
    Messages : 39 640
    Points : 66 663
    Points
    66 663
    Billets dans le blog
    1
    Par défaut
    heu tu veux dire que tu as du code php dans la variable contenu ???

    vu que ça vient du seveur pourquoi n'est il pas interprété par le sevreur

  3. #3
    Membre régulier
    Profil pro
    Inscrit en
    Mai 2009
    Messages
    241
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2009
    Messages : 241
    Points : 95
    Points
    95
    Par défaut
    Bonne question à laquelle je ne serais répondre...

    Voila le code complet je pense que se sera plus simple :

    JS :
    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
    40
    41
    42
    43
     
    function $(id){
    	return document.getElementById(id);
    }
     
    function Go(x){
    //Création de la requette ajax
    	try{
    		requette_ajax = new ActiveXObject('Microsoft.XMLHTTP');
    	}
    	catch(err){
    		try{
    			requette_ajax = new ActiveXObject('Msxml2.XMLHTTP');
    		}
    		catch(err){
    			try{
    				requette_ajax = new XMLHttpRequest();
    			}
    			catch(err){
    				requette_ajax = null;
    				alert("Votre naviguateur ne supporte pas l'Ajax !\nLe site nécésite le support de la technologie Ajax. Merci de visitez ce site avec un navigateur tel que Chromium, Google Chrome, Firefox, Safari, Opéra, Netscape, ou IE7 et +.");
    			}
    		}
    	}
     
    //Ouverture et éxécution de la requette ajax
    	requette_ajax.onreadystatechange = function() { recup(requette_ajax); };
    	requette_ajax.open('GET', 'makepage.php?nbr='+x, true);
    	requette_ajax.send(null);
    }
     
    function recup(xhr){
    	if(xhr.readyState == 4){
    		if(xhr.status == 200){
    			var data = xhr.responseText;
    			var infos = data.split('|');
    			var titre = infos[0];
    			var contenu = infos[1];
    			document.title = titre;
    			$('corps').innerHTML = contenu;
    		}
    	}
    }
    PHP (makepage.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
     
    <?php
    require "include/connect.inc.php";
     
    if(isset($_GET['nbr'])){
            $nbr = encoder($_GET['nbr']);
    }
    else{
            $nbr = 1;
    }
     
    $rq = mysql_query("SELECT * FROM pages WHERE id='$nbr'");
    $tab = mysql_fetch_array($rq);
    $content = file_get_contents("pages/".$tab['nom'].".php");
    echo $tab['titre']."|".$content;
    ?>

  4. #4
    Rédacteur/Modérateur

    Avatar de SpaceFrog
    Homme Profil pro
    Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Inscrit en
    Mars 2002
    Messages
    39 640
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 74
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2002
    Messages : 39 640
    Points : 66 663
    Points
    66 663
    Billets dans le blog
    1
    Par défaut
    et donc le contenu c'est quoi ??

  5. #5
    Membre régulier
    Profil pro
    Inscrit en
    Mai 2009
    Messages
    241
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2009
    Messages : 241
    Points : 95
    Points
    95
    Par défaut
    En javascript c'est "contenu" qui fait donc référence a une page de mon serveur contenant un code....

  6. #6
    Rédacteur/Modérateur

    Avatar de SpaceFrog
    Homme Profil pro
    Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Inscrit en
    Mars 2002
    Messages
    39 640
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 74
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2002
    Messages : 39 640
    Points : 66 663
    Points
    66 663
    Billets dans le blog
    1
    Par défaut
    il contient donc:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    echo $tab['titre']."|".$content;
    qui est du code php ???

  7. #7
    Membre régulier
    Profil pro
    Inscrit en
    Mai 2009
    Messages
    241
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2009
    Messages : 241
    Points : 95
    Points
    95
    Par défaut
    Non, car dans $content il y a à chaque fois tout une page php ! (ouverte avec file_get_contents)

  8. #8
    Rédacteur/Modérateur

    Avatar de SpaceFrog
    Homme Profil pro
    Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Inscrit en
    Mars 2002
    Messages
    39 640
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 74
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2002
    Messages : 39 640
    Points : 66 663
    Points
    66 663
    Billets dans le blog
    1
    Par défaut
    ???
    Ben si tu veux que le php soit interprété coté serveur pourquoi fais tu un file get content ???????
    fais un include ou un require_once
    ne t'attends pas a pouvoir interpréter du php coté client !!!!

  9. #9
    Expert confirmé
    Avatar de emmanuel.remy
    Inscrit en
    Novembre 2005
    Messages
    2 855
    Détails du profil
    Informations personnelles :
    Âge : 55

    Informations forums :
    Inscription : Novembre 2005
    Messages : 2 855
    Points : 4 045
    Points
    4 045
    Par défaut
    Salut,

    Oups, il ne faut pas confondre echo et include ou require...

    ERE

    EDIT: grillé !!
    -----

    EDIT 2: sur le ton de l'humour, tu as raison, "Ce n'est pas parce qu'un chemin prends la direction que l'on souhaite qu'il mène où l'on veut..."

  10. #10
    Membre régulier
    Profil pro
    Inscrit en
    Mai 2009
    Messages
    241
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2009
    Messages : 241
    Points : 95
    Points
    95
    Par défaut
    Oui mais comment faire ? Comment envoyer un fichier qui lui même est récupéré ? Oo Je sais bien que du côté serveur on ne peut pas traiter du php, ma question c'est justement le comment faire pour que cette page soit traité et qu'il n'y est alors plus que du html bien beau et tout propre dans $contente ????

  11. #11
    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 : 54
    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 SpaceFrog Voir le message
    fais un include ou un require_once
    Citation Envoyé par emmanuel.remy Voir le message
    Oups, il ne faut pas confondre echo et include ou require...


    Quant à
    Je sais bien que du côté serveur on ne peut pas traiter du php

    Dans ce cas, à quoi servirait un langage serveur

  12. #12
    Expert confirmé
    Avatar de emmanuel.remy
    Inscrit en
    Novembre 2005
    Messages
    2 855
    Détails du profil
    Informations personnelles :
    Âge : 55

    Informations forums :
    Inscription : Novembre 2005
    Messages : 2 855
    Points : 4 045
    Points
    4 045
    Par défaut
    Avant que cela ne devienne une soirée difficile:
    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
    <?php
    require "include/connect.inc.php";
     
    if(isset($_GET['nbr'])){
    	$nbr = encoder($_GET['nbr']);
    }
    else{
    	$nbr = 1;
    }
     
    $rq = mysql_query("SELECT * FROM pages WHERE id='$nbr'");
    $tab = mysql_fetch_array($rq);
    
    
    echo $tab['titre']."|";
    include("pages/{$tab['nom']}.php");
    mysql_free_result($rq);
    ?>
    ERE

  13. #13
    Membre régulier
    Profil pro
    Inscrit en
    Mai 2009
    Messages
    241
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2009
    Messages : 241
    Points : 95
    Points
    95
    Par défaut
    Alors là, je tire mon chapeau très très bas et m'incline face à la domination irréfutable de maitre emmanuel.remy !

    Mille bravo, et mille merci...

    Pour répondre aux diverses questions, le but ici est de pouvoir recharger seulement le contenu d'une div dans la page, ce contenu pouvant être du html comme du php... D'où l'utilité ce cette fonction bricolée (même s'il existe sûrement un moyen plus simple et plus propre...).

    Merci en tout cas à tous.

  14. #14
    Rédacteur/Modérateur

    Avatar de SpaceFrog
    Homme Profil pro
    Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Inscrit en
    Mars 2002
    Messages
    39 640
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 74
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2002
    Messages : 39 640
    Points : 66 663
    Points
    66 663
    Billets dans le blog
    1
    Par défaut
    donc résumons...

    problème qui n'a rien a voir avec js et solution donnée 4 post avant que tu ne t'en aperçoives ...


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

Discussions similaires

  1. Fonction JS pour exécuter du PHP, possible ?
    Par skins dans le forum Général JavaScript
    Réponses: 13
    Dernier message: 17/12/2009, 16h45
  2. Remplacement fonction aggregate pour php 5 (runkit)
    Par nean_j dans le forum Langage
    Réponses: 1
    Dernier message: 27/03/2008, 17h17
  3. Réponses: 5
    Dernier message: 16/01/2008, 16h21
  4. équivalents de fonctions c# pour php
    Par zulot dans le forum Langage
    Réponses: 5
    Dernier message: 16/07/2007, 15h28
  5. Ajout de fonction C pour PHP
    Par syl2095 dans le forum EDI, CMS, Outils, Scripts et API
    Réponses: 2
    Dernier message: 16/10/2006, 11h41

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