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

Registered : 107,927

HOME > PHP > PHP Forum > php กับ web service ขอคำปรึกษาเรื่องการ return array ใน webservice ครับ



 

php กับ web service ขอคำปรึกษาเรื่องการ return array ใน webservice ครับ

 



Topic : 078536



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



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




ตามหัวข้อเลยครับผมมีปัญหา ต้องการ return array ไปยัง client ครับแต่มันไม่สามารถ return ออกไปได้ แต่ถ้าเอาทีละค่าสามารถทำได้ครับ ท่านใดมีความรู้ชี้แนะหน่อยครับ ขอบคุณครับ โค๊ดด้านล่างนี้ครับ

ฝั่ง server
PHP Code
                require_once("lib/nusoap.php");
		 
		//Create a new soap server
		$server = new soap_server();
		 
		//Define our namespace
		$namespace = "http://localhost:81/webservice/index.php";
		$server->wsdl->schemaTargetNamespace = $namespace;
		 
		//Configure our WSDL // set title
		$server->configureWSDL("HelloWorld");
		
		////////////////// register method for sale summary //////////////////////////
		$salecondition = array(
				'year' => "xsd:int",
				'monthfrom' => "xsd:int",
				'monthto' => "xsd:int",
				'team' => "xsd:string"
		);
		$server->register('SaleSummaryReport', $salecondition, array('return' => 'xsd:string'));
		
		function SaleSummaryReport($year, $monthfrom, $monthto, $team)
		{
			// connect to SQL Server
			$conn = mssql_connect("10.0.4.2", "nattapone", "04natt");
			mssql_select_db("CoinMIS", $conn);

			$p_all = 1;
			$proc = mssql_init("RE_TEAM_MON_2005");
			
			mssql_bind($proc, '@saleyear', $year, SQLINT4);
			mssql_bind($proc, '@salemonth', $monthfrom, SQLINT4);
			mssql_bind($proc, '@salemonth2', $monthto, SQLINT4);
			mssql_bind($proc, '@team', $team, SQLVARCHAR);
			mssql_bind($proc, '@p_all', $p_all, SQLINT4);
			mssql_bind($proc, '@c01', $c01, SQLVARCHAR);
			mssql_bind($proc, '@c02', $c02, SQLVARCHAR);
			mssql_bind($proc, '@c03', $c03, SQLVARCHAR);
			mssql_bind($proc, '@c04', $c04, SQLVARCHAR);
			mssql_bind($proc, '@c05', $c05, SQLVARCHAR);
			mssql_bind($proc, '@c06', $c06, SQLVARCHAR);
			mssql_bind($proc, '@c07', $c07, SQLVARCHAR);
			mssql_bind($proc, '@c08', $c08, SQLVARCHAR);
			mssql_bind($proc, '@c09', $c09, SQLVARCHAR);
			mssql_bind($proc, '@c10', $c10, SQLVARCHAR);
			mssql_bind($proc, '@c11', $c11, SQLVARCHAR);
			mssql_bind($proc, '@c12', $c12, SQLVARCHAR);
			mssql_bind($proc, '@c13', $c13, SQLVARCHAR);
			mssql_bind($proc, '@c14', $c14, SQLVARCHAR);
			mssql_bind($proc, '@cA', $cA, SQLVARCHAR);
			mssql_bind($proc, '@cB', $cB, SQLVARCHAR);
			
			// execute
			$result = mssql_execute($proc);
			
			$data = array();
			while($row = mssql_fetch_assoc($result))
			{
				$data[] = $row['area'];
			}
			return $data;
		}
		
		// Get our posted data if the service is being consumed
		// otherwise leave this data blank.
		$POST_DATA = isset($GLOBALS['HTTP_RAW_POST_DATA']) ? $GLOBALS['HTTP_RAW_POST_DATA'] : '';
		 
		// pass our posted data (or nothing) to the soap service
		$server->service($POST_DATA);
		exit(); 


ฝั่ง Client

