Ver Mensaje Individual
  #4 (permalink)  
Antiguo 26/11/2009, 18:41
alex16x
 
Fecha de Ingreso: enero-2007
Ubicación: Los Angeles, Chile
Mensajes: 28
Antigüedad: 18 años, 3 meses
Puntos: 2
Respuesta: Duda con php, mysql y xml :P

aqui te dejo la funcion que hice

Código PHP:
function Distribuir_Datos($xml){

    
preg_match_all("/<VTAS TIENDA=\"(.*)\" PROVEEDOR=\"(.*)\" CATEGORIA=\"(.*)\" DIVISION=\"(.*)\" SKU=\"(.*)\" EAN=\"(.*)\" EAN_RELACIONADO=\"(.*)\" ENL_ART=\"(.*)\" DES_ART=\"(.*)\" TALLA=\"(.*)\" COLOR=\"(.*)\" MARCA=\"(.*)\" ESTILO=\"(.*)\" VTA_DIA_Pzas=\"(.*)\" VTA_DIA_Impte=\"(.*)\" VTA_MES_Pzas=\"(.*)\" VTA_MES_Impte=\"(.*)\" FECHA_ALTA=\"(.*)\" FECHA_ULT_COMPRA=\"(.*)\" COSTO_UNI=\"(.*)\" VENTA_UNI=\"(.*)\" COD_FAM=\"(.*)\" COLECCION=\"(.*)\" PROVEEDOR_NOMBRE=\"(.*)\" TEMPORADA=\"(.*)\".*/",$xml,$resultado);
    
    for(
$i=0;$i<count($resultado[0]);$i++){
        
$datos[$i]['TIENDA']  = $resultado[1][$i];
        
$datos[$i]['PROVEEDOR'] = $resultado[2][$i];
        
$datos[$i]['CATEGORIA'] = $resultado[3][$i];
        
$datos[$i]['DIVISION'] = $resultado[4][$i];
        
$datos[$i]['SKU'] = $resultado[5][$i];
        
$datos[$i]['EAN'] = $resultado[6][$i];
        
$datos[$i]['EAN_RELACIONADO'] = $resultado[7][$i];
        
$datos[$i]['ENL_ART'] = $resultado[8][$i];
        
$datos[$i]['DES_ART'] = $resultado[9][$i];
        
$datos[$i]['TALLA'] = $resultado[10][$i];
        
$datos[$i]['COLOR'] = $resultado[11][$i];
        
$datos[$i]['MARCA'] = $resultado[12][$i];
        
$datos[$i]['ESTILO'] = $resultado[13][$i];
        
$datos[$i]['VTA_DIA_Pzas'] = $resultado[14][$i];
        
$datos[$i]['VTA_DIA_Impte'] = $resultado[15][$i];
        
$datos[$i]['VTA_MES_Pzas'] = $resultado[16][$i];
        
$datos[$i]['VTA_MES_Impte'] = $resultado[17][$i];
        
$datos[$i]['FECHA_ALTA'] = $resultado[18][$i];
        
$datos[$i]['FECHA_ULT_COMPRA'] = $resultado[19][$i];
        
$datos[$i]['COSTO_UNI'] = $resultado[20][$i];
        
$datos[$i]['VENTA_UNI'] = $resultado[21][$i];
        
$datos[$i]['COD_FAM'] = $resultado[22][$i];
        
$datos[$i]['COLECCION'] = $resultado[23][$i];
        
$datos[$i]['PROVEEDOR_NOMBRE'] = $resultado[24][$i];
        
$datos[$i]['TEMPORADA'] = $resultado[25][$i];
    }
    return 
$datos;

para llamarla solo escribes lo siguiente

Código PHP:
$arreglo Distribuir_Datos($variable_con_el_contenido_del_archivo_xml); 
dentro de la variable $arreglo quedara almacenados todos los datos de forma individual, si le pasas la funcion print_r() a la variable $arreglo podrias ver que la estructura, es algo asi

Código PHP:
Array
(
    [
0] => Array
        (
            [
TIENDA] => 101
            
[PROVEEDOR] => 3558
            
[CATEGORIA] => 0012
            
[DIVISION] => 0003
            
[SKU] =>        63528190
            
[EAN] => 740617090185
            
[EAN_RELACIONADO] => 0
            
[ENL_ART] => 63528190
            
[DES_ART] => MEMORIA KINGSTON USB 2 GB DTI2GB
            
[TALLA] => Sin Talla
            
[COLOR] => Sin Color
            
[MARCA] => KINGSTON
            
[ESTILO] => DTI2GB
            
[VTA_DIA_Pzas] => .00
            
[VTA_DIA_Impte] => .00
            
[VTA_MES_Pzas] => 3.00
            
[VTA_MES_Impte] => 398.25
            
[FECHA_ALTA] => 20060903
            
[FECHA_ULT_COMPRA] => 20090914
            
[COSTO_UNI] => 115.00
            
[VENTA_UNI] => 169.00
            
[COD_FAM] => 00120003003100030001
            
[COLECCION] => BASICO
            
[PROVEEDOR_NOMBRE] => INTELIGENCIA EN PUNTO DE VENTA SA
            
[TEMPORADA] => TODO TIEMPO
        
)


donde el [0] seria el primer producto y asi sucesivamente si ubiesen mas

Última edición por alex16x; 26/11/2009 a las 19:38