Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Bagaimana untuk memadam data dari pangkalan data mysql dalam php

Bagaimana untuk memadam data dari pangkalan data mysql dalam php

PHPz
PHPzasal
2023-03-27 17:24:45931semak imbas

PHP dan MySQL ialah bahasa pengaturcaraan pangkalan data yang paling biasa digunakan dan memainkan peranan yang sangat penting dalam pembangunan aplikasi web. Dengan kemajuan teknologi maklumat, pengurusan data menjadi lebih penting. Pengendalian pangkalan data PHP dan MySQL memerlukan berhati-hati, dan memadam data adalah tugas yang sangat penting yang melibatkan keselamatan kewangan.

Dalam artikel ini, kami akan memperkenalkan cara memadam data menggunakan pangkalan data MySQL dalam PHP untuk memastikan amalan terbaik dan keselamatan semasa mengendalikan data.

  1. Sandarkan pangkalan data sebelum memadam

Sebelum memadam, sebaiknya buat sandaran pangkalan data. Ini adalah strategi biasa untuk bekerja dengan pangkalan data PostgreSQL dan MySQL. Sandaran boleh membantu anda mendapatkan semula data anda jika anda memadamkannya secara tidak sengaja. Anda boleh menggunakan phpMyAdmin atau alat baris arahan untuk melengkapkan sandaran. Gunakan arahan mysqldump pada baris arahan untuk membuat sandaran pangkalan data.

  1. Gunakan kenyataan DELETE

Gunakan kenyataan DELETE untuk memadam data dalam jadual. Pernyataan DELETE membolehkan anda memadamkan baris tertentu, atau anda boleh menggunakan kad bebas untuk memadamkan baris secara pukal.

<?php
//连接到数据库
$servername = "localhost";
$username = "username";
$password = "password";
$dbname = "myDB";

//创建连接对象
$conn = new mysqli($servername, $username, $password, $dbname);

//检查连接
if ($conn->connect_error) {
    die("连接失败: " . $conn->connect_error);
}

//编写删除数据的SQL语句
$sql = "DELETE FROM myTable WHERE id=1";

//执行SQL语句
if ($conn->query($sql) === TRUE) {
    echo "数据删除成功";
} else {
    echo "删除失败: " . $conn->error;
}

//关闭连接
$conn->close();
?>

Dalam kod di atas, kami menggunakan pernyataan DELETE untuk memadamkan baris dengan ID 1 daripada jadual myTable. Jika baris berjaya dipadamkan, program akan mengeluarkan "Data Deletion Berjaya" jika ia tidak dipadam, program akan mengeluarkan "Deletion Failed" dan mesej ralat dikembalikan oleh MySQL.

  1. Mencegah Serangan Suntikan SQL

Serangan suntikan SQL ialah sejenis serangan siber yang boleh menyebabkan data aplikasi anda bocor. Untuk mengelakkan serangan suntikan SQL, kita boleh menggunakan fungsi mysql_real_escape_string() PHP untuk melarikan data yang dimasukkan pengguna.

<?php
//连接到数据库
$servername = "localhost";
$username = "username";
$password = "password";
$dbname = "myDB";

//创建连接对象
$conn = new mysqli($servername, $username, $password, $dbname);

//检查连接
if ($conn->connect_error) {
    die("连接失败: " . $conn->connect_error);
}

//获取用户输入的数据
$id = $_POST['id'];

//使用mysql_real_escape_string()函数转义用户输入的数据
$id = mysql_real_escape_string($id);

//编写删除数据的SQL语句
$sql = "DELETE FROM myTable WHERE id='$id'";

//执行SQL语句
if ($conn->query($sql) === TRUE) {
    echo "数据删除成功";
} else {
    echo "删除失败: " . $conn->error;
}

//关闭连接
$conn->close();
?>

Dalam kod di atas, kami menggunakan fungsi mysql_real_escape_string() untuk melepaskan data yang dimasukkan pengguna untuk mengelakkan serangan suntikan SQL.

  1. Gunakan pengurusan transaksi untuk memadamkan operasi

Pengurusan transaksi adalah sangat penting apabila anda perlu memadamkan data dalam berbilang jadual. Dalam PHP, pemadaman berasaskan transaksi boleh dicapai menggunakan MySQLi atau sambungan PDO.

<?php
//连接到数据库
$servername = "localhost";
$username = "username";
$password = "password";
$dbname = "myDB";

//创建连接对象
$conn = new mysqli($servername, $username, $password, $dbname);

//检查连接
if ($conn->connect_error) {
    die("连接失败: " . $conn->connect_error);
}

//开启事务
$conn->begin_transaction();

//编写删除数据的SQL语句
$sql1 = "DELETE FROM myTable WHERE id=1;";
$sql2 = "DELETE FROM myTable1 WHERE id=2;";

//删除数据
if ($conn->query($sql1) === TRUE && $conn->query($sql2) === TRUE) {
    //提交事务
    $conn->commit();
    echo "所有数据删除成功";
} else {
    echo "删除失败: " . $conn->error;
    //回滚事务,撤销删除操作
    $conn->rollback();
}

//关闭连接
$conn->close();
?>

Dalam kod di atas, kami menggunakan fungsi begin_transaction() untuk memulakan transaksi dan menggunakan fungsi commit() untuk menyerahkan hasil pada penghujungnya. Jika pemadaman menemui ralat, anda boleh menggunakan fungsi rollback() untuk membuat asal operasi pemadaman sebelumnya.

Ringkasan

Memadam data ialah tugas yang sangat penting dan sensitif dalam PHP dan MySQL. Dengan membuat sandaran, menggunakan kenyataan DELETE, mencegah serangan suntikan SQL dan menggunakan transaksi untuk mengurus operasi pemadaman, kami boleh memastikan amalan terbaik dan keselamatan semasa mengendalikan dan mengurus data.

Atas ialah kandungan terperinci Bagaimana untuk memadam data dari pangkalan data mysql dalam php. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn