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

Registered : 102,608


HOME > บทความจากสมาชิก > PHP สร้าง Web Service และใช้ .NET เรียก Web Service ของ PHP (ASP.NET and Windows Form)

PHP สร้าง Web Service และใช้ .NET เรียก Web Service ของ PHP (ASP.NET and Windows Form)

 
 
       
Bookmark.   
Share
       
PHP สร้าง Web Service และใช้ .NET เรียก Web Service ของ PHP (ASP.NET and Windows Form) ช่วงนี้ได้เขียนบทความเกี่ยวกับพื้นฐานของ Web Service ได้พอสมควร มีทั้งภาษา .Net และก็ php หรือการเรียก Web Service ข้ามภาษากัน เช่น PHP เรียก Web Service ของ .NET ซึ่งก็สามารถกลับไปอ่านได้ในบทความก่อน ๆ นี้ และบทความนี้เป็นภาคต่อของการสร้าง Web Service ด้วย PHP แต่จะเป็นการเรียก Web Service ด้วย Application ของ .NET ในรูปแบบของ ASP.NET และ Windows Form


Screenshot

PHP Create Web Service and Call by ASP.NET (.NET Framework)

ASP.NET เรียก Web Service ของ PHP


PHP Create Web Service and Call by ASP.NET (.NET Framework)

Windows Form เรียก Web Service ของ PHP


Download nusoap library
http://sourceforge.net/projects/nusoap/


สำหรับ PHP สร้าง Web Service จะใช้ Library ของ NuSoap สามาถดาวน์โหลดได้จากลิ้งค์ข้างบน หรือจะดาวน์โหลด Source ทั้งหมดได้จากส่วนท้ายของบทความ

บทความนี้จะสร้าง Service แบบง่าย ๆ ด้วยการรับค่า Name และ Email จาก Client และมีการส่งค่ากลับไปยัง Client เช่น

Client
Name = Weerachai Nukitram
Email = is_php@hotmail.com


ตัวอย่างค่าที่ Client ส่งไปยัง Web Service

Web Service
Hello, World! Khun (Weerachai Nukitram , Your email : is_php@hotmail.com)


สิ่งที่ Web Service ส่งค่ากลับมา


ขั้นตอนแรกเริ่มจากการสร้าง Web Service ของ PHP

WebServiceServer.php
<?php
		require_once("lib/nusoap.php");
		 
		//Create a new soap server
		$server = new soap_server();
		 
		//Define our namespace
		$namespace = "http://localhost/nusoap/index.php";
		$server->wsdl->schemaTargetNamespace = $namespace;
		 
		//Configure our WSDL
		$server->configureWSDL("HelloWorld");
		 
		// Register our method and argument parameters
        $varname = array(
                   'strName' => "xsd:string",
				   'strEmail' => "xsd:string"
        );
		$server->register('HelloWorld',$varname, array('return' => 'xsd:string'));
		 
		function HelloWorld($strName,$strEmail)
		{
			return "Hello, World! Khun ($strName , Your email : $strEmail)";
		}
		 
		// 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(); 
?>


คำอธิบายสั้น ๆ
ใน Code จะมีการสร้าง Service ที่ชื่อว่า HelloWorld และมี Method ที่ชื่อว่า HelloWorld และประกอบด้วย Parameters หรือ Argument 2 ตัวคือ $strName และ $strEmail ส่วน reutn นั้นคือค่าตัวแปรสำหรับการ return ค่ากลับไปยัง Client

สร้างไฟล์ WebServiceServer.php และจัดเก็บไว้ใน nusoap\WebServiceServer.php ภายใต้ root ของ Server และตอนที่รัน Web Service ของ PHP จะได้ URL

http://localhost/nusoap/WebServiceServer.php


PHP Create Web Service and Call by ASP.NET (.NET Framework)

ในตัวอย่างจะเห็น URL ของ Web Service ประกอบด้วย Method ชื่อว่า HellowWorld ให้คลิกที่ WSDL เพื่อดูรูปแบบของ XML ที่อยู่ใน Format ของ WSDL ซึ่งตอนที่ Client เรียกใช้งาน Web Service จะเรียกด้วย URL นี้

http://localhost/nusoap/WebServiceServer.php?wsdl


PHP Create Web Service and Call by ASP.NET (.NET Framework)

รูปตัวอย่าง WSDL ใน Format ของ XML ซึ่งจะบ่งบอกรายละเอียดของ Web Service และช่องทางที่ Client จะสามารถเรียกใช้งานได้

