XML à la volée + PHP pour flash

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : XML à la volée + PHP pour flash

par Ryle » 31 août 2007, 15:48

Bah tu as un script spécifique qui génère ton fichier xml, il est donc normal que le fichier ne soit généré que lorsque ce script est appellé.

Maintenant si tu veux que cet appel soit fait de manière automatique, il suffit d'inclure le script (ou d'y faire appel sous forme d'une fonction) à l'endroit de ton code où tu veux qu'il soit généré et voilà tout .... je vois pas bien ce qui te gène ?

XML à la volée + PHP pour flash

par Neomcdn » 30 août 2007, 16:47

Bonjour à tous,

Nous réalisons actuellement une galerie photo avec descriptions grâce à flash, php, xml et mysql.

Pour récupérer les données de la base, nous utilisons une page xml qui est générée par php.

Au clic sur l'un des liens d'une page, on envoie en session, sur une page intitulée "test_xml.php", un numéro qui ira modifier le résultat d'une requête php, de la page test_xml.php et ainsi récupérer les données de la base et les écrire à la volée sur une page nommée "liste_produits.xml"

Cependant, nous avons un problème: Le fichier xml ne se créer pas tout seul: il est nécessaire de cliquer sur un lien (présent sur la page test_xml.php) pour que le xml soit créé la première fois.

De plus, lorsque le numero en session change, la page test_xml.php récupère bien le nouveau numéro mais le fichier xml, lui, ne se met pas à jour, sauf si l'on clique, à nouveau, sur le lien de la page test_xml.php.

Voici le code de la page test_xml.php
<?php
session_start();

if(isset($_GET['categorie']) && ($_GET['categorie']!= $_SESSION['categorie']))
   { // si la donnée existe en session   
    // c'est qu'elle a été précément demandée par l'utilisateur, donc on l'utilise  
     $categorie = $_GET['categorie'];}  
elseif (isset($_SESSION['categorie']))
{$categorie = $_SESSION['categorie'];}

$_SESSION['categorie'] = $categorie; // stocke la nouvelle valeur de $menu dans la session 

mysql_select_db($database_conn_audureau, $conn_audureau);
$query_rs_produit= "SELECT nom_produit, url_photo_produit FROM tbl_produit WHERE categorie_id='".$categorie."'";
$rs_produit= mysql_query($query_rs_produit, $conn_audureau) or die(mysql_error());
echo $query_rs_produit.'<br/>';

$xml = '<?xml version="1.0" encoding="ISO-8859-1"?>'.'<photos>';
	
	$compteur = 1;	 

			while ($row = mysql_fetch_array($rs_produit)) {
			
				
				
				$xml .= '<photo num="'.$compteur.'" desc="'.$row['nom_produit'].'" fichier="'.$row['url_photo_produit'].'"/>';
								
				$compteur++;
			}

			$xml .= '</photos>';
			
		
	
		
		$fp = fopen("liste-produits.xml", 'w+');
		fputs($fp, $xml);
		fclose($fp);
		
//lien pour créer et mettre à jour le fichier xml
		echo 'Export XML effectue !<br/><a href="liste-produits.xml">voir la page</a>';
?>
Auriez-vous une idée s'il-vous-plaît pour créer automatiquement un nouveau xml et que les données de ce fichier soient modifiées automatiquement?

En espérant ne pas avoir été confus,

Merci par avance,

Cordialement,