Aller au contenu

[résolu] aide pour inserer du php dans du xhtml


Zod

Messages recommandés

Bonjour à tous,

Je suis en train de coder mon premier "vrai" site et j'ai quelques (gros) problèmes avec le php, je m'explique :

Je code la page en xhtml strict et css, jusque là tout va pour le mieux dans le meilleur des mondes, seul problème j'aimerais inserer un code php qui devrait récupérer un flux rss depuis n'importe quel site, et là c'est le drame...

Le script le voici :

<?php

$fichier_xml = "http://www.pcinpact.com/include/news.xml"; // l'adresse du flux RSS 
$nombre_limite = 10; // le nombre maximum de lignes (titres)

$file = fopen($fichier_xml,"r");
if ($file) {

$raw = fread($file,32000);
fclose( $file );

if(eregi("<item>(.*)</item>",$raw,$rawitems)){

$items = explode("<item>", $rawitems[0]);
$nb = count($items);
$maximum = (($nb-1) < $nombre_limite) ? ($nb-1) : $nombre_limite;

for ($i=0;$i<$maximum;$i++) {

eregi("<title>(.*)</title>",$items[$i+1], $title);
eregi("<link>(.*)</link>",$items[$i+1], $link);
echo "<a href=\"".$link[1]."\" target=\"_blank\">".$title[1]."</a><br />"; // comment vont apparaître
// les titres ? Vous pouvez par exemple rajouter un - (tiret) devant <a...>
// pour mettre un - devant chaque titre.
}
}
}

?>

Maintenant ma question, comment est ce que j'insere ca dans mon site?

J'ai tenté de le copie coller bettement dans la division où il est sencé apparaitre et de renommer l'index en .php ça donne rien du tout, ça affiche le code texto je comprends pas :/

Si quelqu'un pouvait me donner la procédure à suivre ça serait super sympa, et soyez je vous en prie un minimum détaillé dans les explications, je comprends pour l'instant peanuts au php :transpi:

Merci d'avance :)

Lien vers le commentaire
Partager sur d’autres sites

alors pour ce qui est du php sur ovh voici ce que j'ai pour le fopen :

					   Local Value	Master Value
allow_url_fopen				 	On			 On

Donc ca semble correct, et pour ce qui est du code voilà un gros bout :


<body>
<div id="boite_page">

<div id="boite_logo"> boite logo 
</div> <!-- fin #boite_logo -->

<div id="boite_haut"> boite du haut 
	<div id="boite_pub_haut"> boite pub du haut 
	</div> <!-- fin #boite_pub_haut -->
</div> <!-- fin #boite_haut -->

<div id="boite_liens_principaux">  .: boite liens principaux :.
</div> <!-- fin #boite_liens_principaux -->

<div id="boite_page_principale">  boite page principale 

<div id="boite_gauche"> 
<div class="boite_entete"> .: Boite En-tête :.
</div> <!-- fin #boite_entete -->
	<div id="boite_gauche_recherche"> boite de recherche gauche 		
	</div> <!-- fin #boite_gauche_recherche -->
		<div id="boite_pub_gauche"> boite pub de gauche 
		</div> <!-- fin #boite_pub_gauche -->
				<div class="boite_entete"> .: Boite En-tête :.
				</div> <!-- fin #boite_entete -->	
					<div id="boite_gauche_non_definie"> boite gauche non definie 		
					</div> <!-- fin #boite_gauche_non_definie -->
boite de gauche 					
</div> <!-- fin #boite_gauche -->

<div id="boite_centrale">
<div class="boite_entete"> .: News et Articles PCInpact :.
</div> <!-- fin #boite_entete -->	
	<div id="boite_a_news_1"> 
		<strong>News</strong> :<br />
		<script type="text/javascript" src="http://www.pcinpact.com/include/newspart.php?nb=10"></script>
		<br />
		<strong>Articles</strong> :<br />
		<script type="text/javascript" src="http://www.pcinpact.com/include/artpart.php?nb=5"></script>
	</div> <!-- fin #boite_a_news -->
			<div class="boite_entete"> .: Boite En-tête :.
			</div> <!-- fin #boite_entete -->	
				<div id="boite_a_news_2"> 
				<?php

				$fichier_xml = "http://www.zonewindows.com/rss.xml"; // l'adresse du flux RSS 
				$nombre_limite = 10; // le nombre maximum de lignes (titres)
				// (le maximum est de 10 pour Zone Windows)

				$file = fopen($fichier_xml,"r");
				if ($file) {

				$raw = fread($file,32000);
				fclose( $file );

				if(eregi("<item>(.*)</item>",$raw,$rawitems)){

				$items = explode("<item>", $rawitems[0]);
				$nb = count($items);
				$maximum = (($nb-1) < $nombre_limite) ? ($nb-1) : $nombre_limite;

				for ($i=0;$i<$maximum;$i++) {

				eregi("<title>(.*)</title>",$items[$i+1], $title);
				eregi("<link>(.*)</link>",$items[$i+1], $link);
				echo "<a href=\"".$link[1]."\" target=\"_blank\">".$title[1]."</a><br />"; // comment vont apparaître
				// les titres ? Vous pouvez par exemple rajouter un - (tiret) devant <a...>
				// pour mettre un - devant chaque titre.
				}
				}
				}

				?>
				</div> <!-- fin #boite_a_news -->
