โค้ด PHP Web Socket

PHP Result Center PHP Result Center เป็นหมวด ที่ไว้รวบรวม โปรแกรม Code php Javascript CSS CMS

Moderator: mindphp, ผู้ดูแลกระดาน

touleg
PHP Super Member
PHP Super Member
โพสต์: 480
ลงทะเบียนเมื่อ: 25/01/2010 11:57 pm
ติดต่อ:

Re: โค้ด PHP Web Socket

โพสต์โดย touleg » 27/04/2012 2:56 pm

จากที่ทดลองใช้ในเครื่องได้แต่พอขึ้น server แล้วเปลี่ยน url จะใช้งานไม่ได้กำลังหาวิธีแก้อยู่ครับ

touleg
PHP Super Member
PHP Super Member
โพสต์: 480
ลงทะเบียนเมื่อ: 25/01/2010 11:57 pm
ติดต่อ:

Re: โค้ด PHP Web Socket

โพสต์โดย touleg » 27/04/2012 4:20 pm

mindphp เขียน:ผมลอง ถ้าใช้ server เป็น สองตัวนี้ได้ไม่มีปัญหา เลยครับ
http://www.websocket.org
http://kaazing.com/products/kaazing-websocket-gateway

แต่ทางฝั่ง server ไม่ใช่ php นะครับ เป็น java


ขอขั้นตอนการใช้งานด้วยครับเปิดดูแล้วยังงงว่าเอาไปใช้งานยังไง

ภาพประจำตัวสมาชิก
mindphp
ผู้ดูแลระบบ MindPHP
ผู้ดูแลระบบ MindPHP
โพสต์: 16730
ลงทะเบียนเมื่อ: 22/09/2008 6:18 pm
ติดต่อ:

Re: โค้ด PHP Web Socket

โพสต์โดย mindphp » 27/04/2012 7:32 pm

โหลดตัว server มาลงในเครื่องครับ

ส่วนฝั่ง Client เหมือนกับที่ทำไว้ ครับ
หรือดูจาก demo ก็ได้ครับ
ติดตาม VDO: http://www.youtube.com/c/MindphpVideoman
ติดตาม FB: https://www.facebook.com/pages/MindphpC ... 9517401606
หมวดแชร์ความรู้: viewforum.php?f=29
รับอบรม และพัฒนาระบบ: viewtopic.php?f=6&t=2042

ultradoi
PHP Newbie
PHP Newbie
โพสต์: 3
ลงทะเบียนเมื่อ: 27/04/2012 12:25 pm

Re: โค้ด PHP Web Socket

โพสต์โดย ultradoi » 27/04/2012 8:31 pm

ถ้าจากโค๊ดนี้

<?php
$host = "192.168.1.40";
$port = 1234;

// don't timeout!
set_time_limit(0);

$socket = socket_create(AF_INET, SOCK_STREAM, 0)
or die("Could not create socket\n");

$socket = socket_create(AF_INET, SOCK_DGRAM, 0)
or die("Could not create socket\n");

$result = socket_bind($socket, $host, $port)
or die("Could not bind to socket\n");

$result = socket_listen($socket, 3)
or die("Could not set up socket listener\n");

$spawn = socket_accept($socket)
or die("Could not accept incoming connection\n");

$input = socket_read($spawn, 1024) or die("Could not read input\n");

$output = strrev($input) . "\n";

socket_write($spawn, $output, strlen ($output))
or die("Could not write output\n");

socket_close($spawn);
socket_close($socket);



?>


แต่ว่ารันผ่าน firefox แล้ว
http://localhost/webpage/testsocket.php

ฟ้องว่า :?

Warning: socket_listen() [function.socket-listen]: unable to listen on socket [0]: The attempted operation is not supported for the type of object referenced. in C:\AppServ\www\webPage\testsocket.php on line 17
Could not set up socket listener

* จุดประสงค์ของเราคือ ต้องการเขียน php เป็นฟังก์ชันเปิดพอร์ตไว้ รอการตอบรับจากคอมอีกเครื่องนึง
และตัว php จะถูกรันเมื่อกดปุ๋ม ผ่านทางเว็บที่เขียนโดย HTML อะ

ปล. เค้าคิดว่า เค้าอาจจะเช้าใจตรง host ผิดแน่ๆเลย หรือต้องติดตั้งอะไรผิด ยังไงแนะนำหน่อยคะ :oops:

