Ver Mensaje Individual
  #8 (permalink)  
Antiguo 07/08/2005, 23:33
Avatar de wcfenix
wcfenix
 
Fecha de Ingreso: agosto-2004
Ubicación: Lima
Mensajes: 168
Antigüedad: 19 años, 8 meses
Puntos: 0
Jejeje...

bueno creo que seria importante que les remita el código fuente...
mi xml es asi.
Código PHP:
<?xml version="1.0" encoding="ISO-8859-1"?>
<RIOJA>
<TEMA cod="1" cant="3" par="1"><![CDATA[El desarrollo de tecnologías de la información exige prestar atención URGENTE a su aplicación en las diversas actividades económicas y sociales, dado que están generando la creación de nuevos medios de archivo de la información en soportes como: Diskettes, Discos Duros; Discos Opticos, Cintas Magnéticas, Discos Compactos, DVD.(Digital Video Disco) y Zip Drive (2,4), cuyos contenidos no pueden usarse como medio <b>PROBATORIO</b>, dado que no tienen validez para ningún trámite administrativo ni judicial por <b>no tener</b> <b><i>VALOR LEGAL</i></b>;...]]>
</TEMA>
</RIOJA>
mi PHP es asi:
Código PHP:
// Archivo XML a leer
$file_name 'Rioja.xml';
// Variable auxiliar
$Conta 1;
// funcion handler de inicio
function startElement($parser$name$attrs) {

  
// Que etiqueta estamos viendo
  
switch ($name) {
     case 
'RIOJA':
        
// Elemento principal
        
echo '<table width="100%" border="0" cellspacing="0" cellpadding="0">'"\n";
        break;
     case 
'TEMA':
        
// Nodo
        
echo "<tr><td valign=\"top\">Edicion ";
        echo 
"<b>".$Conta."</b>";
        echo 
"</td><td width=\"80%\" align=\"center\">","\n";
        echo 
"<textarea id=\"item1\" name=\"item1\" rows=\"10\" cols=\"100\">";
        
$Conta++;
        break;

  }
}
// funcion handler de cierre
function endElement($parser$name) {
  
// Que etiqueta estamos viendo
  
switch ($name) {
     case 
'RIOJA':
        
// Elemento principal
        
echo '</table>'"\n";
        break;
     case 
'TEMA':
        
// Nodo
        
echo "</textarea>";
        echo 
"\n"'</td></tr>'"\n";
        break;
  }
}

// funcion de lectura
function characterData($parser$value) {
  
// Aplicamos un Trim al texto
  
$text trim($value"\t");
  
$text trim($text"\n");
  
$text trim($text"\r");
  
// mostramos
  
  
echo $text;
  
}

// Creaos una nueva instancia del XML parser
$parser xml_parser_create();
// Seteamos los handler
xml_set_element_handler($parser'startElement''endElement');
xml_set_character_data_handler($parser'characterData');

// Abrimos el archivo XML

if ($file = @fopen($file_name'r')) {
// Revisamos el archivo
  
while ($data fgets($file4096)) {
     
// Si hubo un error al hacer el parseo
     
if (!xml_parse($parser$datafeof($file))) {
        
// Mostramos un mensaje
        
die('<p><b>Error al parsear el XML.</b></p>');
     }
  }
  
// Cerramos el archivo
  
fclose($file);
// El archivo no se pudo abrir
} else {
  
// Mostramos un mensaje de error
  
die('<p>No se pudo abir el archivo <b>'.$file_name.'</b>.</p>');
}

// Liberamos el parser
xml_parser_free($parser); 
al momento de ejecutarla no reconoce mi contador.
una vez mas gracias.
__________________
"No te preocupes si no funciona bien. Si todo estuviera correcto, serías despedido de tu trabajo" - Ley de mosher
Blog [ http://www.tecnoaventuras.com ]