สำหรับการสร้าง Web Service ด้วย NuSoap จะง่าย ๆ และสั้นเพียงเท่านี้ หากต้องการใช้ PHP เรียก Web Service ที่สร้างด้วย PHP สามารถอ่านได้ที่บทความนี้

PHP สร้าง Web Service และเรียก Web Service ที่สร้างด้วย PHP







เรียกใช้งาน Web Service ของ PHP ด้วย ASP.NET

ให้สร้าง Project ที่เป็น ASP.NET Web Application หรือ ASP.NET WebSite

PHP Create Web Service and Call by ASP.NET (.NET Framework)

ออกแบบ Screen และ Layout ดังรูป

PHP Create Web Service and Call by ASP.NET (.NET Framework)

คลิกขวาที่ Project ของ ASP.NET และเลือก Add Web Reference

PHP Create Web Service and Call by ASP.NET (.NET Framework)

กรอก URL ของ PHP Web Service ที่ได้จากนั้นตอนในส่วนของการสร้าง PHP Web Service

http://localhost/nusoap/WebServiceServer.php?wsdl


คลิกที่ Go และเมื่อโหลด Web Service เสร็จก็จะแสดงชื่อ Service Name และ Method ของ PHP Web Service ให้กำหนด Web reference name : ที่จะใช้เรียกใน Class ดังรูป

PHP Create Web Service and Call by ASP.NET (.NET Framework)

แสดง Web Service ที่ถูก Add Reference เข้ามาใน Project และในกรณีที่ Web Service ฝั่ง Server มีการแก้ไขหรือ Update เราจะต้องตามมา Update ที่ Project ของ ASP.NET ด้วย ด้วยการคลิกควาที่ Reference และเลือก Update.....

PHP Create Web Service and Call by ASP.NET (.NET Framework)

กลับมาที่ Web Form ของ .aspx ให้สร้าง Event ของ Button และใช้คำสั่ง New Class ของ Web Service ดังรูป ซึ่งเมื่อเรียกใช้ Method ของ PHP Web Service จะแสดง Argement หรือ Parameter ที่จะต้องส่งไปยัง PHP Web Service ที่อยู่ฝั่ง Server ดังรูป

Code เต็ม ๆ

- สำหรับภาษา VB.NET

Partial Public Class _Default
    Inherits System.Web.UI.Page

    Protected Sub btnCall_Click(ByVal sender As Object, ByVal e As EventArgs) Handles btnCall.Click
        Dim myHW As New myHelloWorld.HelloWorld
        Me.lblResponse.Text = myHW.CallHelloWorld(Me.txtName.Text, Me.txtEmail.Text).ToString()
    End Sub

End Class



- สำหรับภาษา C#

using System;
using System.Collections;
using System.Collections.Generic;
using System.Data;
using System.Diagnostics;
public partial class _Default : System.Web.UI.Page
{

	protected void btnCall_Click(object sender, EventArgs e)
	{
		myHelloWorld.HelloWorld myHW = new myHelloWorld.HelloWorld();
		this.lblResponse.Text = myHW.CallHelloWorld(this.txtName.Text, this.txtEmail.Text).ToString();
	}

}


ทดสอบการเรียก Web Service

PHP Create Web Service and Call by ASP.NET (.NET Framework)

เมื่อกรอก Name และ Email ดังรูป ASP.NET จะมีการเรียก Web Service ที่อยู่ในฝั่งของ PHP Web Service และ PHP ที่บริการ Web Service อยู่จะทำการ return ค่ากลับมาดังรูป

สำหรับการเรียกใช้งาน Web Service ของ PHP ด้วย ASP.NET ที่ง่าย ๆ และจบเพียงเท่านี้ สามารถดาวน์โหลดได้จากส่วนล่างของบทความ





เรียกใช้งาน Web Service ของ PHP ด้วย Windows Form Application (.NET)

สร้าง Project ด้วย Windows Form Application ใน Visual Studio หรือ Tools อื่น ๆ

PHP Create Web Service and Call by ASP.NET (.NET Framework)

สร้างและออกแบบ Form สำหรับเรียกใช้งาน Web Service ดังรูป

PHP Create Web Service and Call by ASP.NET (.NET Framework)

คลิกวาที่ Project เลือก Add Service Reference

PHP Create Web Service and Call by ASP.NET (.NET Framework)

เราจะทำการเรียกแบบ Web Reference ในที่นี้ให้เลือก Advanced....

PHP Create Web Service and Call by ASP.NET (.NET Framework)

