使用Jquery分享文本php


sharing text with Jquery & php

我正在尝试创建一个html5白板。在白板中,内容是svgformat(就像文本一样),使用svgcanavas js库。我正在更新所有其他加入会议的人的白板内容,就像这样

function change() {
var svg = $('#svgcanvas').html();
//$('body').html(hi);
$.post("php/update.php", { svg: svg } );
}
setInterval("change()",100);

Php是这样的

<?php 
$svg = $_POST['svg'];
$myFile = "svg.tmp";
$fh = fopen($myFile, 'w') or die("can't open file");
$stringData = $svg;
fwrite($fh, $stringData);
fclose($fh);
?>

和客户端js

function get() {
$.get('php/get.php', function(data) {
  $('#svgcanvas').html(data);
});
}
setInterval("get()",100);
php

<?php 
$file = "svg.tmp";
$fh = fopen($file, 'r');
$theData = fread($fh, filesize($file));
echo $theData;
fclose($fh);
?>

一次最多只能有20个人使用这个白板。有没有更好的同步方法。和是否有一种方法来检测只有行已经改变和更新,单独?因为文件大小不断增加,并且需要更长的时间。

所以我想知道:

  1. 这是我能做到的最好的方法吗?
  2. 是否有方法只检测在SVG中更改行并单独更新?
  3. 当20个人访问同一个文件svg.tmp时,此操作是否有效?

1:是的,这是唯一的方法,直到更多的浏览器开始支持HTML5 WebSockets。只是不要太频繁地轮询服务器,大约每5秒就应该很好。
2:不,不完全是。
3:是的,应该是。
希望这对你有帮助!