サイトにウェブカメラ「プラグイン」を実装しようとしています。私はたくさん検索して、いくつかのオプションを見つけました:
- jquery webcan プラグイン
- Jpeg cam plugin -jquery webcam (Mackers Mcmackers から)
しかし、スナップショットを取得してサーバーに自動的に保存 (および表示) できるライブの例が見られるのは、 jpeg cam: live exampleだけです。
ダウンロード パックには、イメージをサーバーに保存するための PHP の例が付属しています。
<?php
/* JPEGCam Test Script */
/* Receives JPEG webcam submission and saves to local file. */
/* Make sure your directory has permission to write files as your web server user! */
$filename = date('YmdHis') . '.jpg';
$result = file_put_contents( $filename, file_get_contents('php://input') );
if (!$result) {
print "ERROR: Failed to write data to $filename, check permissions\n";
exit();
}
$url = 'http://' . $_SERVER['HTTP_HOST'] . dirname($_SERVER['REQUEST_URI']) . '/' . $filename;
print "$url\n";
?>
ローカルで実行している場合、画像は保存されません。サーバー上で動作するはずですが、ローカルでは少なくともアップロードテキストとアップロード確認が表示されますが、サーバーではtest.phpを開始しないようです。
jquery の保存オプション (.html) は次のとおりです。
<script language="JavaScript">
webcam.set_hook( 'onComplete', 'my_completion_handler' );
function take_snapshot() {
// take snapshot and upload to server
// document.getElementById('upload_results').innerHTML = '<h1>Uploading...</h1>';
webcam.snap();
}
function my_completion_handler(msg) {
// extract URL out of PHP output
if (msg.match(/(http\:\/\/\S+)/)) {
var image_url = RegExp.$1;
// show JPEG image in page
document.getElementById('upload_results').innerHTML =
'<h1>Upload Successful!</h1>' +
'<h3>JPEG URL: ' + image_url + '</h3>' +
'<img src="' + image_url + '">';
}
else alert("PHP Error: " + msg);
}
</script>
写真を受け取る .php を指す部分 (プラグイン API の一部):
<script language="JavaScript">
webcam.set_api_url( 'test.php' );
webcam.set_quality( 90 ); // JPEG quality (1 - 100)
webcam.set_shutter_sound( false ); // no shutter click sound
webcam.set_stealth( true ); // enable stealth mode
</script>
誰か助けてくれませんか?前もって感謝します!