Register Register Member Login Member Login Member Login Forgot Password ??
PHP , ASP , ASP.NET, VB.NET, C#, Java , jQuery , Android , iOS , Windows Phone
 

Registered : 109,037

HOME > PHP > PHP Forum > ติดปัญหา php ดึงข้อมูลจาก xml (web service) ค่ะ



 

ติดปัญหา php ดึงข้อมูลจาก xml (web service) ค่ะ

 



Topic : 081616



โพสกระทู้ ( 6 )
บทความ ( 0 )



สถานะออฟไลน์




เขียน php เพื่อดึงข้อมุลจากเว็บเซอร์วิส แต่มันติดปัญหาตรง งง มันมีโครงสร้าง xml แบบนี้ค่ะ

Code
<DataSet xmlns="http://www.e-manage.mju.ac.th">
<xs:schema xmlns="" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata" id="NewDataSet">
<xs:element name="NewDataSet" msdata:IsDataSet="true" msdata:UseCurrentLocale="true">
<xs:complexType>
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:element name="ProjectData">
<xs:complexType>
<xs:sequence>
<xs:element name="projectID" type="xs:int" minOccurs="0"/>
<xs:element name="projectNo" type="xs:string" minOccurs="0"/>
<xs:element name="projectTypeID" type="xs:int" minOccurs="0"/>
<xs:element name="planProjectID" type="xs:int" minOccurs="0"/>
<xs:element name="projectParentID" type="xs:int" minOccurs="0"/>
<xs:element name="nameTh" type="xs:string" minOccurs="0"/>
<xs:element name="nameEn" type="xs:string" minOccurs="0"/>
<xs:element name="beginDate" type="xs:dateTime" minOccurs="0"/>
<xs:element name="endDate" type="xs:dateTime" minOccurs="0"/>
<xs:element name="targetQuantity" type="xs:int" minOccurs="0"/>
<xs:element name="targetGoal" type="xs:string" minOccurs="0"/>
<xs:element name="isLocal" type="xs:boolean" minOccurs="0"/>
<xs:element name="modifiedDate" type="xs:dateTime" minOccurs="0"/>
<xs:element name="isActive" type="xs:boolean" minOccurs="0"/>
<xs:element name="entryDepartmentID" type="xs:int" minOccurs="0"/>
<xs:element name="entryPersonID" type="xs:int" minOccurs="0"/>
<xs:element name="projectID1" type="xs:int" minOccurs="0"/>
<xs:element name="departmentID" type="xs:int" minOccurs="0"/>
<xs:element name="mainOwner" type="xs:boolean" minOccurs="0"/>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:choice>
</xs:complexType>
</xs:element>
</xs:schema>
<diffgr:diffgram xmlns:msdata="urn:schemas-microsoft-com:xml-msdata" xmlns:diffgr="urn:schemas-microsoft-com:xml-diffgram-v1">
<NewDataSet xmlns="">
<ProjectData diffgr:id="ProjectData1" msdata:rowOrder="0">
<projectID>1696</projectID>
<projectNo>55-0449-1738</projectNo>
<projectTypeID>3</projectTypeID>
<projectParentID>1648</projectParentID>
<nameTh>
การพัฒนาบุคลิกภาพเพื่อมุ่งสู่การเป็นผู้ประกอบการมืออาชีพ
</nameTh>
<nameEn/>
<beginDate>2012-08-08T00:00:00+07:00</beginDate>
<endDate>2012-08-08T00:00:00+07:00</endDate>
<targetQuantity>550</targetQuantity>
<targetGoal>
1. นักศึกษาหลักสูตรบริหารธุรกิจบัณฑิต สาขาวิชาบริหารธุรกิจ (การตลาด) หลักสูตร 4 ปี จำนวน 137 คน 2. นักศึกษาหลักสูตรบริหารธุรกิจบัณฑิต สาขาวิชาบริหารธุรกิจ (การจัดการทั่วไป) หลักสูตร 4 ปี จำนวน 94 คน 3. นักศึกษาหลักสูตรบริหารธุรกิจบัณฑิต สาขาวิชาการเงิน จำนวน 89 คน 4. นักศึกษาหลักสูตรบริหารธุรกิจบัณฑิต สาขาวิชาเทคโนโลยีสารสนเทศทางธุรกิจ หลักสูตร 4 ปี จำนวน 74 คน 5. นักศึกษาหลักสูตรบริหารธุรกิจบัณฑิต สาขาวิชาเทคโนโลยีสารสนเทศทางธุรกิจ หลักสูตร 2 ปีต่อเนื่อง จำนวน 62 คน 6. นักศึกษาหลักสูตรบัญชีบัณฑิต สาขาวิชาการบัญชี หลักสูตร 4 ปี จำนวน 94 คน
</targetGoal>


อยากได้ concept การ loop ค่ะ ลอง ใส่โค้ดนี้ไป