Code
        require_once("lib/nusoap.php");
	$client = new nusoap_client("http://localhost:81/webservice/webserviceserver.php?wsdl",true); 
	$params = array(
				'year'=> 2012,
				'monthfrom'=> 5,
				'monthto' => 5,
				'team' => '92'
	);
	
	$data = $client->call("SaleSummaryReport", $params);
	
	if(is_array($data))
	{
		foreach($data as $area)
		{
			echo $area;
		}
	}
	else
	{
		echo "Not have value in array";
	}




Tag : PHP, MySQL







Move To Hilight (Stock) 
Send To Friend.Bookmark.
Date : 2012-05-17 16:30:45 By : nottp106 View : 4373 Reply : 9
 

 

No. 1



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

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

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

เพิ่มอันนี้เข้าไปใน Server ครับ

Code (PHP)
		$server->register('HelloWorld',$varname, array('return' => 'tns:ArrayOfString'));

		$server->wsdl->addComplexType("ArrayOfString", 
						 "complexType", 
						 "array", 
						 "", 
						 "SOAP-ENC:Array", 
						 array(), 
						 array(array("ref"=>"SOAP-ENC:arrayType","wsdl:arrayType"=>"xsd:string[]")), 
						 "xsd:string"); 


เดียวจัดเป็นบทความให้ครับ






แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2012-05-17 17:04:49 By : mr.win
 


 

No. 2



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

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

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

น่าจะได้เป็นแบบนี้ครับ

Code (PHP)
 require_once("lib/nusoap.php");
 
//Create a new soap server
$server = new soap_server();
 
//Define our namespace
$namespace = "http://localhost:81/webservice/index.php";
$server->wsdl->schemaTargetNamespace = $namespace;
 
//Configure our WSDL // set title
$server->configureWSDL("HelloWorld");

////////////////// register method for sale summary //////////////////////////
$salecondition = array(
		'year' => "xsd:int",
		'monthfrom' => "xsd:int",
		'monthto' => "xsd:int",
		'team' => "xsd:string"
);

$server->register('SaleSummaryReport',$salecondition, array('return' => 'tns:ArrayOfString'));

$server->wsdl->addComplexType("ArrayOfString", 
				 "complexType", 
				 "array", 
				 "", 
				 "SOAP-ENC:Array", 
				 array(), 
				 array(array("ref"=>"SOAP-ENC:arrayType","wsdl:arrayType"=>"xsd:string[]")), 
				 "xsd:string");  

function SaleSummaryReport($year, $monthfrom, $monthto, $team)
{
	// connect to SQL Server
	$conn = mssql_connect("10.0.4.2", "nattapone", "04natt");
	mssql_select_db("CoinMIS", $conn);

	$p_all = 1;
	$proc = mssql_init("RE_TEAM_MON_2005");
	
	mssql_bind($proc, '@saleyear', $year, SQLINT4);
	mssql_bind($proc, '@salemonth', $monthfrom, SQLINT4);
	mssql_bind($proc, '@salemonth2', $monthto, SQLINT4);
	mssql_bind($proc, '@team', $team, SQLVARCHAR);
	mssql_bind($proc, '@p_all', $p_all, SQLINT4);
	mssql_bind($proc, '@c01', $c01, SQLVARCHAR);
	mssql_bind($proc, '@c02', $c02, SQLVARCHAR);
	mssql_bind($proc, '@c03', $c03, SQLVARCHAR);
	mssql_bind($proc, '@c04', $c04, SQLVARCHAR);
	mssql_bind($proc, '@c05', $c05, SQLVARCHAR);
	mssql_bind($proc, '@c06', $c06, SQLVARCHAR);
	mssql_bind($proc, '@c07', $c07, SQLVARCHAR);
	mssql_bind($proc, '@c08', $c08, SQLVARCHAR);
	mssql_bind($proc, '@c09', $c09, SQLVARCHAR);
	mssql_bind($proc, '@c10', $c10, SQLVARCHAR);
	mssql_bind($proc, '@c11', $c11, SQLVARCHAR);
	mssql_bind($proc, '@c12', $c12, SQLVARCHAR);
	mssql_bind($proc, '@c13', $c13, SQLVARCHAR);
	mssql_bind($proc, '@c14', $c14, SQLVARCHAR);
	mssql_bind($proc, '@cA', $cA, SQLVARCHAR);
	mssql_bind($proc, '@cB', $cB, SQLVARCHAR);
	
	// execute
	$result = mssql_execute($proc);
	
	$data = array();
	while($row = mssql_fetch_assoc($result))
	{
		$data[] = $row['area'];
	}
	return $data;
}

