私は、フラッシュアプリケーションを起動する新しいブラウザウィンドウを開くためにhtml/phpとjavascriptの組み合わせを使用します。これは正常に動作しますが、最近のほとんどのユーザーはウィンドウのポップアップを期待せず、ポップアップを許可することを忘れることがよくあります。だから私は良い解決策は、Jqueryのダイアログ:http://jqueryui.com/demos/dialog/#defaultを使用していると思った。jqueryダイアログ変換
このFlashアプリケーションには多くのことが渡される必要があるため、jqueryダイアログでこれを実装する方法について、ここでいくつかのガイダンスを探しています。したがって、これを行う方法についてのラウンド。私は最初のものの束とHTMLでボタンを作成
は、DBから引き出さ:
<button id="monitor" onClick='startmonitor("<?php echo htmlentities($_SERVER['REQUEST_URI']); ?>","<?php echo $result_cameras[$i]["camera_hash"]; ?>","<?php echo $result_cameras[$i]["camera_name"]; ?>","<?php echo $camera_quality_flash; ?>")'>Monitor</button>
それから私は、ボタンから渡されたパラメータを使用して、JavaScriptでフォームを作成します。
function startmonitor(to, camerahash, cameraname, cameraflashquality)
{
var myForm = document.createElement("form");
myForm.method = "post";
myForm.action = to;
var myInput = document.createElement("input");
myInput.name="video";
myInput.value="Monitor";
myForm.appendChild(myInput);
myInput = document.createElement("input");
myInput.name="camera_hash";
myInput.value=camerahash;
myForm.appendChild(myInput);
myInput = document.createElement("input");
myInput.name="camera_name";
myInput.value=cameraname;
myForm.appendChild(myInput);
myInput = document.createElement("input");
myInput.name="camera_quality_flash";
myInput.value=cameraflashquality;
myForm.appendChild(myInput);
document.body.appendChild(myForm);
myForm.submit();
document.body.removeChild(myForm);
}
そして最後に、さらにPHPでこれを処理し、フラッシュアプリを起動するためにJavaScriptを呼び出します。
if (isset($_POST['video'])) {
//get user hash for monitor app
$query_user_hash = "SELECT id_hash FROM #__users WHERE user_id=".$user->id;
$db->setQuery($query_user_hash);
$id_hash = $db->loadResult();
$camera_hash = check_input($_POST['camera_hash']);
$camera_name = check_input($_POST['camera_name']);
$camera_quality_flash = check_input($_POST['camera_quality_flash']);
echo '<script type="text/javascript">
window.open("flashapp/app.php?user='.$id_hash.'&camera='.$camera_hash.'&name='.$camera_name.'&quality='.$camera_quality_flash.'", "Flash_monitor", "location=0,menubar=0,status=0,scrollbars=0,width=360,height=405")
</script>';
}
ありませんここからどこから始めるべきか確かめてください。 window.open
のところでjqueryダイアログを使用しようとしていますか?どのように私は同じパラメータをどのように渡すかわからないのですか?または、これに取り組むための良い方法があります。
あなたの権利は、私が唯一のユーザーid_hashを必要とし、それは入手しやすいです。なぜ私がこのルートを降りたのかわからない。これは非常にエレガントなようです。ただし、クォーテーション(「モニター」ボタンで確認できます)のために失敗します。引用するこの方法について確かですか?私は前にこのように見たことがない。私はこれで遊ぶつもりです。 – Tom
上に編集したコードを試してください –
上記のコードはうまくいくはずです。 @NateBolam:2番目の '