Code (PHP)
 <?
		include("lib/nusoap.php");
        $client = new nusoap_client("http://www.xxx.com/projectService.asmx?wsdl",true); 
		
        $params = array(
                   'keyAuthentication' => "xxx",
				   'governmentMainCode' => "xxx"
        );
	$data = $client->call("projectOfDepartment",$params);
	print_r($data);
	foreach($data as $index1 => $value1){
		echo $value1
		foreach($value1 as $index2 => $value2){
			foreach($value2 as $index3 => $value3){
				foreach($value3 as $index4 => $value4){
					foreach($value4 as $index5 => $value5){
						if(is_numeric($index5))
						if(!$i++)echo "<table border=1><tr align=center><td>positionCode</td><td>positionNameTH</td><td>eManagwLink</td></tr>";
				//		echo "<tr><td>".$value5['positionCode']."</td><td>".$value5['positionNameTH']."</td><td>".$value5['eManagwLink']."</td></tr>";
					}
					echo "</table>";
				}
			}
		}
	}
	echo "<hr>";
	
	   
?>


มันดังฟอ้ง error

Code
Array ( [projectOfDepartmentResult] => Array ( [schema] => Array ( [element] => Array ( [complexType] => Array ( [choice] => Array ( [!minOccurs] => 0 [!maxOccurs] => unbounded ) ) [!name] => NewDataSet [!msdata:IsDataSet] => true [!msdata:UseCurrentLocale] => true ) [!id] => NewDataSet ) [diffgram] => ) ) Array
Warning: Invalid argument supplied for foreach() in C:\AppServ\www\nusoap-0.9.5\testsoap.php on line 23

Warning: Invalid argument supplied for foreach() in C:\AppServ\www\nusoap-0.9.5\testsoap.php on line 23

Warning: Invalid argument supplied for foreach() in C:\AppServ\www\nusoap-0.9.5\testsoap.php on line 23

Warning: Invalid argument supplied for foreach() in C:\AppServ\www\nusoap-0.9.5\testsoap.php on line 22

Warning: Invalid argument supplied for foreach() in C:\AppServ\www\nusoap-0.9.5\testsoap.php on line 21


เลยทำให้ งง กว่าเดิม กูรูช่วยด้วยค่ะ

ขอบคุณค่ะ



Tag : PHP, CakePHP, WebService







Move To Hilight (Stock) 
Send To Friend.Bookmark.
Date : 2012-07-27 10:59:42 By : thitinun-bit View : 1500 Reply : 4
 

 

No. 1



โพสกระทู้ ( 74,058 )
บทความ ( 838 )

สมาชิกที่ใส่เสื้อไทยครีเอท

สถานะออฟไลน์
Twitter Facebook

ไม่ใช้ JSON ครับ อ่านได้ง่ายกกว่าครับ






แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2012-07-27 13:27:32 By : mr.win
 


 

No. 2



โพสกระทู้ ( 6 )
บทความ ( 0 )



สถานะออฟไลน์


ยางไงค่ะ อธิบายหน่อยค่ะ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2012-07-27 13:42:07 By : thitinun-bit
 

 

No. 3



โพสกระทู้ ( 74,058 )
บทความ ( 838 )

สมาชิกที่ใส่เสื้อไทยครีเอท

สถานะออฟไลน์
Twitter Facebook

ปกติ Web Service นิยมใช้ JSON มารับส่งน่ะครับ

Go to : jQuery Ajax กับ JSON (Web Service) ทำความเข้าใจ การรับส่งข้อมูล JSON ผ่าน jQuery กับ Ajax
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2012-07-27 21:28:25 By : mr.win
 


 

No. 4



โพสกระทู้ ( 6 )
บทความ ( 0 )



สถานะออฟไลน์


Code (PHP)
<html>
<head>
<title>ข้อมูลบุคลากร คณะบริหารธุรกิจ</title>

<meta http-equiv="Content-Type" content="text/html; charset=utf-8"></head>
<body>
<p>
  <?
		include("lib/nusoap.php");
        $client = new nusoap_client("http://www.e-manage.mju.ac.th/service/projectService.asmx?wsdl",true); 
		
        $params = array(
                   'keyAuthentication' => "xx",
				   'governmentMainCode' => "xxxx"
        );
	$data = $client->call('projectOfDepartment',$params);
//	$mydata = json_decode($data,true);
	     print_r($data);
		$mydata = json_encode($data);
//		echo $mydata;
		
		if(count($mydata)==0){
			echo "Not Data";
		}else{
			echo $mydata;
	
?>
	<table width="500" border="1">
    	<tr>
        	<td>projectID</td>
            <td>nameTh</td>
            <td>departmentID</td>
         </tr>
     <?PHP
     	foreach($mydata as $result){
	 ?>
     	<tr>
        	<td><?PHP echo $result["projectID"]?></td>
            <td><?PHP echo $result["nameTh"]?></td>
            <td><?PHP echo $result["departmentID"]?></td>
         </tr>
     <? }?>
     </table>
	<? }
     
	 ?>
