Как вы перенаправляете на всплывающее окно, используя php, а не javascript?

0

Я нахожу множество способов сделать это в javascript, но мне нужно вызвать smack в середине php-скрипта.

<form action="" method="POST" target='popup' onsubmit="window.open('','popup','width=700,height=400,left=200,top=200,scrollbars=1')">
        Send a message  : <input type="text" name="twitmessage"><br>
        <input type="checkbox" name="twitter" value="My Posting Text">Would you like to send to Twitter?<br>
        <input type="checkbox" name="facebook" value="Stuff to Post to facebook">Would you like to post to Facebook?<br>
        <input type="submit" name="submit_cycle" value="Submit">
</form>
<?php
session_start();
// store session data
$_SESSION['twitmessage'] = $_POST['twitmessage'];

if(isset($_POST['submit_cycle'])) {
        if($_POST['twitter']){
                header("location: ../index.php?p=members");
        }
        if($_POST['facebook']){
                header("location: ../index.php?p=paybill");
        }else{
                echo "Something bad happened";
        }
}
?>
  • 2
    что означает «перенаправление на всплывающее окно»?
  • 0
    нужно гораздо лучшее объяснение вашей проблемы ... не имеет смысла в настоящее время
Теги:
twitter

2 ответа

0
Лучший ответ

Другой подход. Возможно, я не понял ваше намерение.

Чтобы открыть диалог twitter в другом окне, вы можете просто добавить target=_blank в свою форму.

Остальное должно быть таким же, как указано выше.

Чтобы создать окно размера, создайте новое именованное окно. Затем масштабируйте его и установите для цели формы имя окна.

  • 0
    Я отредактировал код и выше почти идеально. есть мысли о том, как получить 2 (одно, два) всплывающих окна, если кто-то выберет 2 варианта? Я могу получить один очень хорошо, второй пни меня.
  • 0
    привязать к нему javascript и зациклить опции, вызывая window.open для каждой опции? хранить экземпляры окна в переменных, чтобы иметь к ним доступ
0

Вы не можете.

Открытие окна - это операция на стороне клиента, которая не может быть выполнена с использованием PHP. Это в принципе.

Вы можете создать JS, который откроет новое окно на стороне клиента.

<script>
    window.open('<?php echo htmlentities($url); ?>')
</script>
  • 0
    Спасибо. Это кажется лучшим и единственным способом.
  • 0
    Просто помните, что использование window.open откроет «классическое» всплывающее окно, которое по умолчанию часто блокируется всеми современными браузерами, в то время как наложение с использованием javascript и выполнение AJAX-запроса на стороне сервера не будет

Ещё вопросы

Сообщество Overcoder
Наверх
Меню