2012-04-19 2 views
2

) 그래서 socket.io에서 자습서를 찍는 데 하루를 보냈으며 압도적으로 적은 양의 자습서로 인해 완전히 빠져 들었습니다. PHP 페이지에 변수를 보내고 정보를 검색/표시하려면 socket.io를 사용하고 싶습니다.socket.io를 사용하여 정보를 보내고받는 것 (

슈퍼 간단한 app.js (socket.io 서버)

var io = require('socket.io').listen(8000); 

io.sockets.on('connection', function (socket) { 
    socket.on('message', function() { }); 
    socket.on('disconnect', function() { }); 
}); 

슈퍼 간단한 socket.io 인덱스 페이지.

<script> 
    var socket = io.connect('http://localhost/'); 
    socket.on('connect', function() { 
    socket.send('hi'); 

    socket.on('message', function (msg) { 
     // my msg 
    }); 
    }); 
</script> 

나는 정보를 보낼 PHP 파일 ...

<?php 
$hostname = 'localhost'; 
$username = 'root'; 
$password = 'root'; 
$database = 'database'; 
try { 
    $dbh = new PDO("mysql:host=$hostname;dbname=$database", $username, $password); 
    $dbh->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION); 
    $stmt = $dbh->prepare("SELECT * FROM comments WHERE pid = :pid"); 
    $pid = $_GET['pid']; 
    $stmt->bindParam(':pid', $pid, PDO::PARAM_STR); 
    $stmt->execute(); 
    $result = $stmt->fetchAll(); 
    } 
catch(PDOException $e) 
    { 
    echo $e->getMessage(); 
    } 
    $stmt->execute(); 
    echo $stmt->rowCount(); 
$dbh = null; 
?> 

그래서 기본적으로 내가 원하는 모두가 PHP 페이지에 내 게시물의 ID를 보낼 수있는 웹 소켓을 사용하고 카운트를 검색하여 자동으로 카운트를 업데이트합니다. 그러나 나는 이것을 성취 할 방법을 찾을 수 없다.

여기서 손을 빌려줄 수있는 node.js/socket.io에 익숙한 사람이라면 누구입니까?

답변

0

Node.js와 PHP 서버는 두 개의 독립적 인 서버입니다. PHP 서버에서 HTML 문서를 가져 와서 socket.io를 사용하여 클라이언트로 다시 보내면됩니다. 또는 웹 소켓의 입력에 따라 페이지를 리디렉션 할 수 있습니다.

일부 데이터를 클라이언트 (HTML 페이지가 아닌 PHP 페이지)로 보내려면 socket.io의 용도입니다. 사람들이 투표를하면, (1)은 계산 노드 서버로 데이터를 전송

당신이 이런 식으로이 작업을 수행 할 수 다음 socket.io를 사용하여 업데이트 된 투표 수를 브로드 캐스트 (당신이 PHP를 호출하고 저장할 수 있습니다 될 수있다 개표도)은, 여기 는

http = require('http'); 
var connection = http.createClient(8080, 'yourPhpServer/page'), 

당신은 그래서 자동으로 얻을 수 here

+0

에서 더 많은 아이디어를 얻을 수 있습니다 .. 노드 서버를 withing에) 당신의 PHP 서버 (웹 페이지를 호출하는 방법입니다 socket.io의 투표 수는? 나는 투표 수를 얻기 위해 롱 폴링 대신에 socket.io를 사용하라는 말을 정기적으로 받았다. – Ian

+0

아니 .. 너 내가 틀렸어. 자세한 내용을 추가 할 것입니다 –

+0

감사합니다, 나는이 시간을 낭비하고 있습니다. – Ian

관련 문제