Page 1 sur 1

Afficher contenue d'un fichier sur une page web

Posté : 20 juin 2014, 11:11
par Jordan31
Bonjour à tous,

Sur une page j'ai la description d'un camping qui s'affiche avec un lien " en savoir plus ". Et j'aimerais que lorsque je clique sur ce lien, il m'affiche sur une autre page (Celle-ci : http://localhost/adaclive/?page_id=51 ), le contenue d'un fichier PHP (Celui la : wp-content\plugins\mon-widget-list\capvern.php?id='.$id1.' ).

Voici mon code :
if($_POST['communes'] == 4)
            {     
                echo '<ul>';
         
                $fichier = 'http://wcf.tourinsoft.com/Syndication/cdt65/b1155573-8443-49fb-a3d0-bb05526278e6/Objects?$filter=ListingCOMMUNE                                 eq\'TIBIRAN-JAUNAC\'';

                $dom = new DOMDocument('utf-8');
                if (!$dom->load($fichier))
                {
                    die('Impossible de charger le fichier XML');
                }
 
                $recupproperties = $dom->getElementsByTagName('properties');

                foreach ($recupproperties as $properties)
               
                {
                //Cherche les éléments ListingCOMMUNE  
                $nom = $properties->getElementsByTagName('ListingCOMMUNE');
                // récupère les valeurs de ListingCOMMUNE
                $nom1 = $nom->item(0)->nodeValue; 
                //Cherche les éléments ListingPHOTOPRINCIPALE 
                $photo = $properties->getElementsByTagName('ListingPHOTOPRINCIPALE');
                // récupère les valeurs de ListingPHOTOPRINCIPALE
                $photo1 = $photo->item(0)->nodeValue; 
                // Enlève URL
                $photo1 = str_replace('URL : ', '', $photo1);
                // Enlève Libellé 
                $photo1 = str_replace('Libellé :', '', $photo1);
    
                //Cherche les éléments ListingDESCRIPTIONCOMMERCIALE  
                $description = $properties->getElementsByTagName('ListingDESCRIPTIONCOMMERCIALE');
                //récupère les valeurs de ListingDESCRIPTIONCOMMERCIALE
                $description1 = $description->item(0)->nodeValue;  
    
                //Cherche les éléments ListingRESERVATION  
                $location = $properties->getElementsByTagName('ListingRESERVATION');
                //récupère les valeurs de ListingRESERVATION
                $location1 = $location->item(0)->nodeValue; 
         
                //Cherche les éléments SyndicObjectID        
                $id = $properties->getElementsByTagName('SyndicObjectID');
                //récupère les valeurs de SyndicObjectID
                $id1 = $id->item(0)->nodeValue;  
            
    
                echo'<li class="itmList">';   
                
                // Si la longueur de la chaîne de caractère >0
                if(strlen($photo1)>0)
                {
                     $reci3 = preg_split("/[|#;]+/", $photo1);
                       
                      for($i=0; $i < sizeof($reci3);$i++) //pour $i=0, $i < taille de $recip, incrémentation de 1.
                      {
                            echo $reci3[$i]; //Affiche $recip
                      }
                      
                }
                // Sinon si la longueur de la chaîne du caractère = 0
                else
                {
                    $photo1= '<img src="imgreplace.png">'; // mettre une image par défaut
                     echo  '<div class="placeholder">' .$photo1.'</div>'; //afficher cette image
                }    
                
                echo $nom1; 
                
                echo '<p class="description"> '.$description1.'</p>'  ; 
    
                //$recip reçoit la fonction preg_split qui enlève les caratères |#; de $location1 et qui les remplace par un saut de ligne.
                $recip = preg_split("/[|#;]+/", $location1);
                       
                for($i=0; $i < sizeof($recip);$i++) //pour $i=0, $i < taille de $recip, incrémentation de 1.
                {
                        echo $recip[$i] . '<br>'; //Affiche $recip
                }
                
                
                echo '<a href="wp-content\plugins\mon-widget-list\capvern.php?id='.$id1.'">En savoir + sur ce camping</a>';
                
                echo '</li>';
                
                
               
                }/* end foreach */
            
                echo '</ul>';

Une idée ?

Merci à vous !

Re: Afficher contenue d'un fichier sur une page web

Posté : 21 juin 2014, 16:29
par Elie
Pour commencer, je trouve ton nom de fichier bizarre, non ?
$fichier = 'http://wcf.tourinsoft.com/Syndication/cdt65/b1155573-8443-49fb-a3d0-bb05526278e6/Objects?$filter=ListingCOMMUNE                                 eq\'TIBIRAN-JAUNAC\'';

Re: Afficher contenue d'un fichier sur une page web

Posté : 23 juin 2014, 10:11
par Jordan31
Non ce fichier marche très bien.
Il faut que ça m'affiche sur une autre page (Celle-ci : http://localhost/adaclive/?page_id=51 ), le contenue d'un fichier PHP (Celui la : wp-content\plugins\mon-widget-list\capvern.php?id='.$id1.' ).

Re: Afficher contenue d'un fichier sur une page web

Posté : 23 juin 2014, 10:36
par Elie
La fonction file_get_contents() ne suffit pas ?

Re: Afficher contenue d'un fichier sur une page web

Posté : 23 juin 2014, 11:11
par Jordan31
Non, j'ai essayé beaucoup de choses mais pas grand chose ne marche.

J'utilise wordpress pour mon site en local. J'ai créé une nouvelle page dans laquelle doit s'afficher le fichier en question.

Re: Afficher contenue d'un fichier sur une page web

Posté : 23 juin 2014, 11:24
par telnes
si si on insite
$path = 'wp-content\plugins\mon-widget-list\capvern.php?id='.$id1; //le chemin ???
echo $path;

$res = file_get_contents($path);
echo $res;
si ca marche pas, montre nous l'url/le path complet (après exécution), l'erreur php ...

++

Re: Afficher contenue d'un fichier sur une page web

Posté : 23 juin 2014, 11:44
par Jordan31
Enfaite, peu importe ce que j'essaie, rien ne marche, ça me renvoie à la page " http://localhost/adaclive/?page_id=29 " au lieu de m'afficher la page " http://localhost/adaclive/?page_id=54 ".

Voici mon code :
                <form action="http://localhost/adaclive/?page_id=54" method="post">
                <input type="submit" value="En savoir plus" name="infoplus">
                
                <?php
                
                if(isset($_POST['infoplus'])){
                $path = 'wp-content\plugins\mon-widget-list\capvern.php?id='.$id1.''; 
                echo $path;

                $res = file_get_contents($path);
                echo $res;
                }

Re: Afficher contenue d'un fichier sur une page web

Posté : 23 juin 2014, 11:48
par telnes
hello

ou tu récupère $id1 ?

il faut un truc du genre
$id1 = (int)$_GET['page_id'] ;

Re: Afficher contenue d'un fichier sur une page web

Posté : 23 juin 2014, 11:54
par Jordan31
Dans ce fichier capvern.php
$idObject = substr($_SERVER['REQUEST_URI'], -16);

$fichier = "http://wcf.tourinsoft.com/Syndication/cdt65/b1155573-8443-49fb-a3d0-bb05526278e6/Objects('".$idObject."')";

Re: Afficher contenue d'un fichier sur une page web

Posté : 23 juin 2014, 13:08
par xTG
Cette URL, arrives-tu à y accéder en la tapant dans ton navigateur ?
Ce que tu décris ressemble à une redirection forcée...

Re: Afficher contenue d'un fichier sur une page web

Posté : 23 juin 2014, 14:02
par Jordan31
Oui j'arrive à y accéder

Re: Afficher contenue d'un fichier sur une page web

Posté : 23 juin 2014, 15:16
par telnes
hello

"$idObejct" c'es't pas "$id1"

tu peux faire un echo de $id1 dans ta page ?

Re: Afficher contenue d'un fichier sur une page web

Posté : 23 juin 2014, 15:28
par Jordan31
Vous vous écartez de mon problème, mon problème n'est pas "$id1"... Cette " id1 " récupère des informations en fonction d'un camping choisi dans un formulaire.

Ce dernier se trouve dans mon site wordpress (en local). Et lorsque que je choisi un camping dans ce formulaire, il m'affiche une description de ce camping avec, en dessous, un lien " En savoir plus ".

Et j'aimerais que lorsque je clique sur ce lien, il me redirige sur une page dédié à " En savoir plus " ( http://localhost/adaclive/?page_id=51 ) et qu'il m'affiche les infos du fichier : wp-content\plugins\mon-widget-list\capvern.php?id='.$id1.' .

Re: Afficher contenue d'un fichier sur une page web

Posté : 23 juin 2014, 17:05
par telnes
Enfaite, peu importe ce que j'essaie, rien ne marche, ça me renvoie à la page " http://localhost/adaclive/?page_id=29 " au lieu de m'afficher la page " http://localhost/adaclive/?page_id=54 ".
pour moi il y a un truc pas clair avec id ! donc je reste sur ma question.

sinon la réponse au problème est via curl; fopen; file_get_contents() ...