Я использую комбинацию html / php и javascript, чтобы открыть новое окно браузера, в котором запускается флэш-приложение.Это работает нормально, но большинство пользователей в наши дни не ожидают всплывающих окон и часто забывают разрешить всплывающие окна.Поэтому я подумал, что хорошим решением может быть использование диалогового окна Jquery: http://jqueryui.com/demos/dialog/#default.
Я ищу здесь несколько советов о том, как реализовать это с помощью диалогового окна jquery, так как этому приложению flash нужно много чего передать.Отсюда и пошаговый способ сделать это.
Сначала я создаю кнопку в html с кучей вещей, извлеченных из БД:
<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 для запуска приложения flash:
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>';
}
Даже не знаете, с чего начать.Я пытаюсь использовать диалог jquery, где я делаю window.open
?В каком случае я не уверен, как передать те же параметры?Или есть лучший способ справиться с этим.