Foros del Web » Programando para Internet » PHP »

error creando xml desde php

Estas en el tema de error creando xml desde php en el foro de PHP en Foros del Web. buenas, tengo una galeria de fotos en flash vinculada a un xml. lo que quiero hacer es cada vez que suba una foto de un ...
  #1 (permalink)  
Antiguo 06/09/2010, 06:41
 
Fecha de Ingreso: enero-2002
Mensajes: 1.872
Antigüedad: 22 años, 3 meses
Puntos: 3
error creando xml desde php

buenas,

tengo una galeria de fotos en flash vinculada a un xml. lo que quiero hacer es cada vez que suba una foto de un nuevo producto, es decir, cada vez que se producza un cambio, ejecutar un codigo php que me selecciones todas las fotos existentes en la base de datos, y me cree el archivo xml. pero no se pq, el php no me hace nada, ni mostrarme error. y seguro que hay mil! os dejo el codigo a ver si alguien ve que me falta:

Código:
<?php 

$ficheromailscorrectos = fopen("12010001.xml","w+"); 

include("config.php"); 
$cnx = conectar(); 
$sql ="SELECT * FROM fotos_productos WHERE id_producto=1"; 
$resultados = mysql_query($sql) or die (mysql_error()); 

$contenido="<?xml version='1.0' encoding='utf-8'?>
<?xml-stylesheet type='text/css' href='Style.css'?>
<menu WIDTH='750' HEIGHT='467 ' 
      ALPHABUTTON='0.9'
	  buttonW = '22' buttonH = '22'
	  backgroundHolderPosX = '20' backgroundHolderPosY = '10' backgroundHolderAddedHeight = '15' backgroundHolderAlpha = '0.6'
	  redOffsetButton = '0' greenOffsetButton = '0' blueOffsetButton = '0'
	  textHolderWidth = '750' textHolderHeight = '40' textHolderAlpha = '0.3' 
	  textHolderPositionX = '0' textHolderPositionY = '0'
	  secondTextHolderWidth = '750' secondTextHolderHeight = '90' secondTextHolderAlpha = '0.6' 
	  secondTextHolderPositionX = '0' secondTextHolderPositionY = '300'
	  transitionType = 'alpha'  transitionBlurValue = '35'
	  forwardButtonVisibility = 'true' 
	  backwardButtonVisibility = 'true'
	  pauseButtonVisibility = 'true' 
	  infoButtonVisibility = 'true'>";
	
while($row = mysql_fetch_array($resultados)){ 

		  
$contenido.="<item"

$contenido.="tween = 'alpha' tweentime = '1' speed = '5000' 
		  tweentimetext = '2'  textvis = 'true'"

$contenido.="URL='' path='.$row['referencia'].'/'.$row['nombre_foto'].' type='jpg'
		  textHolderVisible= 'true' />"


$contenido.="</menu>"

fputs($ficheromailscorrectos,$contenido); 
fclose($ficheromailscorrectos); 

?>
el resultado que necesito, a parte de la parrafada de la configuracion de la galeria en el xml, es algo asi:


<item
tween = "alpha" tweentime = "1" speed = "5000"
tweentimetext = "2" textvis = "true"
URL= "" path="12010001/foto02.jpg" type ="jpg"
textHolderVisible = "true"/>



<item
tween = "alpha" tweentime = "1" speed = "5000"
tweentimetext = "2" textvis = "true"
URL="" path="12010001/foto03.jpg" type ="jpg"
textHolderVisible = "true"/>


......

saludos!!!!!
  #2 (permalink)  
Antiguo 06/09/2010, 10:43
Avatar de mayid
Colaborador
 
Fecha de Ingreso: marzo-2009
Ubicación: BsAs
Mensajes: 4.014
Antigüedad: 15 años, 1 mes
Puntos: 101
Respuesta: error creando xml desde php

Yo no confío mucho en la forma en que declarás la linea. Se trata de una sola línea, pero nada garantiza que a la hora de imprimir el texto obtengas algo así:
Cita:
...speed = '5000'tweentimetext = '2'...
Es decir, palabras unidas. En fin. sería mucho mejor para todos que imprimieras en pantalla en código php para poder verlo (si no se viera en pantalla al hacer un echo, entonces fijate en el codigo fuente a traves del navegador).

Si necesitas un resultado con saltos de linea (lo dudo) usá \n. Y para texto largos una de dos:

esto:
Cita:
$contenido="<?xml version='1.0' encoding='utf-8'?>";
$contenido.="<?xml-stylesheet type='text/css' href='Style.css'?>";
$contenido.="<menu WIDTH='750' HEIGHT='467 ' ";
o quizás HEREDOC
http://www.tutores.org/codigo/986/he...ades-de-texto/
  #3 (permalink)  
Antiguo 06/09/2010, 10:45
Avatar de mayid
Colaborador
 
Fecha de Ingreso: marzo-2009
Ubicación: BsAs
Mensajes: 4.014
Antigüedad: 15 años, 1 mes
Puntos: 101
Respuesta: error creando xml desde php

Ups! Por otro lado, no estas cerrando el while:

Cita:
while($row = mysql_fetch_array($resultados)){
Y no queda claro cuando hacés esto:
Cita:
$contenido.="</menu>"

Etiquetas: xml
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 23:18.