// Get our posted data if the service is being consumed
// otherwise leave this data blank.
$POST_DATA = isset($GLOBALS['HTTP_RAW_POST_DATA']) ? $GLOBALS['HTTP_RAW_POST_DATA'] : '';
 
// pass our posted data (or nothing) to the soap service
$server->service($POST_DATA);
exit(); 

แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2012-05-17 17:06:16 By : mr.win
 

 

No. 3



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



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


โอ้วได้แล้วครับ แค่เพิ่ม code ที่พี่วินบอกใช่ไหมครับ? ถ้าติดจะเข้ามาถามอีกนะครับ :D
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2012-05-17 17:19:53 By : nottp106
 


 

No. 4



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

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

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

ใช่ครับ ง่าย ๆ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2012-05-17 17:23:01 By : mr.win
 


 

No. 5



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

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

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

จัดบทความให้ครับ



Go to : วิธีการสร้าง PHP กับ Web Service และ Return Array ไปยัง Client แบบ Array ด้วย Library ของ NuSoap
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2012-05-17 17:58:50 By : mr.win
 


 

No. 6



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

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

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

จัดให้อีก 1 บทความ PHP กับ Web Service และการ Return Result กลับจาก MySQL



Go to : PHP - Web Service กับ MySQL รับส่งค่าผ่าน Web Service กับ MySQL (NuSoap)
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2012-05-18 11:55:32 By : mr.win
 


 

No. 7



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



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


เยี่ยมเลยครับพี่ ^^
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2012-05-18 12:02:35 By : nottp106
 


 

No. 8



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

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

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

อีกบทความ JSON ครับ



Go to : PHP และ JSON กับ Web Service การรับส่งข้อมูลจาก MySQL ในรูปแบบของ JSON
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2012-05-26 20:25:05 By : mr.win
 


 

No. 9

Guest


ตอบความคิดเห็นที่ : 5 เขียนโดย : mr.win เมื่อวันที่ 2012-05-17 17:58:50
รายละเอียดของการตอบ ::
ถ้ามี อีเมล์มากกว่า 1 ต้อง เพิ่มอะไรรึป่าวครับ
คือผมลองทำโดยมีชื่อ 1 ชื่อ และ อีเมล์ 2 อีเมล์ ครับ
array ที่ Return กลับมา เป็นแบบนี้ครับ
Code
array([0] => Weerachai, [1] => array)


แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2013-09-13 12:56:01 By : natajrak
 

   

ค้นหาข้อมูล


   
 

แสดงความคิดเห็น
Re : php กับ web service ขอคำปรึกษาเรื่องการ return array ใน webservice ครับ
 
 
รายละเอียด
 
ตัวหนา ตัวเอียง ตัวขีดเส้นใต้ ตัวมีขีดกลาง| ตัวเรืองแสง ตัวมีเงา ตัวอักษรวิ่ง| จัดย่อหน้าอิสระ จัดย่อหน้าชิดซ้าย จัดย่อหน้ากึ่งกลาง จัดย่อหน้าชิดขวา| เส้นขวาง| ขนาดตัวอักษร แบบตัวอักษร
ใส่แฟลช ใส่รูป ใส่ไฮเปอร์ลิ้งค์ ใส่อีเมล์ ใส่ลิ้งค์ 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: Voake, Comcube, รับทำเว็บไซต์ รับเขียนโปรแกรม

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