如何在一个查询中收集有关一项的所有结果

问题描述

我正在尝试为我发送的货件制作一个 PHP 跟踪页面,我制作了一个 html 页面,将 ajax 查询发送到我的 PHP 文件,然后显示所有详细信息 我已成功掌握信息 但问题是当我为运单编号循环时,它会一一显示,意思是 如果我有 3 个运单让我说 [ 50003、3902、39499] 结果将是 id:50003,状态:picked, id:3902,状态:picked, id:39499,状态:picked, 那么它将是 id : 50003,状态 : left city,id : 3902,id : 39499,等等 .. 这是非常糟糕的

我需要它像: id : 50003,status1 : Picked,status 2 : left city : status 3 : Delivered and like this

这是我的 PHP :

<?PHP
 ini_set('display_errors',1);
ini_set('display_startup_errors',1);
error_reporting(E_ALL);


  $waybill2 = explode(PHP_EOL,$_POST['waybill']) ;

  $value = "<int>".implode('</int><int>',$waybill2)."</int>";

 $curl = curl_init();

  curl_setopt_array($curl,array(
    CURLOPT_URL => 'https://infotrack.naqelexpress.com/NaqelAPIServices/NaqelAPI/9.0/XMLShippingService.asmx?wsdl',CURLOPT_RETURNTRANSFER => true,CURLOPT_ENCODING => '',CURLOPT_MAXREDirs => 10,CURLOPT_TIMEOUT => 0,CURLOPT_FOLLOWLOCATION => true,CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,CURLOPT_CUSTomrEQUEST => 'POST',CURLOPT_POSTFIELDS =>"<?xml version='1.0' encoding='utf-8'?>
  <soap:Envelope xmlns:xsi='http://www.w3.org/2001/XMLSchema-instance' xmlns:xsd='http://www.w3.org/2001/XMLSchema' xmlns:soap='http://schemas.xmlsoap.org/soap/envelope/'>
    <soap:Body>
      <TraceByMultiWaybillNo xmlns='http://tempuri.org/'>
         <ClientInfo>
          <ClientAddress>
            <PhoneNumber>******</PhoneNumber>
            <FirstAddress>******</FirstAddress>
            <Location>******</Location>
            <CountryCode>******</CountryCode>
            <CityCode>******</CityCode>
          </ClientAddress>
          <ClientContact>
            <Name>zeyad</Name>
            <Email>******</Email>
            <PhoneNumber>******</PhoneNumber>
            <MobileNo>******</MobileNo>
          </ClientContact>
          <ClientID>******</ClientID>
          <Password>*****</Password>
          <Version>9.0</Version>
        </ClientInfo>
        <WaybillNo>
$value
        </WaybillNo>
      </TraceByMultiWaybillNo>
    </soap:Body>
  </soap:Envelope>
  ",CURLOPT_HTTPHEADER => array(
      'Content-Type: text/xml'
    ),));
  
  $response = curl_exec($curl);

  curl_close($curl);
 $response = preg_replace("/(<\/?)(\w+):([^>]*>)/","$1$2$3",$response);
$xml = new SimpleXMLElement($response);
$body = $xml->xpath('//soapBody')[0];
$array = json_decode(json_encode((array)$body),true); 

$data = $array['TraceByMultiWaybillnoresponse']['TraceByMultiWaybillnoresult']['Tracking'];



$waybils = array();
foreach ($data as $index => $val1) {
    echo "<pre>";
    $waybils[] = $val1['WaybillNo'];
    print_r($waybils);
    foreach( $waybils as $e ){
       echo $e . $val1['arabicActivity']; 
    
    }
// echo $val1['WaybillNo']."  && ".$val1['arabicActivity'] ;
echo "</pre>";
}

这里是 html

<html lang="en">
<head>
    <Meta charset="UTF-8">
    <Meta http-equiv="X-UA-Compatible" content="IE=edge">
    <Meta name="viewport" content="width=device-width,initial-scale=1.0">
    <title>Document</title>
<!-- Latest compiled and minified CSS -->
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css" integrity="sha384-BVYiiSIFeK1dGmJRAkycuHAHRg32OmUcww7on3RYdg4Va+PmSTsz/K68vbdEjh4u" crossorigin="anonymous">

<!-- Optional theme -->
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap-theme.min.css" integrity="sha384-rHyoN1irsVXV4nD0JutlnGaslCJuC7uwjduW9SVrLvRYooPp2bWYgmgJQIXwl/Sp" crossorigin="anonymous">

<!-- Latest compiled and minified JavaScript -->
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/js/bootstrap.min.js" integrity="sha384-Tc5IQib027qvyjSMfHjOMaLkfuWVxZxUPnCJA7l2mCWNIpG9mGCD8wGNIcPD7Txa" crossorigin="anonymous"></script>
    <script src="scri.js" ></script>
</head>
<body>
    <div class="container">
        <div class="row">
            <h1>
                Type Here
            </h1>
           <form class="md-6" id="sds_contact_form">
            <div class="form-group">
                <label for="exampleFormControlTextarea1">Example textarea</label>
                <textarea class="form-control way" name="waybill" id="exampleFormControlTextarea1" rows="3"></textarea>
              </div>
              <div class="form-group mt-6">
                <input type="button" class="send" onClick="onClick()" value="submit" name="send"/>
            </div>
           </form> 
        </div>
        <div class="succ"></div>
    </div>
  <script>

    
    function onClick()
{
      var $waybill = $('.way').val();
      var myLineBreak = $waybill.replace(/([^>\r\n]?)(\r\n|\n\r|\r|\n)/g,'<br />');
      var succ = $('.succ');
    $.ajax({
        url:'g.PHP',type:'post',method:'post',data: {'waybill': $waybill},success: function(data){
           succ.html(data)
       },dataType: "json",error:function queryError(request,textStatus,errorThrown) {
    $('.succ').html("error " + request.responseText,textStatus + " " + errorThrown);
}
    });


}





     
  </script>
</body>
</html>

这是$data的输出

array (
  0 => 
  array (
    'StationCode' => 'Buraydah','Date' => '2021-05-11T22:48:00','ActivityCode' => '1','Activity' => 'Picked Up at : Buraydah','arabicActivity' => 'تم إستلام الشحنة من الراسل : بريدة','WaybillNo' => '52636025','ClientID' => '9020654','HasError' => 'false','ErrorMessage' => 
    array (
    ),'Comments' => 
    array (
    ),'RefNo' => '41337_O_110521','DeliveryStatusID' => '0','EventCode' => '1',),1 => 
  array (
    'StationCode' => 'Buraydah','WaybillNo' => '52636027','RefNo' => '41356_O_110521',2 => 
  array (
    'StationCode' => 'Buraydah','Date' => '2021-05-12T02:13:04.833','ActivityCode' => '47','Activity' => 'Miscode: Correct city','arabicActivity' => 'Terminal Handling','WaybillNo' => '52636026','Comments' => 'JUBAIL(KSA)','RefNo' => '41369_O_110521','EventCode' => '47',3 => 
  array (
    'StationCode' => 'Buraydah','Date' => '2021-05-12T02:15:39.37','Activity' => 'Miscode : Correct city : JEDDAH(KSA)','Comments' => 'JEDDAH(KSA)',4 => 
  array (
    'StationCode' => 'Buraydah','Date' => '2021-05-12T02:19:38.67','Activity' => 'Miscode : Correct city : RIYADH(KSA)','Comments' => 'RIYADH(KSA)',5 => 
  array (
    'StationCode' => 'Buraydah','Date' => '2021-05-12T07:40:17.567','Activity' => 'Terminal Handling','Comments' => 'ELQRUHHCBU27 - tripID - 31036',6 => 
  array (
    'StationCode' => 'Buraydah','Date' => '2021-05-12T07:40:18.22','Activity' => 'Load to Trip : ELQRUHHCBU27 - tripID - 31036',7 => 
  array (
    'StationCode' => 'Buraydah',8 => 
  array (
    'StationCode' => 'RIYADH','Date' => '2021-05-12T14:43:33.587','Activity' => 'Cons.Arrived at : Sort Facility - RIYADH - ELQRUHHCBU27 - tripID - 31036','Comments' => 'Sort Facility - RIYADH - ELQRUHHCBU27 - tripID - 31036',9 => 
  array (
    'StationCode' => 'RIYADH','Date' => '2021-05-12T14:43:34.067',10 => 
  array (
    'StationCode' => 'RIYADH','Date' => '2021-05-12T14:43:34.133',11 => 
  array (
    'StationCode' => 'RIYADH','Date' => '2021-05-12T14:45:55.877','Activity' => 'Transit : Transit Facility',12 => 
  array (
    'StationCode' => 'RIYADH','Activity' => 'Transit: Transit Facility',13 => 
  array (
    'StationCode' => 'RIYADH',14 => 
  array (
    'StationCode' => 'RIYADH','Date' => '2021-05-13T00:08:10.397','Activity' => 'Load to Trip : RUHTMM2 - tripID - 31076','Comments' => 'RUHTMM2 - tripID - 31076',15 => 
  array (
    'StationCode' => 'RIYADH','Date' => '2021-05-14T15:13:24.773','Comments' => 'RUHQJBFRI01 - tripID - 31082',16 => 
  array (
    'StationCode' => 'RIYADH','Date' => '2021-05-14T16:44:00.457','Activity' => 'Load to Trip : RUHJEDFRI - tripID - 31085','Comments' => 'RUHJEDFRI - tripID - 31085',)

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)