Используйте PHP cURL, чтобы открыть результат в новом окне - PullRequest
1 голос
/ 10 августа 2011

У меня есть форма PHP, которая использует cURL для доступа к стороннему приложению. Я также получил свое подтверждение в форме. В настоящее время, когда вы запускаете форму, она отправляется на $_SERVER['PHP_SELF'] и, если есть проблема, ошибки проверки появляются в верхней части формы. Если проблем нет, переменные отправляются в стороннее приложение, и браузер переводит пользователя в это приложение для продолжения процесса.

Теперь клиент хочет, чтобы эта форма открывалась в новом окне. Я добавил target = _blank к элементу формы, но это приводит к открытию нового окна, даже если форма недействительна (т.е. есть ошибки проверки). Поэтому мне нужно, чтобы форма оставалась там, где она есть, до тех пор, пока она фактически не будет передана в стороннее приложение.

Кто-нибудь знает, существует ли переменная cURL, которая выполняет перенаправление в новое окно? Кажется, я ничего не могу найти в руководстве.

1 Ответ

3 голосов
/ 10 августа 2011

Вы путаете код на стороне сервера и на стороне клиента.

  • cURL равен на стороне сервера .Когда запускается cURL (в PHP), ваша форма уже опубликована, слишком поздно действовать на стороне клиента.
  • Однако Javascript - это клиентский язык сценариев.Вы можете использовать его для проверки формы.

Хорошей практикой в ​​современных веб-приложениях является предварительная проверка формы с использованием Javascript, а затем публикация в сценарии PHP только в том случае, если форма проверена.Если вам нужны функции на стороне сервера для проверки вашей формы, то вы можете опубликовать некоторые данные и запросить информацию с сервера с помощью Ajax .Есть несколько очень хороших библиотек, таких как jQuery , которые делают это безболезненным в настоящее время (даже отправляя всю форму с помощью Ajax, не покидая страницу).PHP скрипт, проверьте форму, затем выведите какой-нибудь тег Javascript, чтобы открыть новое окно, если форма верна.Однако теперь это будет заблокировано любым встроенным в браузер блокировщиком всплывающих окон.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...