Bagaimana PHP+MySQL melaksanakan operasi penambahan pangkalan data, pemadaman, pengubahsuaian dan pertanyaan

PHPz
Lepaskan: 2023-03-23 17:02:01
asal
1556 orang telah melayarinya

PHP dan MySQL ialah teknologi paling popular dalam pembangunan web moden. Dengan menggunakan kedua-dua teknologi ini, pembangun boleh membina aplikasi web dinamik yang merangkumi penyimpanan dan pengambilan data. Artikel ini akan memperkenalkan cara menggunakan PHP dan MySQL untuk melaksanakan operasi tambah, padam, ubah suai dan pertanyaan dalam pangkalan data.

1. Konfigurasi persekitaran

Sebelum kita mula, kita perlu mengesahkan bahawa persekitaran pembangunan untuk PHP dan MySQL telah dikonfigurasikan. Jika tidak, sila pasang dan konfigurasikannya sendiri. Untuk menguji kod, kami menggunakan persekitaran tempatan untuk pembangunan, dan menganggap bahawa anda telah menyediakan pelayan web, PHP dan MySQL secara tempatan.

2. Cipta pangkalan data

Pertama, kita perlu mencipta pangkalan data. Sila gunakan klien MySQL untuk log masuk ke pelayan dan jalankan arahan berikut dalam konsol:

CREATE DATABASE test;
Salin selepas log masuk

Ini akan mencipta pangkalan data bernama "ujian". Seterusnya, kita perlu bertukar kepada pangkalan data ini:

USE test;
Salin selepas log masuk

Seterusnya, kami akan mencipta jadual data yang dipanggil "pengguna" yang akan mengandungi maklumat pengguna.

CREATE TABLE users (
id INT(6) UNSIGNED AUTO_INCREMENT PRIMARY KEY,
name VARCHAR(30) NOT NULL,
email VARCHAR(50) NOT NULL,
password VARCHAR(255) NOT NULL,
created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP
);
Salin selepas log masuk

Ini akan membuat jadual data bernama "pengguna" dengan empat medan: id, nama, e-mel dan kata laluan. id ialah integer kenaikan automatik yang digunakan sebagai pengecam unik untuk pengguna. Medan nama dan e-mel menyimpan nama pengguna dan alamat e-mel masing-masing. Medan kata laluan menyimpan kata laluan pengguna, yang perlu dicincang dan disimpan. Medan create_at digunakan untuk menyimpan masa penciptaan akaun pengguna.

3. Konfigurasikan sambungan pangkalan data

Dalam PHP, kami menggunakan sambungan mysqli untuk mengurus sambungan pangkalan data kami. Pertama, kita perlu menentukan beberapa pemalar untuk menyimpan nilai konfigurasi sambungan pangkalan data. Dalam contoh ini, kami akan menyambung ke pelayan MySQL tempatan dengan akar nama pengguna, kata laluan kosong dan ujian nama pangkalan data:

define('DB_HOST', 'localhost');
define('DB_USER', 'root');
define('DB_PASSWORD', '');
define('DB_NAME', 'test');
Salin selepas log masuk

Seterusnya, kami menggunakan fungsi mysqli_connect() untuk menyambung ke pelayan pangkalan data :

$mysqli = mysqli_connect(DB_HOST, DB_USER, DB_PASSWORD, DB_NAME);
Salin selepas log masuk

Jika sambungan gagal, mesej ralat akan dikembalikan. Jika berjaya, empat operasi pangkalan data asas berikut boleh dilakukan: cipta, baca, kemas kini dan padam.

4. Laksanakan operasi tambah, padam, ubah suai dan pertanyaan

  1. Tambah ke pangkalan data

Fungsi berikut digunakan untuk tambah maklumat pengguna pada data Dalam jadual:

function create_user($name, $email, $password) {
global $mysqli;

$hashed_password = password_hash($password, PASSWORD_DEFAULT);

$stmt = $mysqli->prepare("INSERT INTO users (name, email, password) VALUES (?, ?, ?)");
$stmt->bind_param("sss", $name, $email, $hashed_password);
$stmt->execute();

return $mysqli->insert_id;
}
Salin selepas log masuk

Fungsi ini memerlukan tiga parameter: nama pengguna, alamat e-mel dan kata laluan. Ia terlebih dahulu mencincang kata laluan menggunakan fungsi password_hash(). Kemudian, gunakan fungsi prepare() untuk menyediakan pertanyaan SQL yang akan menambah nama pengguna, alamat e-mel dan kata laluan cincang pada jadual data. Fungsi bind_param() mengikat parameter kepada ruang letak pertanyaan dan melaksanakan pertanyaan. Akhir sekali, gunakan fungsi insert_id() untuk mendapatkan pengecam unik pengguna baharu.

  1. Dapatkan data daripada pangkalan data