ให้คลิกที่ Add Web Reference ดังรูปประกอบ

PHP Create Web Service and Call by ASP.NET (.NET Framework)

กรอก URL ของ PHP Web Service ที่ได้จากนั้นตอนในส่วนของการสร้าง PHP Web Service

http://localhost/nusoap/WebServiceServer.php?wsdl


คลิกที่ Go และเมื่อโหลด Web Service เสร็จก็จะแสดงชื่อ Service Name และ Method ของ PHP Web Service ให้กำหนด Web reference name : ที่จะใช้เรียกใน Class ดังรูป

กลับมาที่ Windows Form ให้สร้าง Event ที่ปุ่ม Button และกำหนดคำสั่งดังต่อไปนี้

- สำหรับภาษา VB.NET

Public Class Form1

    Private Sub btnCall_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnCall.Click
        Dim myClsHW As New myHelloWorld.HelloWorld
        Me.lblResponse.Text = myClsHW.CallHelloWorld(Me.txtName.Text, Me.txtEmail.Text).ToString()
    End Sub

End Class


- สำหรับ C#

using System;
using System.Collections;
using System.Collections.Generic;
using System.Data;
using System.Diagnostics;
public class Form1
{

	private void btnCall_Click(System.Object sender, System.EventArgs e)
	{
		myHelloWorld.HelloWorld myClsHW = new myHelloWorld.HelloWorld();
		this.lblResponse.Text = myClsHW.CallHelloWorld(this.txtName.Text, this.txtEmail.Text).ToString();
	}

}


ทดสอบการรันโปรแกรม

PHP Create Web Service and Call by ASP.NET (.NET Framework)


สรุป
บทความนี้เป็นเพียงพื้นฐานการสื่อสารระว่าง Web Service ที่ให้บริการ กับ Client ที่ทำการ Call ตัว Web Service แบบง่าย ๆ เพราะทางผู้เขียนบทความเองก็ยังเป็นมือใหม่กับ Web Service อยู่มาก ได้อาศัยการอ่านจากเว็บทั้งในแะนอกประเทศมาเรียบเรียงและเขียนบทความให้เข้าใจง่าย และ ตัวอย่างการดัดแปลงให้สามารถนำไปใช้งานได้หลากหลาย ซึ่งถ้าได้อ่านบทความนี้จบหรือทำตามจนเข้าใจ เราจะได้เห็นแนวทางการที่จะนำ Web Service ไปใช้งานในด้านการเขียนโปรแกรมได้อย่างดี

ผิดพลาดประการใดขออภัยมา ณ ที่นี้ด้วยครับ


Download Code !!

บทความอื่น ๆ ที่เกี่ยวข้อง
Go to : PHP Create - Call Web Service สร้างและเรียกเว็บเซอร์วิส ด้วย PHP (NuSoap and Soap)


   
Share





  By : TC Admin
  Article : บทความเป็นการเขียนโดยสมาชิก หากมีปัญหาเรื่องลิขสิทธิ์ กรุณาแจ้งให้ทาง webmaster ทราบด้วยครับ
  Score Rating :
  Create Date : 2012-05-09
  Download : No files
Sponsored Links
 

