#php #function #post
#php #функция #Публикация
Вопрос:
У меня есть некоторые данные, которые я хочу удалить, и я хочу использовать функцию для этого:
<input class="delete_challenge" type="submit" name="delete" value="" />
<input class="delete_defence" type="submit" name="delete" value="" />
$set = new fns_delete();
$delete_challenge = $set->challenge();
$delete_defence = $set->defence();
Как мне использовать эти кнопки для вызова этих функций?
Ответ №1:
Кнопки должны иметь разные названия:
<input type="submit" name="delete_challenge" value="" />
<input type="submit" name="delete_defence" value="" />
…
$set = new fns_delete;
if (isset($_POST['delete_challenge'])) {
$delete_challenge = $set->challenge();
}
if (isset($_POST['delete_defence'])) {
$delete_defence = $set->defence();
}
Однако будьте осторожны, предоставляя пользователям возможность удалять что-либо.
Ответ №2:
Когда вы отправляете форму на HTML-странице с помощью input type="submit"
кнопки, PHP будет содержать пару имя-значение кнопки отправки в параметрах POST или GET. Итак, страница, которая получает отправку, должна проверить наличие этого значения и выполнить нужное действие, каким бы оно ни было:
HTML:
<form method="POST">
<input class="delete_challenge" type="submit" name="delete_challenge" value="" />
<input class="delete_defence" type="submit" name="delete_defence" value="" />
</form>
Нажатие delete_challenge
кнопки приведет к созданию следующего массива POST:
$_POST = array(
'delete_challenge' => ''
);
PHP:
<?php
if (isset($_POST('delete_challenge'))) {
// Do action
} else if (isset($_POST('delete_defence'))) {
// Do action
}
Ответ №3:
Есть несколько способов сделать это.
1) Вы можете заставить кнопки выполнять ajax-вызов php-страницы, выполняющей удаление.
2) Получить или опубликовать из формы на страницу, где запускается ваша функция удаления. (это может быть та же страница)
Пример вариант 2:
Пример формы
<form action="#" method="post">
<input class="delete_challenge" type="submit" name="delete" value="" />
<input class="delete_defence" type="submit" name="delete" value="" />
</form>
Пример php
if (isset($_POST['delete'])) {
$set = new fns_delete();
$delete_challenge = $set->challenge();
$delete_defence = $set->defence();
}
Ответ №4:
Вы могли бы сделать это несколькими способами.
Используйте Ajax (jquery было бы проще), чтобы вызвать php-скрипт и удалить (из базы данных, я полагаю?)
сделайте название каждой кнопки уникальным: delete_challenge, delete_defence
PHP :
$set = new fns_delete();
if( $_POST['delete_challenge'] )
$delete_challenge = $set->challenge();
else if ( $_POST['defence'] )
$delete_defence = $set->defence();
Ответ №5:
Прежде всего, вы, похоже, упускаете идею написания сценариев на стороне сервера и на стороне клиента.
Код, который вы написали здесь, написан на HTML.
PHP-код, подобный следующему, фактически не отправляется пользователю. $set = new fns_delete(); $delete_challenge = $set-> вызов(); $delete_defence = $set-> защита();
Все, что может сделать PHP, это распечатать HTML, который затем отправляется пользователю. Что я бы порекомендовал вам сделать, так это немного почитать о веб-разработке. Книга, с которой я начал, была «PHP и mysql для чайников». http://www.bol.com/nl/s/boeken/zoekresultaten/Ntt/php and mysql for dummies/search/true/searchType/qck/N/8299/Ntk/books_all/index.html
Но я дам вам некоторую базовую информацию, которая может помочь вам начать. Когда пользователь запрашивает страницу с помощью своего веб-браузера (клиента), сервер выполняет поиск запрошенного файла. Когда сервер заметит, что запрошенный файл, он начнет его выполнять. Когда он начнет это делать, он отправит все, что содержится в файле, непосредственно клиенту, таким образом, PHP-файл со следующим содержимым
<html>
<body>
<ul>
<li>item 1</li>
</li>item 2</li>
</ul>
</body>
</html>
для пользователя будет выглядеть следующим образом
- пункт 1
- пункт 2
Если вы хотите, чтобы сервер действительно выполнил то, что содержится в файле, вам нужно использовать начальный тег PHP:
и завершающий тег PHP?>
таким образом, тот же результат, что и выше, может быть сгенерирован путем помещения следующего содержимого в ваш файл
<?php
echo "<html>
<body>
<ul>
<li>item 1</li>
<li>item 2</li>
</ul>
</body>
</html>";
?>
Вы также можете объединить эти две функции для создания более интересных материалов, таких как следующий контент
<hr>
<?php
$a = 1;
$b = 2;
function add($num1,$num2){
return $num1 $num2;
}
?>
Let's see what 1 2 equals<br>
<?php
echo "<hr>".add($a,$b);
?>
Это будет выглядеть примерно так, когда браузер получит это:
давайте посмотрим, чему равно 1 2
3
но что здесь на самом деле происходит? Сначала сервер сталкивается
Сервер находится в том, что мы называем режимом HTML, он будет отправлять любые выходные данные непосредственно клиенту. Однако во второй строке у нас есть PHP, запускающий tat () Теперь мы вернулись в режим HTML, поэтому фраза «давайте посмотрим, чему равно 1 2» отправляется непосредственно клиенту. И тогда пришло время вернуться в режим PHP. Где мы повторяем (печатаем) другое горизонтальное правило, объединенное с выводом функции add, учитывая значения $ a и $ b.
Я надеюсь, что это поможет.