</p>
<p>&nbsp;</p>
</body>
</html>


ลองใส่แบบนี้ ไปแล้ว แต่ มัน ยาง Error อ่าค่ะ

ACode
rray ( [projectOfDepartmentResult] => Array ( [schema] => Array ( [element] => Array ( [complexType] => Array ( [choice] => Array ( [!minOccurs] => 0 [!maxOccurs] => unbounded ) ) [!name] => NewDataSet [!msdata:IsDataSet] => true [!msdata:UseCurrentLocale] => true ) [!id] => NewDataSet ) [diffgram] => ) ) {"projectOfDepartmentResult":{"schema":{"element":{"complexType":{"choice":{"!minOccurs":"0","!maxOccurs":"unbounded"}},"!name":"NewDataSet","!msdata:IsDataSet":"true","!msdata:UseCurrentLocale":"true"},"!id":"NewDataSet"},"diffgram":""}}


งง มากมายค่ะ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2012-08-14 09:54:08 By : thitinun-bit
 

   

ค้นหาข้อมูล


   
 

แสดงความคิดเห็น
Re : ติดปัญหา php ดึงข้อมูลจาก xml (web service) ค่ะ
 
 
รายละเอียด
 
ตัวหนา ตัวเอียง ตัวขีดเส้นใต้ ตัวมีขีดกลาง| ตัวเรืองแสง ตัวมีเงา ตัวอักษรวิ่ง| จัดย่อหน้าอิสระ จัดย่อหน้าชิดซ้าย จัดย่อหน้ากึ่งกลาง จัดย่อหน้าชิดขวา| เส้นขวาง| ขนาดตัวอักษร แบบตัวอักษร
ใส่แฟลช ใส่รูป ใส่ไฮเปอร์ลิ้งค์ ใส่อีเมล์ ใส่ลิ้งค์ FTP| ใส่แถวของตาราง ใส่คอลัมน์ตาราง| ตัวยก ตัวห้อย ตัวพิมพ์ดีด| ใส่โค้ด ใส่การอ้างถึงคำพูด| ใส่ลีสต์
smiley for :lol: smiley for :ken: smiley for :D smiley for :) smiley for ;) smiley for :eek: smiley for :geek: smiley for :roll: smiley for :erm: smiley for :cool: smiley for :blank: smiley for :idea: smiley for :ehh: smiley for :aargh: smiley for :evil:
Insert PHP Code
Insert ASP Code
Insert VB.NET Code Insert C#.NET Code Insert JavaScript Code Insert C#.NET Code
Insert Java Code
Insert Android Code
Insert Objective-C Code
Insert XML Code
Insert SQL Code
Insert Code
เพื่อความเรียบร้อยของข้อความ ควรจัดรูปแบบให้พอดีกับขนาดของหน้าจอ เพื่อง่ายต่อการอ่านและสบายตา และตรวจสอบภาษาไทยให้ถูกต้อง

อัพโหลดแทรกรูปภาพ

Notice

เพื่อความปลอดภัยของเว็บบอร์ด ไม่อนุญาติให้แทรก แท็ก [img]....[/img] โดยการอัพโหลดไฟล์รูปจากที่อื่น เช่นเว็บไซต์ ฟรีอัพโหลดต่าง ๆ
อัพโหลดแทรกรูปภาพ ให้ใช้บริการอัพโหลดไฟล์ของไทยครีเอท และตัดรูปภาพให้พอดีกับสกรีน เพื่อความโหลดเร็วและไฟล์ไม่ถูกลบทิ้ง

   
  เพื่อความปลอดภัยและการตรวจสอบ กระทู้ที่แทรกไฟล์อัพโหลดไฟล์จากที่อื่น อาจจะถูกลบทิ้ง
 
โดย
อีเมล์
บวกค่าให้ถูก
<= ตัวเลขฮินดูอารบิก เช่น 123 (หรือล็อกอินเข้าระบบสมาชิกเพื่อไม่ต้องกรอก)







Exchange: นำเข้าสินค้าจากจีน, Taobao, เฟอร์นิเจอร์, ของพรีเมี่ยม, ร่ม, ปากกา, power bank, แฟลชไดร์ฟ, กระบอกน้ำ

Load balance : Server 02
ThaiCreate.Com Logo
© www.ThaiCreate.Com. 2003-2024 All Rights Reserved.
ไทยครีเอทบริการ จัดทำดูแลแก้ไข Web Application ทุกรูปแบบ (PHP, .Net Application, VB.Net, C#)
[Conditions Privacy Statement] ติดต่อโฆษณา 081-987-6107 อัตราราคา คลิกที่นี่