所以我花了一天时间在 socket.io 上学习教程,但由于那里的教程数量极少,我发现自己完全陷入困境。我想使用 socket.io 将变量发送到 PHP 页面并检索/显示信息。
超级简单的 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 的人都可以在这里帮帮我吗?