Sponsored Links
การติดตั้ง Netbeans สำหรับเขียนโปรแกรม Java (Install Netbeans IDE for Java)
การติดตั้ง Netbeans สำหรับเขียนโปรแกรม Java (Install Netbeans IDE for Java)
Netbeans อ่านว่า "เน็ตบีนส์" เป็น Tools IDE อีกตัวหนึ่งที่ได้รับความนิยมที่ใช้ในการเขียนโปรแกรมภาษาต่าง ๆ รวมทั้งภาษา Java โดย Netbeans เป็น Open Source ฟรี ที่สามารถทำการพัฒนา Plugin หรือ Add-on
Rating : Update : 2013-09-18 08:43:34
iOS/iPhone Passing JSON (NSJSONSerialization) Between View
iOS/iPhone Passing JSON (NSJSONSerialization) Between View
การใช้งาน JSON บน iOS นั้นจะมีความจำเป็นมากในกรณีที่ต้องการเขียน Application ติดต่อกับ Interface กับโปรแกรมอื่น ๆ เช่น การรับส่งข้อมูลระหว่าง Web Server ที่มีการใช้ JSON เป็นตัวกลาง
Rating : Update : 2014-05-03 18:09:36
Android Enabled/Disabled Fix Portrait or Landscape Orientation Mode
Android Enabled/Disabled Fix Portrait or Landscape Orientation Mode
ในการที่เราจะ Fix (Enabled/Disabled) ค่าให้กับ App ที่เราเขียนใน Android Orientation Modeนั้นรองรับ Mode ใดบ้าง เช่น Portrait (แนวตั้ง) และ Landscape (แนวนอน) สามารถกำหนดได้ที่ไฟล์ AndroidManifest.xml
Rating : Update : 2013-09-09 09:49:44
เรียกใช้งาน string.xml บน android ไฟล์จัดเก็บค่า string / array ตัวแปรในรูปแบบต่าง ๆ
เรียกใช้งาน string.xml บน android ไฟล์จัดเก็บค่า string / array ตัวแปรในรูปแบบต่าง ๆ
ในการพัฒนาโปรแกรม Android เราจะพบเห็นไฟล์ที่มีชื่อว่า string.xml อยู่เป็นประจำ สำหรับไฟล์ string.xml ถูกจัดเก็บไว้ใน path ที่มีชื่อว่า /res/values/string.xml
Rating : Update : 2012-08-14 14:38:12
Zpanel Control Panel (Free Web Hosting Control Panel)
Zpanel Control Panel (Free Web Hosting Control Panel)
สำหรับ Zpanel เป็น Control Panel บน Web Hosting ที่สามารถใช้งานได้ฟรี มาพร้อมกับ Package ที่รวบรวม Apache,MySQL และ PHP ที่สามารถใช้งานได้ทันที โดยที่เราไม่ต้องมานั่งติดตั้งโปรแกรมเหล่านี้เอง
Rating : Update : 2014-02-23 10:34:53
Windows Store App and Retrieve Data from PHP & MySQL (C#)
Windows Store App and Retrieve Data from PHP & MySQL (C#)
บทความนี้จะเป็นการประยุกต์การเขียน Windows Store Apps เชื่อมต่อกับ HTTP ในรูปแบบของ URL ทำงานบน Web Server ในฝั่งของ Web Server ที่ถูกเรียกผ่าน URL จะถูกทำงานด้วยภาษา PHP กับ MySQL Database โดยหน้าที่ของ PHP
Rating : Update : 2015-01-19 14:08:27


ThaiCreate.Com Forum
Comunity Forum Free Web Script
Jobs Freelance Free Uploads
Free Web Hosting Free Tools

สอน PHP ผ่าน Youtube ฟรี
สอน Android การเขียนโปรแกรม Android
สอน Windows Phone การเขียนโปรแกรม Windows Phone 7 และ 8
สอน iOS การเขียนโปรแกรม iPhone, iPad
สอน Java การเขียนโปรแกรม ภาษา Java
สอน Java GUI การเขียนโปรแกรม ภาษา Java GUI
สอน JSP การเขียนโปรแกรม ภาษา Java
สอน Struts การเขียนโปรแกรม Java Struts Framework
สอน jQuery การเขียนโปรแกรม ภาษา jQuery
สอน Yii  Framework การเขียนโปรแกรม ภาษา PHP กับ Yii
สอน .Net การเขียนโปรแกรม ภาษา .Net
Free Tutorial
สอน Entity Framework
สอน Android
สอน Java เขียน Java
Java GUI Swing
สอน JSP (Web App)
iOS (iPhone,iPad)
Windows Phone
Windows Azure
Windows Store
Laravel Framework
Yii PHP Framework
สอน jQuery
สอน jQuery กับ Ajax
สอน PHP OOP (Vdo)
Ajax Tutorials
SQL Tutorials
สอน SQL (Part 2)
JavaScript Tutorial
Javascript Tips
Microsoft Access
MySQL Tutorials
-- Stored Procedure
MariaDB Database
SQL Server Tutorial
SQL Server 2005
SQL Server 2008
SQL Server 2012
-- Stored Procedure
Oracle Database
-- Stored Procedure
SVN (Subversion)
แนวทางการทำ SEO
ปรับแต่งเว็บให้โหลดเร็ว

สุดยอด Source Code V2.0
 

แจ้งชำระเงิน/โอนเงิน
 

Hit Link
   




Acc : thaicreate@hotmail.com






Load balance : Server 03
ThaiCreate.Com Logo
© www.ThaiCreate.Com. 2003-2015 All Rights Reserved.
for Contact Us : [Conditions Privacy Statement] ติดต่อโฆษณา 081-987-6107 , 084-715-5121 อัตราราคา คลิกที่นี่

Back to Top