Удаление записи из гостевой книги

315
27 февраля 2017, 14:29

Добавление записи я сделал, оно работает, а удаление у меня не получается. Надо сделать удаление методом get.

Я сделал условие

if(isset($_GET['id']) == 'gbook' && $_GET[del] == $count)

если клик был сделан на ссылку, то сделать запрос на удаление и удалить ту запись, у которой параметр del равен переменной $count

Но почему-то не удаляется

<?php
/* Основные настройки */
define('DB_HOST', 'localhost');
define('DB_LOGIN', 'root');
define('DB_PASSWORD', '');
define('DB_NAME', 'gbook');
$link = mysqli_connect(DB_HOST, DB_LOGIN, DB_PASSWORD, DB_NAME) or die('ERROR');
/* Основные настройки */
/* Сохранение записи в БД */
if($_SERVER['REQUEST_METHOD'] == 'POST'){ //проверка отправки формы
    echo 'Форма отправлена' . '<br>';
    $name = strip_tags($_POST["name"]);
    $email = strip_tags($_POST["email"]);
    $msg = strip_tags($_POST["msg"]);
    echo '<br>';
    //echo $name . ' ' . $email . ' ' . $msg;
    $res = "INSERT INTO `msgs` (name, email, msg) VALUES ('$name', '$email', '$msg')";
    mysqli_query($link, $res);
}

/* Сохранение записи в БД */
/* Удаление записи из БД */
if(isset($_GET['id']) == 'gbook' && $_GET[del] == $count){
    echo 'Удаление';
     $query_del ="DELETE FROM msgs WHERE id = $count";
     mysqli_query($link, $query_del);
}
/* Удаление записи из БД */
?>
<h3>Оставьте запись в нашей Гостевой книге</h3>
<form method="post" action="<?= $_SERVER['REQUEST_URI']?>">
Имя: <br /><input type="text" name="name" /><br />
Email: <br /><input type="text" name="email" /><br />
Сообщение: <br /><textarea name="msg"></textarea><br />
<br />
<input type="submit" value="Отправить!" />
</form>
<?php
/* Вывод записей из БД */
$show = "SELECT id, name, email, msg, UNIX_TIMESTAMP(datetime) as dt FROM msgs ORDER BY id DESC";
$res_show = mysqli_query($link, $show);
//$row = mysqli_fetch_all($res_show, MYSQLI_ASSOC);
$count = 0; //всего записей
while($row = mysqli_fetch_array($res_show, MYSQLI_ASSOC)){
    $count++;
    echo 'Имя: ' . $bd_name = $row[name] . '<br>';
    echo 'Email: ' . $bd_email = $row[email] . '<br>';
    echo 'Сообщение: ' . $bd_msg = $row[msg]  .'<br>';
    echo '<a href="' . 'http://localhost/phpspec2/index.php?id=gbook&del=' .$count . '">Удалить</a>';
    echo '<br>';
    echo '<hr>';
}
echo '<p>Всего записей в гостевой книге: ' . $count . '</p>'  . '<br>';
mysqli_close($link);
/* Вывод записей из БД */
?>

Вот дамп пустой БД

-- MySQL dump 10.13  Distrib 5.5.25, for Win32 (x86)
--
-- Host: localhost    Database: gbook
-- ------------------------------------------------------
-- Server version   5.5.25-log
/*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */;
/*!40101 SET @OLD_CHARACTER_SET_RESULTS=@@CHARACTER_SET_RESULTS */;
/*!40101 SET @OLD_COLLATION_CONNECTION=@@COLLATION_CONNECTION */;
/*!40101 SET NAMES utf8 */;
/*!40103 SET @OLD_TIME_ZONE=@@TIME_ZONE */;
/*!40103 SET TIME_ZONE='+00:00' */;
/*!40014 SET @OLD_UNIQUE_CHECKS=@@UNIQUE_CHECKS, UNIQUE_CHECKS=0 */;
/*!40014 SET @OLD_FOREIGN_KEY_CHECKS=@@FOREIGN_KEY_CHECKS, FOREIGN_KEY_CHECKS=0 */;
/*!40101 SET @OLD_SQL_MODE=@@SQL_MODE, SQL_MODE='NO_AUTO_VALUE_ON_ZERO' */;
/*!40111 SET @OLD_SQL_NOTES=@@SQL_NOTES, SQL_NOTES=0 */;
--
-- Table structure for table `msgs`
--
DROP TABLE IF EXISTS `msgs`;
/*!40101 SET @saved_cs_client     = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `msgs` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `name` varchar(25) NOT NULL DEFAULT '',
  `email` varchar(50) NOT NULL DEFAULT '',
  `msg` text,
  `datetime` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
  PRIMARY KEY (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Dumping data for table `msgs`
--
LOCK TABLES `msgs` WRITE;
/*!40000 ALTER TABLE `msgs` DISABLE KEYS */;
/*!40000 ALTER TABLE `msgs` ENABLE KEYS */;
UNLOCK TABLES;
/*!40103 SET TIME_ZONE=@OLD_TIME_ZONE */;
/*!40101 SET SQL_MODE=@OLD_SQL_MODE */;
/*!40014 SET FOREIGN_KEY_CHECKS=@OLD_FOREIGN_KEY_CHECKS */;
/*!40014 SET UNIQUE_CHECKS=@OLD_UNIQUE_CHECKS */;
/*!40101 SET CHARACTER_SET_CLIENT=@OLD_CHARACTER_SET_CLIENT */;
/*!40101 SET CHARACTER_SET_RESULTS=@OLD_CHARACTER_SET_RESULTS */;
/*!40101 SET COLLATION_CONNECTION=@OLD_COLLATION_CONNECTION */;
/*!40111 SET SQL_NOTES=@OLD_SQL_NOTES */;
-- Dump completed on 2012-07-01 13:59:11
READ ALSO
Почему то уходит в минус

Почему то уходит в минус

Здравствуйте помогите пожалуйста я учу php и не могу решить достаточно легкую задачу

225
Аргументы функции php

Аргументы функции php

Можно ли передавать в качестве аргумента функции ссылку на объект? например:

214
Выполнение SQL запроса по расписанию

Выполнение SQL запроса по расписанию

В таблице имеются 2 поля login и tokenКак сделать так, чтобы после того как в поле token для указанного логина будет записана информация, это поле...

280