выполнить код php при нажатии на кнопку
Как вызвать php-скрипт / функцию при нажатии кнопки html
Прежде чем кто-то пойдет на меня или отметит это, я просмотрел по всему Интернету, чтобы узнать, как это сделать (включая тот же вопрос о stackoverflow). Я новичок, и мне очень сложно изучать новые концепции, поэтому, пожалуйста, будьте спокойны.
То, что я хочу сделать, это вызвать скрипт / функцию php при нажатии кнопки. У меня это работает в WAMP, если это помогает. Вот мой код:
the_script.php имеет это в нем:
Почему это не работает? Я слышал, что кнопка является клиентской стороной и т. Д., А PHP – серверной, что означает, что вы не можете связать эти два. Я знаю, что вы должны использовать AJAX для выполнения этой работы, однако я совершенно не знаю, как это сделать. Я пробовал использовать его в Google и т. Д., Но ничего не могу найти. Я знаю, как использовать AJAX и вызывать события с ним, однако я до сих пор не знаю, как заставить его вызывать скрипт PHP.
Можете ли вы, пожалуйста, сделать свои ответы максимально ясными и простыми, я новичок в этом
По какой-то причине, где бы я ни пошел, каждый код отличается. То, как меня учили, AJAX выглядит совершенно по-другому. Можете ли вы написать это так, чтобы я мог понять? Спасибо, вот пример:
Конечно, AJAX – это решение,
Для выполнения запроса AJAX (для удобства мы можем использовать библиотеку jQuery).
Шаг 1.
Включите библиотеку jQuery на свою веб-страницу
а. вы можете загрузить библиотеку jQuery с jquery.com и сохранить ее локально.
б. или просто вставьте следующий код,
Шаг 2.
Вызов функции javascript при нажатии кнопки
Шаг 3.
он сделает запрос AJAX к test.php, когда вы нажимаете кнопку и предупреждаете ответ.
Например, ваш код в test.php есть,
то он будет предупреждать «привет», когда вы нажимаете кнопку.
Вы также можете использовать
Надеюсь, это поможет кому-то
Заметки
Измените the_script.php следующим образом.
PHP: выполняется только сервером и отвечает на запросы, такие как щелчок по ссылке (GET) или отправка формы (POST). HTML и Javascript: работает только в браузере кого-то (кроме NodeJS) Я предполагаю, что ваш файл выглядит примерно так:
Если вы не хотите обновлять страницу, вы можете сделать запрос на PHP без обновления с помощью метода Asynchronous Javascript и XML (AJAX).
Запустить функцию PHP на html нажмите кнопку
Мне нужно запустить некоторую функцию PHP при нажатии кнопки. Я знаю, что это не должно использоваться php, а js должен это делать, но что мои функции делают при сборе данных с сервера, когда пользователь спрашивает его. В частности, он получает некоторые пользовательские данные и записывает их в файл, и пользователь должен решить, какие данные будут собраны.
Как я могу это сделать? Я видел почту запустить PHP файл на кнопку нажмите но я все еще не уверен, как использовать его.
Я учусь, так что пожалуйста, не будьте слишком суровы
Я пробовал onclick() и всякие вещи, но это не привело ни к чему полезному
6 ответов
php-файл запускается всякий раз,когда вы обращаетесь к нему через HTTP-запрос, будь то GET, POST, PUT.
вы можете использовать JQuery / Ajax для отправки запроса нажатием кнопки или даже просто изменить URL-адрес браузера для перехода на php-адрес.
в зависимости от данных, отправленных в POST/GET, вы можете иметь оператор switch, выполняющий другую функцию.
указание функции через GET
вы можете использовать этот код: как вызовите функцию PHP из строки, хранящейся в переменной вместе с оператором switch для автоматического вызова соответствующей функции в зависимости от отправленных данных.
Итак, на стороне PHP вы можете иметь что-то вроде этого:
и вы можете сделать самый простой запрос get, используя адресную строку в качестве тестирования:
передача данных
GET запрос через В jQuery
отправить запрос через JQuery
получить запрос через Javascript location
Запустите функцию PHP на кнопке html
Мне нужно запустить некоторую функцию PHP при нажатии кнопки. Я знаю, что это не должно быть использование php, скорее js должен это сделать, но то, что мои функции делают при сборе данных с сервера, когда пользователь спрашивает об этом. В частности, он получает некоторые пользовательские данные и записывает их в файл, и пользователь должен решить, какие данные будут собраны.
Как я могу это сделать? Я видел сообщение Запустить файл PHP на кнопке Click, но я все еще не уверен, как его использовать.
Я учусь, поэтому, пожалуйста, не будьте слишком суровы.
Я пробовал onclick() и всевозможные вещи, но это не привело к чему-либо полезному
ОТВЕТЫ
Ответ 1
Файл php запускается всякий раз, когда вы обращаетесь к нему через HTTP-запрос: GET, POST, PUT.
Вы можете использовать JQuery/Ajax для отправки запроса нажатием кнопки или даже просто изменить URL-адрес браузера, чтобы перейти к php-адресу.
В зависимости от данных, отправленных в POST/GET, вы можете иметь оператор switch, выполняющий другую функцию.
Задание функции через GET
Итак, на стороне PHP вы можете иметь что-то вроде этого:
и вы можете сделать простейший запрос получения с помощью адресной строки в качестве тестирования:
Отправка данных
Запрос GET через JQuery
Запрос POST через JQuery
Запрос GET через расположение Javascript
Чтение данных (PHP)
См. PHP Turotial для чтения сообщения и получения: http://www.tizag.com/phpT/postget.php
Полезные ссылки
Ответ 2
Если вы хотите сделать запрос на сервер, вы должны использовать AJAX, чтобы вы могли отправлять свои параметры на сервер, и он может запускать любые php, которые вы хотите, с этими параметрами.
Пример с чистым javascript:
У вас может быть один файл с функциями, называемыми например functions.php
some.php
Ответ 3
Используйте ajax, простой пример,
HTML
Javascript
Ответ 4
Ответ 5
Используйте AJAX-запрос в вашем файле PHP, а затем отобразите результат на своей странице без перезагрузки.
http://api.jquery.com/load/ Это простое решение, если вам не нужны данные POST.
Ответ 6
Это зависит от того, какую функцию вы хотите запустить. Если вам нужно что-то сделать на стороне сервера, например, запросить базу данных или установить что-то в сеансе или что-то, что не может быть сделано на стороне клиента, вам нужен AJAX, иначе вы можете сделать это на стороне клиента с помощью JavaScript. Не делайте работу сервера, когда вы можете делать то, что вам нужно делать на стороне клиента.
Как вызвать функцию PHP одним нажатием кнопки
Я создал страницу под названием functioncalling.php, которая содержит две кнопки, Отправить и Вставить. Как новичок в PHP, я хочу проверить, какая функция выполняется при нажатии кнопки. Я хочу, чтобы вывод пришел на той же странице. Поэтому я создал две функции, по одной для каждой кнопки. Исходный код для functioncalling.php выглядит следующим образом:
Проблема здесь в том, что я не получаю вывод после нажатия любой из кнопок.
Где именно я иду не так?
Нажатие кнопок осуществляется на стороне клиента, тогда как PHP выполняется на стороне сервера, но вы можете добиться этого с помощью Ajax:
В вашем PHP файле:
Да, вам нужен Ajax здесь. Пожалуйста, обратитесь к приведенному ниже коду для более подробной информации.
Измените свою разметку, как это
JQuery:
В ajax.php
Вы должны сделать кнопку вызова той же страницы и в разделе PHP проверить, была ли нажата кнопка:
HTML:
Вы не можете вызывать функции PHP, такие как нажатие кнопки в HTML. Потому что HTML находится на стороне клиента, а PHP работает на стороне сервера.
Либо вам нужно использовать Ajax, либо сделать это как в фрагменте кода ниже.
Вы должны опубликовать данные своей формы, а затем проверить наличие соответствующей кнопки, на которую нажали.
Чтобы использовать functioncalling.php в качестве внешнего файла, вы должны как-то включить его в ваш HTML-документ.
Вы можете написать так в JavaScript или JQuery Ajax и вызвать файл
Атрибут onclick в HTML вызывает функции JavaScript, а не функции PHP.
Используйте рекурсивный вызов, когда действие формы вызывает сам вызов. Затем добавьте PHP-код в ту же форму, чтобы поймать его. В foo.php ваша форма вызовет foo.php на post
Я застрял в этом, и я решил это с помощью скрытого поля:
В value вы можете добавить все, что вы хотите добавить.
Вот пример, который вы могли бы использовать:
Возможно ли выполнить php-код по клику на элемент?
Есть такая конструкция:
Подскажите, как подцепить AJAX-функцию на «Клик», чтобы «TEST» не подгружалось до нажатия.
Подскажите, как подцепить AJAX-функцию на «Клик», чтобы «TEST» не подгружалось до нажатия.
ThunderCat, да, я не знаю, как это сделать(
Вообще, таких вызовов много, поэтому не хочется создавать кучу файлов, но если без этого не решить проблему, то так тому и быть, будет 40 мелких php-файлов)
Что-то вроде этого? К сожалению, у меня такой вариант не работает(
Вообще, таких вызовов много, поэтому не хочется создавать кучу файлов, но если без этого не решить проблему, то так тому и быть, будет 40 мелких php-файлов)
все можно сделать одним скриптом, формируя ответ на основе отсылаемых данных.
Хинт: Данные можно получать не из формы, а допустим из дата атрибута элемента.