そのため、socket.ioでチュートリアルを受講することに一日を費やしましたが、チュートリアルの数が圧倒的に少ないため、完全に行き詰まっていることに気付きました。PHPページに変数を送信し、情報を取得/表示するために、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;
?>
つまり、基本的に私がやりたいのは、WebSocketを使用して投稿のIDをPHPページに送信し、カウントを取得して、投票時にカウントを自動的に更新することです。しかし、私はこれを達成する方法を見つける(または理解する)ことができません。
ここで私に手を貸してくれるnode.js/socket.ioに精通している人はいますか?