Удалить строку с помощью php

#php #mysql

#php #mysql

Вопрос:

в настоящее время у меня есть база данных SQL, в которой я храню некоторые данные. Эти данные просматриваются на веб-сайте со следующим кодом:

  echo "<tr><td>" . $row["project"]. " " . "</td><td>" . "  ". $row[ "project_desc"]. " " . "</td><td>" . "  ".  $row["hours"]. "</td><td>" . "  ".  $day. "</td></tr>";
  

Но теперь я хочу, чтобы у него была дополнительная вкладка, где вы можете удалить строку, которая отображается на веб-сайте, из базы данных.
Как я могу это сделать?
если вам это нужно, я использую MySQL
И я использую mysqli

Комментарии:

1. Вы уже используете mysqli или PDO для вставки в базу данных?

2. Добавьте свою дополнительную вкладку также в код, чтобы это было полезно для получения лучших результатов

3. @Nordy Vlasman. Я предоставил вам четкое объяснение того, что вам нужно, и также внес свои предложения. Посмотрите и поделитесь мыслями. Если вы столкнетесь с какими-либо препятствиями, дайте мне знать.

Ответ №1:

Вы должны добавить этот код в свою строку-

 <td><a href="delete.php?id=<?echo $row['id'];?>">Delete</a></td>
  

когда пользователь нажимает «Удалить», то delete.php вызывается, поэтому идентификатор покупки, который нужно удалить, должен быть передан через delete.php,

delete.php

 $id = $_GET['id'];
mysql_query("DELETE from purchase WHERE id='$id'");
  

Комментарии:

1. Если я сделаю это, я получу пустую страницу

2. вам нужно создать delete.php файл

3. вы должны создать delete.php страница, и вы должны подключиться к базе данных, и после этого вы должны выполнить эту операцию — $result = mysql_query(«УДАЛИТЬ из покупки, ГДЕ id=’$id'»); if($result) { перенаправить («);}

Ответ №2:

Примечание: это расширение устарело в PHP 5.5.0, и оно было удалено в PHP 7.0.0. Вместо MySQLi PDO_MySQL этого расширение or следует использовать вместе с prepared statements .

Поэтому я предлагаю вам изучить руководство по PDO по этой ссылке, и это очень полезно для разработки в будущих проектах.

Чтобы удалить одну строку в таблице, вы используете оператор DELETE с предложением WHERE, которое указывает, какую строку удалить.

Пример для удаления MySQL: http://www.phpeasystep.com/mysql/7.html

Удалить пример с использованием mysql:

  1. На странице списка, где вы отображаете данные, вам нужно добавить код для отправки его на delete.php страницу, или вы можете удалить его на той же странице, где вы перечисляете данные.
  2. Ниже я предоставлю вам два метода передачи данных.

Метод первый: удаление той же страницы

 <td><a href="?id=<?echo $row['id'];?>">Delete</a></td>
  

Способ второй: Delete.php удаление страницы

 <td><a href="delete.php?id=<?echo $row['id'];?>">Delete</a></td>
  

PHP-код для удаления данных из таблицы:

Если вам нужно удалить данные с самой страницы списка или вы собираетесь удалить на delete.php странице, вам нужно выполнить тот же код, чтобы получить REQUEST из URL.

 <?php
if(isset($_REQUEST['id']))
{
$id = $_REQUEST['id'];
$query="DELETE FROM TABLENAME WHERE `id`='".$id."'";
$execute = mysql_query($query);
echo "Data Delete Successfully";
}
?>
  

Если вы собираетесь удалить на delete.php странице, вам необходимо подключить database.php файл на эту страницу.

delete.php

 <?php
include('database.php');
//Followed by Delete Code over Here.
// And then you have to redirect the page using the header location
header('Location: BACK TO YOUR LIST PAGE');
?>
  

Надеюсь, что мое объяснение будет понятным для вашего понимания, и вы сможете заставить его работать над следующими проектами на лету.

Удалить пример с помощью PDO:

 <?php

/**
 * PHP MySQL Delete Data Demo
 */
class DeleteDataDemo {

    const DB_HOST = 'localhost';
    const DB_NAME = 'classicmodels';
    const DB_USER = 'root';
    const DB_PASSWORD = '';

    /**
     * PDO instance
     * @var PDO 
     */
    private $pdo = null;

    /**
     * Open a database connection to MySQL
     */
    public function __construct() {
        // open database connection
        $conStr = sprintf("mysql:host=%s;dbname=%s", self::DB_HOST, self::DB_NAME);
        try {
            $this->pdo = new PDO($conStr, self::DB_USER, self::DB_PASSWORD);
        } catch (PDOException $e) {
            die($e->getMessage());
        }
    }

    /**
     * Delete a task based on a specified task id
     * @param int $id
     * @return bool true on success or false on failure
     */
    public function delete($id) {

        $sql = 'DELETE FROM tasks
                WHERE task_id = :task_id';

        $q = $this->pdo->prepare($sql);

        return $q->execute([':task_id' => $id]);
    }

    /**
     * close the database connection
     */
    public function __destruct() {
        $this->pdo = null;
    }

}

$obj = new DeleteDataDemo();
// delete id 2
$obj->delete(2);
  

Здесь я нашел очень хороший учебник для целей обучения, пожалуйста, ознакомьтесь с этой ссылкой.