Форма должна сделать две вещи при отправке - PullRequest
0 голосов
/ 17 апреля 2010

Эй, мне просто интересно, возможно ли, чтобы форма в html делала две вещи при отправке, заставляла действие переходить по URL-адресу как обычно (для поиска), но также запускала команду mysql.

Спасибо!

Ответы [ 3 ]

1 голос
/ 17 апреля 2010

Я думаю, у вас есть несколько вариантов здесь. Если вашей странице требуется включить JavaScript для отправки формы, вы можете сделать синхронный вызов XMLHttpRequest перед отправкой формы. Если вы не знаете, включен ли Javascript в браузере или есть вероятность, что кто-то может его отключить, вам потребуется выполнить два действия на сервере после отправки формы.

1 голос
/ 17 апреля 2010

A Форма не может запустить любой SQL. HTML не имеет ничего общего с базами данных, он не знает о них, не может с ними общаться.

Сценарий на вашем сервере может выполнять запросы SQL, и этот сценарий может быть вызван запросом браузера. Браузер может также отправить данные формы вместе с запросом, если пожелает.

Работает так:

  1. Пользователь отправляет форму
  2. Браузер генерирует запрос и отправляет его по указанному URL
  3. Сервер получает запрос, запускает скрипт, соответствующий URL
  4. Скрипт запрашивает базу данных, что-то делает с полученными данными формы
  5. Скрипт выводит некоторый ответ
  6. Браузер получает ответ (веб-сайт) и отображает его
1 голос
/ 17 апреля 2010

Стоп. Никогда клиент никогда не запускал команду MySQL (или любой базы данных). Они могут многое сделать, чтобы серьезно разрушить целостность вашей базы данных. Ваша страница обработки должна выполнить команду MySQL после проверки ввода.

Однако, чтобы ответить на ваш вопрос, это возможно. Ваша форма после отправки может вызвать функцию Javascript, которая, в свою очередь, выполняет два действия. Но если вы делаете это, вероятно, есть некоторый код, который необходимо реорганизовать.

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