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

Registered : 105,642

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
#share บันทึกบันทึก: คำสั่งที่ใช้จัดการ package ใน alpine linux
#share บันทึกบันทึก: คำสั่งที่ใช้จัดการ package ใน alpine linux
#share บันทึกบันทึก: คำสั่งที่ใช้จัดการ package ใน alpine linux
Rating : Update : 2018-01-16 09:21:40
Windows Form กับ DateTimePicker วิธีการ Insert ข้อมูล DateTime ลงใน Database (VB.Net,C#)
Windows Form กับ DateTimePicker วิธีการ Insert ข้อมูล DateTime ลงใน Database (VB.Net,C#)
วิธีการ Insert ข้อมูลจาก DateTimePicker บน Windows Form ลงใน Database เหตุผลที่ต้องเขียนบทความนี้เพราะยังใช้กันผิดๆ ถูกๆ ไม่ถูกต้องตาม Format ของ DateTime
Rating : Update : 2017-04-18 09:27:17
การใช้งาน log4net วิธีการจัดเก็บ Log ไฟล์ต่างๆ บน .Net Application (VB.Net, C#)
การใช้งาน log4net วิธีการจัดเก็บ Log ไฟล์ต่างๆ บน .Net Application (VB.Net, C#)
บทความนี้เป็นการใช้ Library ของ log4net ซึ่งเป็น Lib ไว้สำหรับการจัดการกับ Log ต่างๆ บน Application ข้อดีของมันคือ สามารถกำหนด Level หรือระดับของ Log ที่จัดเก็บได้
Rating : Update : 2017-03-24 17:22:25
การสร้าง User บน SQL Server Database และการ Grant กำหนดสิทธิ์ เช่น การ SELECT ได้อย่างเดียว
การสร้าง User บน SQL Server Database และการ Grant กำหนดสิทธิ์ เช่น การ SELECT ได้อย่างเดียว
วิธีการจัดการกับ User บน SQL Server เช่นการสร้าง User และการ Grant สิทธิ์ให้กับ User สามารถที่จะ SELECT ได้อย่างเดียว ซึ่งเหมาะใช้สำหรับการจัดการกับ User ที่ต้องการ Access เข้ามาในระบบ Database
Rating : Update : 2017-03-30 17:01:00
Windows Form กับ OpenFileDialog : การเปิด Browse และอัพโหลด Save ไฟล์ (VB.Net,C#)
Windows Form กับ OpenFileDialog : การเปิด Browse และอัพโหลด Save ไฟล์ (VB.Net,C#)
ตัวอย่างการใช้ Windows Form กับ OpenFileDialog เพื่อเปิด Browse และอัพโหลด Save ไฟล์ลงในโฟเดอร์ของ Application
Rating : Update : 2017-03-24 17:36:22
แก้ปัญหาการส่งอีเมลหลังจากอัพเกรดจาก PHP Version 5.4 ไปเป็น 5.6 โดยใช้ New PHPMailer
แก้ปัญหาการส่งอีเมลหลังจากอัพเกรดจาก PHP Version 5.4 ไปเป็น 5.6 โดยใช้ New PHPMailer
สืบเนื่องมาจากก่อนหน้านี้นั้นได้มีการอัพเกรด PHP Version จาก 5.4 มาเป็น 5.6 ซึ่งทำให้มีผลกระทบกับการส่งอีเมลของระบบดังนั้น วันนี้จึงได้มีข้อมูลดีๆมาแบ่งปันกัน ซึ่งดูตามรายละเอียด
Rating : Update : 2018-05-26 15:54:09
jQuery กับ Checkbox เทคนิคเล็กๆ กับการใช้ jquery กับ checkbox แบบง่ายๆ
jQuery กับ Checkbox เทคนิคเล็กๆ กับการใช้ jquery กับ checkbox แบบง่ายๆ
เทคนิคการเขียน jQuery เพื่อใช้งานร่วมกับ Checkbox แบบง่ายๆ เช่น การ Selector , การตรวจสอบค่าของ Checkbox หรือการ Default ค่าต่างๆ
Rating : Update : 2017-03-24 17:35:50
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 02
ThaiCreate.Com Logo
© www.ThaiCreate.Com. 2003-2018 All Rights Reserved.
ไทยครีเอทบริการ จัดทำดูแลแก้ไข Web Application ทุกรูปแบบ (PHP, .Net Application, VB.Net, C#)
for Contact Us : [Conditions Privacy Statement] ติดต่อโฆษณา 081-987-6107 , 08-9968-0655 อัตราราคา คลิกที่นี่