ภาพประจำตัวสมาชิก
mindphp
ผู้ดูแลระบบ MindPHP
ผู้ดูแลระบบ MindPHP
โพสต์: 16730
ลงทะเบียนเมื่อ: 22/09/2008 6:18 pm
ติดต่อ:

Re: โค้ด PHP Web Socket

โพสต์โดย mindphp » 27/04/2012 8:43 pm

ลองเปลี่ยน IP ดูครับ
ถ้าไม่ได้ AF_INET ลองเปลี่ยน AF_INET6
ติดตาม VDO: http://www.youtube.com/c/MindphpVideoman
ติดตาม FB: https://www.facebook.com/pages/MindphpC ... 9517401606
หมวดแชร์ความรู้: viewforum.php?f=29
รับอบรม และพัฒนาระบบ: viewtopic.php?f=6&t=2042

ultradoi
PHP Newbie
PHP Newbie
โพสต์: 3
ลงทะเบียนเมื่อ: 27/04/2012 12:25 pm

Re: โค้ด PHP Web Socket

โพสต์โดย ultradoi » 27/04/2012 9:13 pm

mindphp เขียน:ลองเปลี่ยน IP ดูครับ
ถ้าไม่ได้ AF_INET ลองเปลี่ยน AF_INET6



IP หมายถึง IP เครื่องเราปะ ? หรือยังไงอะ เรา งง ตรง IP เสียเหลือเกิ๊น :cry:

touleg
PHP Super Member
PHP Super Member
โพสต์: 480
ลงทะเบียนเมื่อ: 25/01/2010 11:57 pm
ติดต่อ:

Re: โค้ด PHP Web Socket

โพสต์โดย touleg » 27/04/2012 11:38 pm

ผมทดลองกับ Shared Hosting ไม่ได้ โดยเฉพาะ java ไม่ได้ติดตั้งไว้ แต่ว่าทดสอบในเครื่องตัวเองได้

ส่วนโค้ดที่ให้ไปก็สามารถใช้ในเครื่องตัวเองได้ พอลง host ก็ใช้ไม่ได้เหมือนกัน

touleg
PHP Super Member
PHP Super Member
โพสต์: 480
ลงทะเบียนเมื่อ: 25/01/2010 11:57 pm
ติดต่อ:

Re: โค้ด PHP Web Socket

โพสต์โดย touleg » 04/04/2013 1:47 pm

ทางเลือกใหม่อีกทางครับ ใช้ nodejs กับ socket.io เป็นโค้ด javascript ทั้งทางฝั่ง Server และ Client

ไม่สามารถใช้ได้กับ Shared Hosting เพราะ Hosting ส่วนมากไม่อนุญาติให้เราเข้าไปติดตั้งโปรแกรมเพิ่ม

สามารถเข้าไปอ่านและ Download มาติดตั้งได้ที่ http://nodejs.org/
สำหรับ socket.io เข้าไปดูวิธีติดตั้งและการใช้งานได้ที่ http://socket.io/#how-to-use

วิธีติดตั้ง สำหรับ Server Linux (ผมลองกับ Centos)
1. Login by root

2. เปิด Teminal พิมพ์คำสั่ง ตามขั้นตอนดังต่อไปนี้

$ wget http://patches.fedorapeople.org/oldnode ... noarch.rpm

$ yum localinstall --nogpgcheck nodejs-stable-release.noarch.rpm

3. เปิดไฟล์ /etc/yum.repos.d/nodejs-stable.repo.
4. ที่ [nodejs-stable] ให้คอมเม้นท์ mirrorlist และเปิด baseurl: และแก้ url ดังนี้

baseurl=http://patches.fedorapeople.org/oldnode/stable/el$releasever/$basearch/

5. [nodejs-stable-source] ให้คอมเม้นท์ mirrorlist และเปิด baseurl: และแก้ url ดังนี้
baseurl=http://patches.fedorapeople.org/oldnode/stable/el$releasever/SRPMS/

6. บันทึก
7. พิมพ์คำสั่ง เพื่อ install ดังนี้

yum install nodejs-compat-symlinks npm

การเรียกใช้งานที่ฝั่ง Server

node server.js

Credit: http://www.itouleg.com


  • Similar Topics
    ตอบกลับ
    แสดง
    โพสต์ล่าสุด

ย้อนกลับไปยัง

ผู้ใช้งานขณะนี้

กำลังดูบอร์ดนี้: 2 และ บุคคลทั่วไป 0 ท่าน