Fungsi berikut mendapatkan maklumat pengguna dalam pangkalan data melalui ID pengguna:

function get_user($id) {
global $mysqli;

$stmt = $mysqli->prepare("SELECT * FROM users WHERE id = ?");
$stmt->bind_param("i", $id);
$stmt->execute();

$result = $stmt->get_result();

if ($result->num_rows === 0) {
    return null;
}

return $result->fetch_assoc();
}
Salin selepas log masuk

Fungsi ini memerlukan Parameter: Pengecam unik pengguna. Ia menggunakan fungsi prepare() untuk menyediakan pertanyaan SQL yang akan memilih maklumat pengguna dalam jadual data yang sepadan dengan ID yang disediakan. Fungsi bind_param() mengikat parameter kepada ruang letak pertanyaan dan melaksanakan pertanyaan. Kemudian gunakan fungsi get_result() untuk mendapatkan hasil pertanyaan dan kembalikan tatasusunan bersekutu (jika rekod ditemui) atau nol (jika rekod tidak ditemui).

  1. Kemas kini pangkalan data

Fungsi berikut digunakan untuk mengemas kini maklumat pengguna dalam pangkalan data:

function update_user($id, $name, $email, $password) {
global $mysqli;

$hashed_password = password_hash($password, PASSWORD_DEFAULT);

$stmt = $mysqli->prepare("UPDATE users SET name = ?, email = ?, password = ? WHERE id = ?");
$stmt->bind_param("sssi", $name, $email, $hashed_password, $id);
$stmt->execute();

return $stmt->affected_rows === 1;
}
Salin selepas log masuk

Fungsi ini memerlukan empat parameter: ID pengguna , Nama pengguna, alamat e-mel dan kata laluan. Ia terlebih dahulu mencincang kata laluan menggunakan fungsi password_hash(). Kemudian, gunakan fungsi prepare() untuk menyediakan pertanyaan SQL yang akan mengemas kini maklumat pengguna dalam jadual data yang sepadan dengan ID yang disediakan. Fungsi bind_param() mengikat parameter kepada ruang letak pertanyaan dan melaksanakan pertanyaan. Akhir sekali, gunakan fungsi affected_rows() untuk menyemak sama ada kemas kini berjaya dan mengembalikan nilai Boolean.

  1. Padam data daripada pangkalan data

Fungsi berikut digunakan untuk memadam maklumat pengguna daripada pangkalan data:

function delete_user($id) {
global $mysqli;

$stmt = $mysqli->prepare("DELETE FROM users WHERE id = ?");
$stmt->bind_param("i", $id);
$stmt->execute();

return $stmt->affected_rows === 1;
}
Salin selepas log masuk

Fungsi memerlukan satu parameter : ID pengguna. Ia menggunakan fungsi prepare() untuk menyediakan pertanyaan SQL yang akan memadamkan maklumat pengguna yang sepadan dengan ID yang disediakan daripada jadual data. Fungsi bind_param() mengikat parameter kepada ruang letak pertanyaan dan melaksanakan pertanyaan. Akhir sekali, gunakan fungsi affected_rows() untuk menyemak sama ada pemadaman berjaya dan mengembalikan nilai Boolean.

5. Penyahpepijatan dan Pengoptimuman

Dalam sebarang proses pembangunan web, penyahpepijatan dan pengoptimuman adalah sangat penting. Untuk menyahpepijat kod kami, kami boleh menggunakan fungsi error_reporting() dan ini_set(). Fungsi ini digunakan untuk menetapkan tahap pelaporan ralat dan tetapan untuk memaparkan mesej ralat. Untuk mengoptimumkan kod kami, kami harus mengelakkan rentetan bercantum dalam pertanyaan pangkalan data sebanyak mungkin, dan sebaliknya harus menggunakan fungsi prepare() dan fungsi bind_param().

6. Ringkasan

Dengan menggunakan PHP dan MySQL, kami boleh mencipta aplikasi web dengan mudah dengan fungsi penyimpanan dan pengambilan data. Dalam artikel ini, kami menunjukkan cara menggunakan kedua-dua teknologi ini untuk melaksanakan operasi pangkalan data asas: cipta, baca, kemas kini dan padam. Dengan melaksanakan kod di atas, anda akan belajar cara menyambung ke pangkalan data, mencipta jadual pangkalan data, menambah, membaca, mengemas kini dan memadam data pengguna. Kemahiran ini akan sangat berguna dalam kerja pembangunan web anda pada masa hadapan.

Atas ialah kandungan terperinci Bagaimana PHP+MySQL melaksanakan operasi penambahan pangkalan data, pemadaman, pengubahsuaian dan pertanyaan. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Label berkaitan:
sumber:php.cn
Kenyataan Laman Web ini
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
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan