• 13-09-2018, 13:07:47
    #10
    Evet de aşağıdaki şekilde ana ağacı aldım. burada sorun şu her ana ağacın altında da ShipmentDetail var. bunları da almam lazım. sorunu burada yaşıyorum.



    $Shipment = simplexml_load_file("http://www.f2r.gen.tr/sevkiyat.xml");
    foreach ($Shipment as $Shipmentinfo):

    $ShipmentNumber=$Shipmentinfo['ShipmentNumber'];
    $InvoiceNumber=$Shipmentinfo['InvoiceNumber'];
    $ShipmentDate=$Shipmentinfo['ShipmentDate'];
    $TruckPlate=$Shipmentinfo['TruckPlate'];
    $ContainerNumber=$Shipmentinfo['ContainerNumber'];
    $DispatchDate=$Shipmentinfo['DispatchDate'];


    echo "ShipmentNumber : ".$ShipmentNumber."<br>";
    echo "InvoiceNumber : ".$InvoiceNumber."<br>";
    echo "ShipmentDate : ".$ShipmentDate."<br>";
    echo "TruckPlate : ".$TruckPlate."<br>";
    echo "ContainerNumber : ".$ContainerNumber."<br>";
    echo "DispatchDate : ".$DispatchDate."<hr>";
    endforeach;



    Aşağıdaki şekildeki gibi yapmam lazım ama o da hata veriyor.


    $Shipment = simplexml_load_file("http://www.f2r.gen.tr/sevkiyat.xml");
    $i=0;
    foreach ($Shipment as $Shipmentinfo):

    $ShipmentNumber=$Shipmentinfo['ShipmentNumber'];
    $InvoiceNumber=$Shipmentinfo['InvoiceNumber'];
    $ShipmentDate=$Shipmentinfo['ShipmentDate'];
    $TruckPlate=$Shipmentinfo['TruckPlate'];
    $ContainerNumber=$Shipmentinfo['ContainerNumber'];
    $DispatchDate=$Shipmentinfo['DispatchDate'];
    $ShipmentDetail=simplexml_load_string($Shipmentinf o[$i].[0]['ShipmentDetail']);

    echo "ShipmentNumber : ".$ShipmentNumber."<br>";
    echo "InvoiceNumber : ".$InvoiceNumber."<br>";
    echo "ShipmentDate : ".$ShipmentDate."<br>";
    echo "TruckPlate : ".$TruckPlate."<br>";
    echo "ContainerNumber : ".$ContainerNumber."<br>";
    echo "DispatchDate : ".$DispatchDate."<br>";

    foreach ($ShipmentDetail as $ShipmentDetailinfo):

    $BdtCode=$ShipmentDetailinfo['BdtCode'];
    $ProdcutCode=$ShipmentDetailinfo['ProdcutCode'];
    $Quantity=$ShipmentDetailinfo['Quantity'];
    $OrderReference=$ShipmentDetailinfo['OrderReference'];
    $BdtOrderNumber=$ShipmentDetailinfo['BdtOrderNumber'];
    $CustomerItemReference=$ShipmentDetailinfo['CustomerItemReference'];
    $CustomerItemCode=$ShipmentDetailinfo[0].['CustomerItemCode'];

    echo "BdtCode : ".$BdtCode."<br>";
    echo "ProdcutCode : ".$ProdcutCode."<br>";
    echo "Quantity : ".$Quantity."<br>";
    echo "OrderReference : ".$OrderReference."<br>";
    echo "BdtOrderNumber : ".$BdtOrderNumber."<br>";
    echo "CustomerItemReference : ".$CustomerItemReference."<br>";
    echo "CustomerItemCode : ".$CustomerItemCode."<br>";
    endforeach;
    echo "<hr>";
    $i++;
    endforeach;


    ztk adlı üyeden alıntı: mesajı görüntüle
    $xml = simplexml_load_file("http://www.f2r.gen.tr/sevkiyat.xml");
    $xml = 'XMLin İÇİNİ BURAYA YAPIŞTIRIN'; =>> bu satırı sildiniz değil mi.
  • 13-09-2018, 13:19:39
    #11
    ztk
    Kimlik doğrulama veya yönetimden onay bekliyor.
    F2RSolutions adlı üyeden alıntı: mesajı görüntüle
    Evet de aşağıdaki şekilde ana ağacı aldım. burada sorun şu her ana ağacın altında da ShipmentDetail var. bunları da almam lazım. sorunu burada yaşıyorum.



    $Shipment = simplexml_load_file("http://www.f2r.gen.tr/sevkiyat.xml");
    foreach ($Shipment as $Shipmentinfo):

    $ShipmentNumber=$Shipmentinfo['ShipmentNumber'];
    $InvoiceNumber=$Shipmentinfo['InvoiceNumber'];
    $ShipmentDate=$Shipmentinfo['ShipmentDate'];
    $TruckPlate=$Shipmentinfo['TruckPlate'];
    $ContainerNumber=$Shipmentinfo['ContainerNumber'];
    $DispatchDate=$Shipmentinfo['DispatchDate'];


    echo "ShipmentNumber : ".$ShipmentNumber."<br>";
    echo "InvoiceNumber : ".$InvoiceNumber."<br>";
    echo "ShipmentDate : ".$ShipmentDate."<br>";
    echo "TruckPlate : ".$TruckPlate."<br>";
    echo "ContainerNumber : ".$ContainerNumber."<br>";
    echo "DispatchDate : ".$DispatchDate."<hr>";
    endforeach;
    haa tamam. şimdi daha net oldu problem.

    Şöyle alabilirsiniz.

    
    $Shipment = simplexml_load_file("http://www.f2r.gen.tr/sevkiyat.xml");
    foreach ($Shipment as $Shipmentinfo):
        $ShipmentNumber = $Shipmentinfo['ShipmentNumber'];
        $InvoiceNumber = $Shipmentinfo['InvoiceNumber'];
        $ShipmentDate = $Shipmentinfo['ShipmentDate'];
        $TruckPlate = $Shipmentinfo['TruckPlate'];
        $ContainerNumber = $Shipmentinfo['ContainerNumber'];
        $DispatchDate = $Shipmentinfo['DispatchDate'];
        echo "ShipmentNumber : " . $ShipmentNumber . "<br>";
        echo "InvoiceNumber : " . $InvoiceNumber . "<br>";
        echo "ShipmentDate : " . $ShipmentDate . "<br>";
        echo "TruckPlate : " . $TruckPlate . "<br>";
        echo "ContainerNumber : " . $ContainerNumber . "<br>";
        echo "DispatchDate : " . $DispatchDate . "<hr>";
        echo $Shipmentinfo->Detail->ShipmentDetail->attributes()['BdtCode'];
        echo $Shipmentinfo->Detail->ShipmentDetail->attributes()['ProdcutCode'];
        echo $Shipmentinfo->Detail->ShipmentDetail->attributes()['Quantity'];
        echo $Shipmentinfo->Detail->ShipmentDetail->attributes()['OrderReference'];
        echo $Shipmentinfo->Detail->ShipmentDetail->attributes()['BdtOrderNumber'];
        echo $Shipmentinfo->Detail->ShipmentDetail->attributes()['CustomerItemReference'];
        echo $Shipmentinfo->Detail->ShipmentDetail->attributes()['CustomerItemCode'];
        echo $Shipmentinfo->Detail->ShipmentDetail->attributes()['CustomerOrderReference'];
        echo $Shipmentinfo->Detail->ShipmentDetail->attributes()['ProductName_Tr'];
        echo $Shipmentinfo->Detail->ShipmentDetail->attributes()['ProductName_En'];
        echo $Shipmentinfo->Detail->ShipmentDetail->attributes()['Unit'];
        echo $Shipmentinfo->Detail->ShipmentDetail->attributes()['Volume'];
        echo $Shipmentinfo->Detail->ShipmentDetail->attributes()['Weight'];
        echo $Shipmentinfo->Detail->ShipmentDetail->attributes()['ProductName'];
        echo $Shipmentinfo->Detail->ShipmentDetail->attributes()['PackageCount'];    
    endforeach;
  • 13-09-2018, 14:03:22
    #12
    Öncelikle ilginiz için teşekkür ederim.

    Aşağıdaki şekilde kodları yazıyrum fakat Detail altında bir döngü daha gerekli şu an için sadece ilk kaydı alıyor ama bir turun içinde 35 tane ShipmentDetail etiketi var. bunu nasıl döngüye sokabilirim.



    $Shipment = simplexml_load_file("http://www.f2r.gen.tr/sevkiyat.xml");
    $i=0;
    foreach ($Shipment as $Shipmentinfo):

    $ShipmentNumber=$Shipmentinfo['ShipmentNumber'];
    $InvoiceNumber=$Shipmentinfo['InvoiceNumber'];
    $ShipmentDate=$Shipmentinfo['ShipmentDate'];
    $TruckPlate=$Shipmentinfo['TruckPlate'];
    $ContainerNumber=$Shipmentinfo['ContainerNumber'];
    $DispatchDate=$Shipmentinfo['DispatchDate'];

    $BdtCode=$Shipmentinfo->Detail->ShipmentDetail->attributes()['BdtCode'];
    $ProdcutCode=$Shipmentinfo->Detail->ShipmentDetail->attributes()['ProdcutCode'];
    $Quantity=$Shipmentinfo->Detail->ShipmentDetail->attributes()['Quantity'];
    $OrderReference=$Shipmentinfo->Detail->ShipmentDetail->attributes()['OrderReference'];
    $BdtOrderNumber=$Shipmentinfo->Detail->ShipmentDetail->attributes()['BdtOrderNumber'];
    $CustomerItemReference=$Shipmentinfo->Detail->ShipmentDetail->attributes()['CustomerItemReference'];
    $CustomerItemCode=$Shipmentinfo->Detail->ShipmentDetail->attributes()['CustomerItemCode'];
    $CustomerOrderReference=$Shipmentinfo->Detail->ShipmentDetail->attributes()['CustomerOrderReference'];
    $ProductName_Tr=$Shipmentinfo->Detail->ShipmentDetail->attributes()['ProductName_Tr'];
    $ProductName_En=$Shipmentinfo->Detail->ShipmentDetail->attributes()['ProductName_En'];
    $Unit=$Shipmentinfo->Detail->ShipmentDetail->attributes()['Unit'];
    $Volume=$Shipmentinfo->Detail->ShipmentDetail->attributes()['Volume'];
    $Weight=$Shipmentinfo->Detail->ShipmentDetail->attributes()['Weight'];
    $ProductName=$Shipmentinfo->Detail->ShipmentDetail->attributes()['ProductName'];
    $PackageCount=$Shipmentinfo->Detail->ShipmentDetail->attributes()['PackageCount'];



    echo "ShipmentNumber : ".$ShipmentNumber."<br>";
    echo "InvoiceNumber : ".$InvoiceNumber."<br>";
    echo "ShipmentDate : ".$ShipmentDate."<br>";
    echo "TruckPlate : ".$TruckPlate."<br>";
    echo "ContainerNumber : ".$ContainerNumber."<br>";
    echo "DispatchDate : ".$DispatchDate."<br>";

    echo "BdtCode : ".$BdtCode."<br>";
    echo "ProdcutCode : ".$ProdcutCode."<br>";

    echo "Quantity : ".$Quantity."<br>";
    echo "OrderReference : ".$OrderReference."<br>";
    echo "BdtOrderNumber : ".$BdtOrderNumber."<br>";
    echo "CustomerItemReference : ".$CustomerItemReference."<br>";
    echo "CustomerItemCode : ".$CustomerItemCode."<br>";
    echo "ProductName_Tr : ".$ProductName_Tr."<br>";
    echo "ProductName_En : ".$ProductName_En."<br>";
    echo "Unit : ".$Unit."<br>";
    echo "Volume : ".$Volume."<br>";
    echo "Weight : ".$Weight."<br>";
    echo "ProductName : ".$ProductName."<br>";
    echo "PackageCount : ".$PackageCount."<br>";

    echo "<hr>";
    $i++;
    endforeach;





    ztk adlı üyeden alıntı: mesajı görüntüle
    haa tamam. şimdi daha net oldu problem.

    Şöyle alabilirsiniz.

    
    $Shipment = simplexml_load_file("http://www.f2r.gen.tr/sevkiyat.xml");
    foreach ($Shipment as $Shipmentinfo):
        $ShipmentNumber = $Shipmentinfo['ShipmentNumber'];
        $InvoiceNumber = $Shipmentinfo['InvoiceNumber'];
        $ShipmentDate = $Shipmentinfo['ShipmentDate'];
        $TruckPlate = $Shipmentinfo['TruckPlate'];
        $ContainerNumber = $Shipmentinfo['ContainerNumber'];
        $DispatchDate = $Shipmentinfo['DispatchDate'];
        echo "ShipmentNumber : " . $ShipmentNumber . "<br>";
        echo "InvoiceNumber : " . $InvoiceNumber . "<br>";
        echo "ShipmentDate : " . $ShipmentDate . "<br>";
        echo "TruckPlate : " . $TruckPlate . "<br>";
        echo "ContainerNumber : " . $ContainerNumber . "<br>";
        echo "DispatchDate : " . $DispatchDate . "<hr>";
        echo $Shipmentinfo->Detail->ShipmentDetail->attributes()['BdtCode'];
        echo $Shipmentinfo->Detail->ShipmentDetail->attributes()['ProdcutCode'];
        echo $Shipmentinfo->Detail->ShipmentDetail->attributes()['Quantity'];
        echo $Shipmentinfo->Detail->ShipmentDetail->attributes()['OrderReference'];
        echo $Shipmentinfo->Detail->ShipmentDetail->attributes()['BdtOrderNumber'];
        echo $Shipmentinfo->Detail->ShipmentDetail->attributes()['CustomerItemReference'];
        echo $Shipmentinfo->Detail->ShipmentDetail->attributes()['CustomerItemCode'];
        echo $Shipmentinfo->Detail->ShipmentDetail->attributes()['CustomerOrderReference'];
        echo $Shipmentinfo->Detail->ShipmentDetail->attributes()['ProductName_Tr'];
        echo $Shipmentinfo->Detail->ShipmentDetail->attributes()['ProductName_En'];
        echo $Shipmentinfo->Detail->ShipmentDetail->attributes()['Unit'];
        echo $Shipmentinfo->Detail->ShipmentDetail->attributes()['Volume'];
        echo $Shipmentinfo->Detail->ShipmentDetail->attributes()['Weight'];
        echo $Shipmentinfo->Detail->ShipmentDetail->attributes()['ProductName'];
        echo $Shipmentinfo->Detail->ShipmentDetail->attributes()['PackageCount'];    
    endforeach;




    Aşağıdaki şekilde bir döngü daha kurup sorunu çözdüm. yardımlarınız için teşekkür ederim. belki birilerine lazım olur diye de düzenlemeyi buraya bırakayım (:


    $Shipment = simplexml_load_file("http://www.f2r.gen.tr/sevkiyat.xml");
    $i=0;
    foreach ($Shipment as $Shipmentinfo):

    $ShipmentNumber=$Shipmentinfo['ShipmentNumber'];
    $InvoiceNumber=$Shipmentinfo['InvoiceNumber'];
    $ShipmentDate=$Shipmentinfo['ShipmentDate'];
    $TruckPlate=$Shipmentinfo['TruckPlate'];
    $ContainerNumber=$Shipmentinfo['ContainerNumber'];
    $DispatchDate=$Shipmentinfo['DispatchDate'];
    $DiziBoyutu=count($Shipmentinfo->Detail->ShipmentDetail);
    for($i=0;$i<=$DiziBoyutu-1;$i++){
    echo $DiziBoyutu;

    $BdtCode=$Shipmentinfo->Detail->ShipmentDetail[$i]->attributes()['BdtCode'];
    $ProdcutCode=$Shipmentinfo->Detail->ShipmentDetail[$i]->attributes()['ProdcutCode'];
    $Quantity=$Shipmentinfo->Detail->ShipmentDetail[$i]->attributes()['Quantity'];
    $OrderReference=$Shipmentinfo->Detail->ShipmentDetail[$i]->attributes()['OrderReference'];
    $BdtOrderNumber=$Shipmentinfo->Detail->ShipmentDetail[$i]->attributes()['BdtOrderNumber'];
    $CustomerItemReference=$Shipmentinfo->Detail->ShipmentDetail[$i]->attributes()['CustomerItemReference'];
    $CustomerItemCode=$Shipmentinfo->Detail->ShipmentDetail[$i]->attributes()['CustomerItemCode'];
    $CustomerOrderReference=$Shipmentinfo->Detail->ShipmentDetail[$i]->attributes()['CustomerOrderReference'];
    $ProductName_Tr=$Shipmentinfo->Detail->ShipmentDetail[$i]->attributes()['ProductName_Tr'];
    $ProductName_En=$Shipmentinfo->Detail->ShipmentDetail[$i]->attributes()['ProductName_En'];
    $Unit=$Shipmentinfo->Detail->ShipmentDetail[$i]->attributes()['Unit'];
    $Volume=$Shipmentinfo->Detail->ShipmentDetail[$i]->attributes()['Volume'];
    $Weight=$Shipmentinfo->Detail->ShipmentDetail[$i]->attributes()['Weight'];
    $ProductName=$Shipmentinfo->Detail->ShipmentDetail[$i]->attributes()['ProductName'];
    $PackageCount=$Shipmentinfo->Detail->ShipmentDetail[$i]->attributes()['PackageCount'];

    echo "ShipmentNumber : ".$ShipmentNumber."<br>";
    echo "InvoiceNumber : ".$InvoiceNumber."<br>";
    echo "ShipmentDate : ".$ShipmentDate."<br>";
    echo "TruckPlate : ".$TruckPlate."<br>";
    echo "ContainerNumber : ".$ContainerNumber."<br>";
    echo "DispatchDate : ".$DispatchDate."<br>";


    echo "BdtCode : ".$BdtCode."<br>";
    echo "ProdcutCode : ".$ProdcutCode."<br>";
    echo "Quantity : ".$Quantity."<br>";
    echo "OrderReference : ".$OrderReference."<br>";
    echo "BdtOrderNumber : ".$BdtOrderNumber."<br>";
    echo "CustomerItemReference : ".$CustomerItemReference."<br>";
    echo "CustomerItemCode : ".$CustomerItemCode."<br>";
    echo "ProductName_Tr : ".$ProductName_Tr."<br>";
    echo "ProductName_En : ".$ProductName_En."<br>";
    echo "Unit : ".$Unit."<br>";
    echo "Volume : ".$Volume."<br>";
    echo "Weight : ".$Weight."<br>";
    echo "ProductName : ".$ProductName."<br>";
    echo "PackageCount : ".$PackageCount."<br>--------------------------------------------------<BR>";
    }
    echo "<hr><hr>";
    $i++;
    endforeach;