1
html5ホワイトボードを作成しようとしています。ホワイトボードでは、コンテンツはsvgformat(テキストのみ)にあり、svgcanavas jsライブラリを使用しています。このJquery&phpとテキストを共有
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人に限ります。同期を行うより良い方法はありますか? 変更された行だけを検出して更新する方法はありますか?となります。これは、ファイルサイズが増加し続けるため、処理に時間がかかるためです。
だから私が知りたい:
- は、これは私がそれを行うことができます最善の方法ですか?
- 変更された行だけをsvgで検出して更新する方法はありますか?
- これは、20人の同じファイルにアクセスしているときに機能しますか?
svg.tmp
?
私はこれで何かエラーを見ることができません。私もあなたに助言をしますが、jsonを使用してください – kritya
私の質問を更新しました。今私は誰も答えた理由を得た:)私は明確ではなかった。 – esafwan
私はフォークできますか? – CAM