boite centrale
</div> <!-- fin #boite_centrale -->

<div id="boite_droite">  
<div class="boite_entete"> .: Boite En-tête :.
</div> <!-- fin #boite_entete -->
	<div id="boite_tests_droite"> boite tests droite 
	</div> <!-- fin #boite_tests_droite -->
			<div class="boite_entete"> .: Boite En-tête :.
			</div> <!-- fin #boite_entete -->	
				<div id="boite_sites_partenaires"> boite sites partenaires
				</div> <!-- fin #boite_sites_partenaires -->
					<div class="boite_entete"> .: Boite En-tête :.
					</div> <!-- fin #boite_entete -->	
						<div id="boite_sondages"> boite sondages
						</div> <!-- fin #boite_sites_partenaires -->
boite de droite
</div> <!-- fin #boite_droite -->

<div id="boite_dessous"> <img src="Poisson-chat.jpg" width="180" height="130" alt="chat dans un bocal"/>
</div> <!-- fin #boite_dessous -->
</div> <!-- fin #boite_page_principale -->
boite page
</div> <!-- fin #boite_page -->

</body>

Donc comme vous pouvez le voir le code en php j'aimerais qu'il s'execute dans la boite nommée "boite_a_news_2", j'ai peut etre oublié de déclarer en xhtml que la balise contiendrais du php, mais je sais pas ce que j'aurais du écrire en xhtml, donc si quelqu'un sait qu'il me le fasse savoir :vomi2:

Et pour les plus perspicasses, je sais que la boite à news 1 contient également les news de pcinpact, mais l'interet du code php par rapport au javascript tout simple de pcinpact c'est que je pourrais ouvrir d'autres flux rss en provenance d'autres sites.

Lien vers le commentaire
Partager sur d’autres sites

Ta syntaxe pour le xhtml est bonne apparement, et ton code fait bien afficher les news chez moi, donc je sais pas trop ou ca peut bloqué, désolé...

T'as des news dans la boite 2??

Mince là je comprends plus rien >_<

(gaffe hein comme je te l'ais dis y a des news pc dans la boite 1 deja, mais ca ca marche c'est sur)

Lien vers le commentaire
Partager sur d’autres sites

Ben d'aprés ton code ouai, ca s'affiche dans la boite 2, mais bon sans le css, ca reste du théorique...

Je viens de mettre le site en ligne, c'est trop laid trop moche, rien n'est fini mais bon au moins t'auras le css : www.actus-pc.com

arg, je viens de comprendre mon erreur...ridicule >_<

J'avais laissé un index.html qui datait d'une version antérieure et forcement mon index.php ne risquait pas d'etre lu lol

Merci à vous tous ça marche :chinois:

Lien vers le commentaire
Partager sur d’autres sites

Bah le design ca va encore, j'aime bien les sites comme ca avec des "blocs" comme pci... :smack:

Et bravo, ton affichage est identique sous IE, FF et Opera... :p

Ce n'est pas le cas de mon site en signature qui s'affiche trés mal sous ie, mais bon j'ai jamais cherché a avoir un bon affichage sous ie... ;)

Lien vers le commentaire
Partager sur d’autres sites

Bah le design ca va encore, j'aime bien les sites comme ca avec des "blocs" comme pci... :byebye:

Et bravo, ton affichage est identique sous IE, FF et Opera... :transpi:

Ce n'est pas le cas de mon site en signature qui s'affiche trés mal sous ie, mais bon j'ai jamais cherché a avoir un bon affichage sous ie... :craint:

Merci, mon navigateur de base c'est opera et ma copine a FF sur son pc, comme on programme un peu à 2, pour ces 2 navigateurs là ça passe très bien, après pour ce qui est d'IE il a en effet l'air de bien aimer ce que j'ai écris, c'est tout benef ^^

Lien vers le commentaire
Partager sur d’autres sites

Archivé

Ce sujet est désormais archivé et ne peut plus recevoir de nouvelles réponses.

×
×
  • Créer...