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

Registered : 104,449

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




 
VPS  250 ҷ͹

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

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
Bookmark.   

  By : TC Admin
  Article : บทความเป็นการเขียนโดยสมาชิก หากมีปัญหาเรื่องลิขสิทธิ์ กรุณาแจ้งให้ทาง webmaster ทราบด้วยครับ
  Score Rating :
  Create Date : 2012-05-09
  Download : No files
Sponsored Links
วิธีแทรก Youtube Videos ลงหน้าเว็บ HTML และ การใช้ BBCode เพื่อรับและแสดงผลหน้าเว็บ
วิธีแทรก Youtube Videos ลงหน้าเว็บ HTML และ การใช้ BBCode เพื่อรับและแสดงผลหน้าเว็บ
บทความนี้จะเป็นวิธีการเอา Youtube ลงในหน้าเว็บ แม้ว่าจะเป็นแค่พื้นฐานที่เราคุ้นเคย แต่เชื่อว่าหลายๆ คนยังเอา Youtube Videos มาลงในหน้าเว็บยังไม่เป็น
Rating : Update : 2017-04-09 23:20:06
ระบบ Login PHP + JQuery แบบ Encrypt 2 ระดับ
ระบบ Login PHP + JQuery แบบ Encrypt 2 ระดับ
บทความแรกก็ขอเป็นระบบ Login ก่อนนะครับ อันนี้เป็น Algorithm ส่วนตัวที่มี ตัวอย่างมาจาก การ Login แบบ hash 2 Step ของ Google ซึ่งจะมีในบทความต่อไปครับ
Rating : Update : 2016-05-25 09:20:43
jQuery กับ Ajax และ MySQL ส่งค่าจาก Form และจัดเก็บลงใน MySQL และการรับ-ส่งด้วย JSON
jQuery กับ Ajax และ MySQL ส่งค่าจาก Form และจัดเก็บลงใน MySQL และการรับ-ส่งด้วย JSON
ตัวอย่างการใช้ jQuery กับ Ajax และ MySQL การรับค่าจาก Input Form และการส่งค่าไปจัดเก็บที่ MySQL Database รวมทั้งวิธีการส่งค่า JSON กลับไปให้ jQuery
Rating : Update : 2017-03-24 17:39:49
การสร้าง Event Scheduler  หรือ Job Schedule บน MySQL/MariaDB ตั้งเวลาทำงาน
การสร้าง Event Scheduler หรือ Job Schedule บน MySQL/MariaDB ตั้งเวลาทำงาน
การเขียน event หรือ job schedule บน mysql และ mariadb เพื่อให้ทำงานตามระยะเวลาที่กำหนด เหมาะสำหรับใช้ในการสร้าง job งงานต่างๆ เช่น backup รายการ clear ข้อมูลต่างๆ
Rating : Update : 2017-03-24 17:35:11
Upload VDO จาก Youtube พร้อมสร้าง Screenshort ด้วย FFmpeg Power by Asp.net core c#
Upload VDO จาก Youtube พร้อมสร้าง Screenshort ด้วย FFmpeg Power by Asp.net core c#
Upload VDO จาก Youtube พร้อมสร้าง Screenshort ด้วย FFmpeg Power by Asp.net core c#
Rating : Update : 2017-07-06 06:26:54
ASP.Net SignalR : ตัวอย่างการรับส่งข้อมูลแบบ Real Time และการจัดเก็บลงใน Database
ASP.Net SignalR : ตัวอย่างการรับส่งข้อมูลแบบ Real Time และการจัดเก็บลงใน Database
ตัวอย่างการเขียน SignalR บน ASP.Net เพื่อรับส่งข้อมูลแบบ Real Time จาก Client ไปยัง Server และจาก Server ไปยัง Client โดยมีการจัดเก็บข้อมูลลงใน Database ด้วย
Rating : Update : 2017-03-18 22:39:29
jQuery กับ Ajax อ่านข้อมูล Json จาก PHP/MySQL และการลูป $.each เพื่อแสดงค่า Json
jQuery กับ Ajax อ่านข้อมูล Json จาก PHP/MySQL และการลูป $.each เพื่อแสดงค่า Json
บทความนี้จะป็นเทคนิคการใช้ jQuery กับ Ajax ในการอ่านค่า Json จาก PHP/MySql Database ซึ่งเป็น Json ที่อยู่ในรูปแบบของ Json Object (Array)
Rating : Update : 2017-04-09 12:52:32
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
สอน jQuery การเขียนโปรแกรม ภาษา jQuery
สอน .Net การเขียนโปรแกรม ภาษา .Net
Free Tutorial
สอน Google Maps Api
สอน Windows Service
สอน 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
VBScript Tutorial
VBScript Validation
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 00
ThaiCreate.Com Logo
© www.ThaiCreate.Com. 2003-2017 All Rights Reserved.
ไทยครีเอทบริการ จัดทำดูแลแก้ไข Web Application ทุกรูปแบบ (PHP, .Net Application, VB.Net, C#)
for Contact Us : [Conditions Privacy Statement] ติดต่อโฆษณา 081-987-6107 , 08-9968-0655 อัตราราคา คลิกที่นี่