Как использовать функцию PHP для удаления данных?

#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.

Я надеюсь, что это поможет.