Ver Mensaje Individual
  #3 (permalink)  
Antiguo 11/09/2014, 15:21
marr_Th_
 
Fecha de Ingreso: febrero-2013
Mensajes: 21
Antigüedad: 11 años, 8 meses
Puntos: 1
Respuesta: parsear HTML con php

Muchas gracias por su respuesta.
No me fije en eso la verdad , ya he solucionado el tema de que se genere bien el html no de la forma mas correcta pero bueno me basta.

Aun habiendo solucionado eso siguen produciendose los mismos errores.
No se muestra la primera columna de los datos que se estan parseando y de las imagenes de la segunda columna solo se muestra la etiqueta "title" de la primera imagen.

Alguna idea de que puedo estar haciendo mal

asi esta el codigo ahora
Código PHP:
define'_JEXEC');
define'DS'DIRECTORY_SEPARATOR );
define('JPATH_BASE'dirname(__FILE__) );

require_once ( 
JPATH_BASE .DS.'simple_html_dom.php' );





    
$html file_get_html('http://www.panelook.com/LMS500HF07_SAMSUNG_5.0_LCM_parameter_23190.html');
    

    for(
$k=0;$k<9;$k++){
    
$divContenedor $html->find('div.tabwrapB',$k);
    if(
$divContenedor == null){
        
$divContenedor $html->find('div.tabwrapB');
        foreach(
$divContenedor as $div){
            foreach(
$div->find('th') as $campo){
                
$descripcion[] = "<p>".$campo."</p>";
            
            
$cont 0;
            foreach(
$campo->find('td') as $campo2){
            if( 
$campo->plaintext != ''){
            
$descripcion[$cont] .=  "<p>".$campo->plaintext."</p>";
            if(
$cont == 0)
                
            +
$cont;}else{
                foreach(
$campo->find('img') as $img){
                    
$descripcion[$cont] .=  "<p>".$img->title."</p>";
                    if(
$cont == 0)
                
            +
$cont;}}}}
        }
    }
    else{
        foreach(
$divContenedor->find('th') as $campo){
            
$descripcion[] = "<p>".$campo."</p>";
        }
        
$cont 0;
        foreach(
$divContenedor->find('td') as $campo){
            if( 
$campo->plaintext != ''){
            
$descripcion[$cont] .=  "<p>".$campo->plaintext."</p>";
            if(
$cont == 0)
                
            +
$cont;}else{$cont 0;
                foreach(
$campo->find('img') as $img){
                    
$descripcion[$cont] .=  "<p>".$img->title."</p>";
                    if(
$cont == 0)
                
            +
$cont;}}
        }
    } }
    echo 
$descripcion[$cont]; 
tambien me he dado cuenta que

si sutituyo en la linea 46 esto
Código PHP:
if( $campo->plaintext != ''
por esto
Código PHP:
if( $campo->plaintext == ''
me muestra todas las etiquetas "title" de las imagenes menos la primera.

Para mi esto no tiene sentido.

Podrias orientarme por favor.
Un saludo
GRacias