#php #html #button #blogs
Вопрос:
Я пытаюсь создать страницу блога с помощью HTML и PHP. У меня есть файл под названием edit.php с двумя кнопками на нем, Обновить и Удалить. Я хочу знать, как PHP может проверить, какая кнопка была нажата (Обновить или удалить), чтобы знать, какую функцию вызывать для обновления или удаления сообщения?
у меня есть свой html как:
<input type="submit" name="command" value="Update" />
<input type="submit" name="command" value="Delete" onclick="return confirm('Are you sure you wish to delete this post?')" />
и в моем php-файле, который обрабатывает функции создания, удаления или обновления сообщений, я попытался использовать, например:
if ($_POST amp;amp; ($_POST['submit'] == "Delete"))
{
delete();
}
но я продолжаю получать ошибки, говоря: Предупреждение: Неопределенный ключ массива «отправить»
Если кто-нибудь может дать мне некоторое представление о том, как один PHP-файл может видеть значение кнопки из другого PHP-файла, я был бы признателен за это!
Комментарии:
1.
$_POST
является суперглобальным и всегда существует. Эта проверка не имеет смысла.2. Ваша кнопка называется
command
, но ваш код ищетsubmit
.
Ответ №1:
Используйте isset, чтобы проверить, существует ли var и имеет ли он какое-либо значение, отличное от null. Вы проверяете по типу ввода, вместо этого проверьте по имени поля ввода.
<input type="submit" name="update" value="Update" />
<input type="submit" name="delete" value="Delete" onclick="return confirm('Are you sure you wish to delete this post?')" />
<?php
if (isset($_POST['update'])) {
update();
}
elseif (isset($_POST['delete'])) {
delete();
}
?>
Комментарии:
1. Это, кажется, не работает для меня…хм… мой edit.php в файле закодированы кнопки… я в своем insert.php файл, пытающийся получить доступ к имени поля ввода кнопок из edit.php… все, что у меня есть в моем insert.php файл прямо сейчас: if (isset($_POST[‘удалить’])) { эхо «удалить»; } но когда я сохраняю и нажимаю кнопку «Удалить» на своем edit.php page…it просто загружает белый screen….so похоже, что он все еще не распознает кнопку удаления…
2.
Warning: Undefined array key "submit"
это предупреждение все еще существует? Вы добавили два разных имени ввода для кнопок отправки формы?3. @Адачи внутри Insert.php страница используется
echo "<pre>"; print_r($_POST); echo "</pre>";
для проверки того, что вы получаете внутри СООБЩЕНИЯ4. Хорошо, я заставил его работать, я вижу, что теперь он видит кнопку. Спасибо!