Foros del Web » Programando para Internet » PHP »

Escribir en un XML

Estas en el tema de Escribir en un XML en el foro de PHP en Foros del Web. Saludos, Necesito escribir texto en un archivo xml desde un form lo que servirá para un banner de noticias que leerá un flash. Tengo idea ...
  #1 (permalink)  
Antiguo 21/06/2005, 15:47
 
Fecha de Ingreso: febrero-2005
Mensajes: 135
Antigüedad: 19 años, 1 mes
Puntos: 0
Pregunta Escribir en un XML

Saludos,
Necesito escribir texto en un archivo xml desde un form lo que servirá para un banner de noticias que leerá un flash. Tengo idea de cómo generar texto plano en un archivo txt, pongo el ejemplo de lo que ya tengo:

Código PHP:
<form name="form1" method="post" action="prueba_1.php" target="_self">
  <p>
    <input name="cuadro" type="text" value="Escriba el t&iacute;tulo de la noticia">
</p>
  <p>
    <input type="submit" name="Submit" value="Submit">
</p>
</form>
<?
$cuadro  
$_POST['cuadro'];
$archivo 'ejemplo.txt';
function 
crear_arx ($archivo$contenido
{    
   if (
$desc=fopen($archivo,"w")) 
   {      
      
fputs ($desc$contenido);      
      
fclose ($desc); 
   } 


crear_arx ($archivo$cuadro); 


$fp fopen($archivo,'r');
$texto fread($fpfilesize($archivo));

?>
Pero la estructura del archivo XML es algo más complicada, necesita que se inscrusten las etiquetas de la siguiente manera:

<noticias>
<puerto titulo="este es el titulo de la noticia 1" >cuerpo de la noticia</puerto>
<puerto titulo="este es el titulo de la noticia 2" >cuerpo de la noticia 2</puerto> etc.
</noticias>

Así pues lo que quiero saber es ¿cómo poder generar esa estructura del xml de manera predeterminada y que solo se tenga que introducir el titulo y el cuerpo de cada una de las noticias? Ya que los textos los introducirá una persona que no sabe nada de poner etiquetas xml.

Gracias.
  #2 (permalink)  
Antiguo 22/06/2005, 03:19
Avatar de jam1138
/** @package Moderador */
 
Fecha de Ingreso: julio-2004
Ubicación: sèveR led onieR lE
Mensajes: 9.368
Antigüedad: 19 años, 7 meses
Puntos: 102
... la estructura es una simple cadena... ignoro de qué dependa el "cuantas noticias haya" pero simplemente velas (del verbo ir ) concatenando... un salto de línea hazlo con '\n'... espero te sirva:
Código PHP:
<form method="post" action="<?=$_SERVER['PHP_SELF'?>">
 Número de noticias: <select name="cant">
 <?php
 
for($i=1$i<=10$i++)
     echo 
"<option value=\"$i\">$i</option>";
 
?>
 </select>
 <input type="submit" name="Submit" value="Enviar">
</form>
<?php
if(isset($_POST['Submit'])) {
$cont="<noticias>\n";
for(
$i=1$i<$_POST['cant']; $i++)
    
$cont.="<puerto titulo=\"este es el titulo de la noticia $i\" >cuerpo de la noticia $i</puerto>\n";
$cont.= "</noticias>";

$gestfopen("archivoXML.xml""w");
fwrite($gest$cont);
fclose ($gest);
}
?>
__________________
٩(͡๏̯͡๏)۶
» Cómo hacer preguntas de manera inteligente «

"100 años después, la revolución no es con armas, es intelectual y digital"
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 02:32.