у меня есть программа, она состоит из нескольких скриптов. В одном из них есть форма - если её отправлять методом POST, то она не отправляется. Т.е. вообще ничего не происходит - как будто ничего не нажимаешь. А если поменять POST на GET, то она отправится. И в контроллере соответственно поменять проверку с POST на GET. В чём тут может быть дело?
Вот код:
часть одного скрипта с формой:
...
<td>
<form action="" method="get">
<div>
<input type="hidden" name="action" value="download" />
<input type="hidden" name="id" value="<?php htmlout($f['id']); ?>" />
<input type="submit" value="Скачать" />
</div>
</form>
</td>
<td>
<form action="" method="get">
<div>
<input type="hidden" name="action" value="delete" />
<input type="hidden" name="id" value="<?php htmlout($f['id']); ?>"/>
<input type="submit" value="Удалить" />
</div>
</form>
</td>
...
вот часть контроллера, которая обрабатывает эту форму:
...
if (isset($_GET['action']) and $_GET['action'] == 'delete' and isset($_GET['id'])) {
try {
$sql = 'DELETE FROM filestore WHERE id = :id';
$s = $pdo -> prepare($sql);
$s -> bindValue(':id', $_GET['id']);
$s -> execute();
} catch (PDOException $e) {
$error = 'Ошибка при удалении файла из базы данных.';
include 'error.html.php';
exit();
}
...