MySQL/PHP ga kirish

PHP da sana va vaqt

MySQL dunyodagi eng mashhur va tez-tez ishlatiladigan relyatsion dasturlardan biridir Ma'lumotlar bazalari. Bu katta hajmdagi ma'lumotlarni tizimli va samarali tarzda saqlash va tartibga solish uchun kuchli vositadir. PHP - bu MySQL ma'lumotlar bazalari bilan ishlash va dinamik veb-ilovalarni yaratish uchun server tomonidagi dasturlash tili. MySQL va PHP 8 birgalikda yaxshi ishlaydi yaratish mustahkam veb-ishlab chiqish platformasi. MySQL/PHP ga ushbu kirish qismida biz PHP 8 yordamida MySQL maʼlumotlar bazasiga ulanish, CRUD (Yaratish, oʻqish, yangilash va oʻchirish) amallarini bajarish va sizning maʼlumotlaringizdan foydalanishni taʼminlash asoslarini koʻrib chiqamiz. kodi xavfsiz va xavfsizdir.

MySQL uchun ishlab chiqish muhitini o'rnatish

MySQL/PHP8 ishlanmasini sozlash atrof-muhit dastlab qiyin ko'rinishi mumkin, ammo to'g'ri vositalar va ozgina yordam bilan bu oddiy jarayon bo'lishi mumkin. Ushbu qismda biz o'rnatish uchun zarur bo'lgan jarayonlarni ko'rib chiqamiz mahalliy rivojlanish muhiti.

Birinchidan, kerakli ilovalarni o'rnatishingiz kerak. Apache yoki Nginx, PHP8 va MySQL kabi veb-serverlar hammasi kiritilgan. Ushbu komponentlar operatsion tizimingizga qarab turli usullarda o'rnatilishi mumkin. Masalan, Windows-da siz Apache, PHP va MySQL bilan oldindan o'rnatilgan WAMP yoki XAMPP dasturiy paketlaridan foydalanishingiz mumkin. Linuxda kerakli ilovalarni o'rnatish uchun apt yoki yum kabi paket menejerlaridan foydalaning.

Tegishli dasturiy ta'minotni o'rnatganingizdan so'ng, siz ma'lumotlar bazasini yaratishni boshlashingiz mumkin. MySQL yangi ma'lumotlar bazasini yaratish va foydalanuvchi hisobini yaratish uchun ishlatilishi mumkin bo'lgan MySQL buyruq qatori mijozi deb nomlanuvchi buyruq qatori interfeysini o'z ichiga oladi. phpMyAdmin kabi grafik interfeys yordamida maʼlumotlar bazalaringizni ham boshqarishingiz mumkin.

MySQL ma'lumotlar bazasiga ulanish

MySQL ma'lumotlar bazasi bilan ishlash uchun PHP dan foydalanishning birinchi qadami unga ulanishdir. Bunga MySQLi yoki PDO (PHP Data Objects) kengaytmalaridan foydalanish orqali erishish mumkin. Ikkala kengaytma ham o'xshash imkoniyatlarni taklif qiladi, ammo PDO ko'p qirrali va turli ma'lumotlar bazalariga ulanishi mumkin. MySQLi MySQL bilan cheklangan.

MySQLi-dan protsessual uslubdagi sintaksis yordamida MySQL ma'lumotlar bazasiga qanday ulanishga misol:

<?php
/* Connection parameters */
$host = 'localhost';
$user = 'root';
$password = 'password';
$dbname = 'test';
/* Connect to the database */
$mysqli = mysqli_connect($host, $user, $password, $dbname);
/* Check for errors */
if (mysqli_connect_errno())
{
   echo 'Connection failed: ' . mysqli_connect_error();
   die();
}

Va PDO yordamida MySQL ma'lumotlar bazasiga qanday ulanishga misol:

<?php
/* Connection parameters */
$host = 'mysql:host=localhost;dbname=test';
$user = 'root';
$password = 'password';
/* Connect to the database */
$pdo = new PDO($host, $user, $password);

CRUD operatsiyalarini bajarish

MySQL ma'lumotlar bazasiga ulanishni o'rnatganingizdan so'ng, CRUD operatsiyalarini bajarishingiz mumkin. CRUD “Yaratish, oʻqish, yangilash va oʻchirish” degan maʼnoni anglatadi va maʼlumotlar bazasida bajarishingiz mumkin boʻlgan toʻrtta asosiy amalni ifodalaydi.

yaratish

yaratish: Yangisini kiritish uchun qator ichiga stol, Siz foydalanishingiz mumkin KIRITMOQ buyruq. Qanday qilib a qo'shishga misol keltiramiz yangi Protsessual uslubdagi sintaksisga ega MySQLi-dan foydalangan holda mahsulotni mahsulotlar jadvaliga kiriting:

<?php
/* Include the connection script */
include 'db_inc.php';
/* Values */
$product_name = 'toothpaste';
$product_price = 5;
/* Build the query */
$query = "INSERT INTO products (name, price) VALUES ('" . mysqli_real_escape_string($mysqli, $product_name) . "', " . mysqli_real_escape_string($mysqli, $product_price)  . ")";
/* Execute the SQL query */
if (!mysqli_query($mysqli, $query))
{
   /* if mysqli_query() returns FALSE it means an error occurred */
   echo 'Query error: ' . mysqli_error($mysqli);
   die();
}
echo "Product added successfully<br>";

o'qish

Bir marta ma'lumotlar jadvalda bo'lsa, foydalanuvchiga ko'rsatish uchun uni o'qish kerak. SELECT SQL operatori jadvaldagi satrlarni o'qish uchun ishlatiladi. Ushbu buyruqning sintaksisi quyidagicha:

SELECT column1, column2, column3 FROM table_name;

"Mahsulotlar" ma'lumotlar bazasidagi barcha yozuvlarni o'qish uchun quyidagi so'rovdan foydalaning, masalan:

SELECT * FROM products;

Buni amalga oshirish uchun So'rovlar va Pastadir ustida Natijalar PHP bilan o'rnating, foydalaning MySQLi yoki PDO kutubxonalari. Masalan, MySQLi-ni protsessual sintaksis bilan ishlatish:

<?php
/* Include the MySQLi (procedural-style) connection script */
include 'db_inc.php';
/* Query */
$query = 'SELECT * FROM products';
/* Execute the query */
$result = mysqli_query($mysqli, $query);
/* Check for errors */
if (!$result)
{
   echo 'Query error: ' . mysqli_error($mysqli);
   die();
}
/* Iterate through the result set */
while ($row = mysqli_fetch_assoc($result))
{
   echo 'Product name: ' . $row['name'] . ', price: '

Yangilanmoqda

Yangilash amali jadvaldagi mavjud ma'lumotlarni o'zgartiradi. Quyida yangilash operatsiyasining asosiy sintaksisi keltirilgan:

UPDATE table_name SET column1 = new_value1, column2 = new_value2, ... WHERE some_column = some_value;

Misol uchun, bizda quyidagi ma'lumotlarga ega mahsulotlar jadvali bor deylik:

IDismnarx
1Tish pastasi5
2Poyafzal50
3Laptop1000

Biz esa tish pastasi narxini 5 dollardan 4.50 dollargacha yangilamoqchimiz.

The So'rovlar bu operatsiya uchun:

UPDATE products SET price = 4.50 WHERE name = 'Toothpaste';

Shuni ta'kidlash kerakki, WHERE bandi ni ko'rsatish uchun ishlatiladi qator yoki yangilanadigan qatorlar. Agar WHERE bandi o'tkazib yuborilsa, jadvaldagi barcha qatorlar o'zgartiriladi.

Yuqoridagi misol uchun biz quyidagi PHP kodidan foydalanishimiz mumkin:

<?php
/* Include the connection script */
include 'db_inc.php';
/* Values */
$product_name = 'Toothpaste';
$product_price = 4.50;
/* Build the query */
$query = "UPDATE products SET price = " . $product_price . " WHERE name = '" . $product_name . "'";
/* Execute the SQL query */
if (!mysqli_query($mysqli, $query))
{
   /* if mysqli_query() returns FALSE it means an error occurred */
   echo 'Query error: ' . mysqli_error($mysqli);
   die();
}
echo "Product updated successfully<br>";

o'chirish

Mavjud ma'lumotlarni o'chirish uchun a stol, dan foydalaning o'chirish harakat. O'chirish operatsiyasi quyidagi asosiy sintaksisga ega: Jadval nomidan ba'zi ustunlarni TANLASH QERDA ba'zi qiymat = ba'zi qiymat; Bizda quyidagi ma'lumotlarga ega mahsulotlar jadvali bor deb taxmin qiling:

| ID | nomi | narxi |
|—-|———–|——-|
| 1 | Tish pastasi| 5 |
| 2 | Poyafzal | 50|
| 3 | Noutbuk | 1000 |

Va biz tish pastasini stoldan o'chirmoqchimiz. Ushbu operatsiya uchun so'rov quyidagicha bo'ladi:

DELETE FROM products WHERE name = 'Toothpaste'; 

Shuni ta'kidlash kerakki, WHERE bandi o'chiriladigan satr yoki qatorlarni aniqlash uchun ishlatiladi. Agar WHERE bandi o'tkazib yuborilsa, jadvaldagi barcha qatorlar o'chiriladi.
Yuqoridagi misol uchun biz PHP kodidan foydalanishimiz mumkin:

<?php
/* Include the connection script */
include 'db_inc.php';
/* Values */
$product_name = 'Toothpaste';
/* Build the query */
$query = "DELETE FROM products WHERE name = '" . $product_name . "'";
/* Execute the SQL query */
if (!mysqli_query($mysqli, $query))
{
   /* if mysqli_query() returns FALSE it means an error
}
echo "Product deleted successfully<br>";

SQL in'ektsiyasining oldini olish

SQL in'ektsiyasining oldini olish MySQL va PHP bilan ishlashning muhim qismidir. SQL in'ektsion hujumlari veb-xavfsizlikning katta xavfi bo'lib, sabab bo'lishi mumkin jiddiy zarar ma'lumotlar bazasiga to'g'ri murojaat qilinmasa. Ushbu bo'limda biz foydalanish orqali SQL in'ektsion hujumlarini oldini olish asoslarini ko'rib chiqamiz xavfsiz tayyorlangan bayonotlar va qochish kabi so'rovlarni qurish texnikasi foydalanuvchi Kiritish.

Tayyorlangan bayonotlar kuchli va xavfsizdir usul SQL so'rovlarini yaratish va bajarish uchun. Ular so'rov mantig'ini so'rovda foydalanilayotgan ma'lumotlardan ajratish usulidir. Mantiq va ma'lumotlarning bunday ajratilishi tajovuzkorning so'rovingizga zararli SQL kodini kiritishini ancha qiyinlashtiradi.

Masalan, quyidagi kodni ko'rib chiqing:

$query = "SELECT * FROM users WHERE username = '$username' AND password = '$password'";
$result = mysqli_query($mysqli, $query);

Ushbu misoldagi so'rov $username va $password o'zgaruvchilari ma'lumotlaridan foydalangan holda yaratilgan. Agar tajovuzkor ushbu o'zgaruvchilarga noto'g'ri ma'lumotlarni kiritgan bo'lsa, so'rovga zararli SQL kodini kiritishi mumkin.

Bunday hujumning oldini olish uchun quyidagi kabi tayyorlangan jumlalardan foydalaning:

$query = "SELECT * FROM users WHERE username = ? AND password = ?";
$stmt = mysqli_prepare($mysqli, $query);
mysqli_stmt_bind_param($stmt, "ss", $username, $password);
mysqli_stmt_execute($stmt);
$result = mysqli_stmt_get_result($stmt);

Ushbu misolda so'rov ma'lumotlar emas, balki to'ldiruvchi (?) bilan tuzilgan. Keyin ma'lumotlar mysqli_stmt::bind_param funksiyasidan foydalangan holda so'rovga individual ravishda beriladi. Mantiq va ma'lumotlar ajratilganligi sababli, tajovuzkor uchun so'rovga zararli SQL kodini kiritish ancha qiyin.

Qochish foydalanuvchi kiritish SQL in'ektsion hujumlaridan qochishning yana bir usuli hisoblanadi. Qochish - bu SQL muammolari yoki in'ektsion hujumlarga olib kelishi mumkin bo'lgan barcha potentsial zararli belgilardan (masalan, ' va %) qochish orqali o'zgaruvchini qayta ishlash jarayoni.

Misol sifatida quyidagi kodni ko'rib chiqing:

$username = $_REQUEST['username'];
$query = "SELECT * FROM users WHERE username = '$username'";
$result = mysqli_query($mysqli, $query);

Ushbu misolda, $username o'zgaruvchi so'rovda hech qanday himoyasiz foydalanilmoqda. SQL in'ektsion hujumlarini oldini olish uchun siz foydalanishingiz mumkin mysqli_real_escape_string quyidagicha funktsiyani bajaring:

$username = mysqli_real_escape_string($mysqli, $_REQUEST['username']);
$query = "SELECT * FROM users WHERE username = '$username'";
$result = mysqli_query($mysqli, $query);

Ushbu misolda, mysqli_real_escape_string funktsiyasidan qochish uchun ishlatiladi $username o'zgaruvchini so'rovda ishlatishdan oldin. Bu tajovuzkorning so'rovga zararli SQL kodini kiritishini ancha qiyinlashtiradi.

Xulosa qilib aytganda, SQL in'ektsiyasining oldini olish MySQL va PHP bilan ishlashning muhim qismidir. Tayyorlangan bayonotlar va foydalanuvchi kiritishidan qochish SQL so'rovlarini yaratish va bajarish uchun kuchli va xavfsiz usullardir. Ushbu usullardan foydalanib, siz juda ko'p narsaga erisha olasiz Kamaytirish SQL in'ektsion hujumlari xavfi va ma'lumotlar bazasini saqlang xavfsiz.

Kengaytirilgan MySQL xususiyatlari

MySQL mustahkam va xususiyatlarga boy relyatsion ma'lumotlar bazasini boshqarish tizimi bo'lib, siz undan qulayroq bo'lganingizda uning ba'zi ilg'or imkoniyatlaridan foydalanishni xohlashingiz mumkin. Ushbu qism bilan biz MySQL-ning saqlangan protseduralar, triggerlar va ko'rinishlar kabi murakkabroq imkoniyatlarini va ulardan PHP8 da qanday foydalanishni ko'rib chiqamiz.

Saqlanadigan protseduralar: Saqlangan protsedura ma'lumotlar bazasida saqlanishi va keyinchalik bitta birlik sifatida bajarilishi mumkin bo'lgan SQL iboralari to'plamidir. Saqlangan protseduralar sizga murakkab mantiqni qamrab olish, kodni qayta ishlatish va dastur va ma'lumotlar bazasi o'rtasidagi aylanma sayohatlar sonini kamaytirish orqali ishlashni yaxshilashga yordam beradi.

MySQL-dagi Construct PROCEDURE bayonoti saqlangan protsedura yaratish uchun ishlatilishi mumkin. Masalan, quyidagi saqlangan protsedura argument sifatida xodimning identifikatorini oladi va xodimning ismi va ish haqini qaytaradi:

DELIMITER $$
CREATE PROCEDURE get_employee_info (IN emp_id INT)
BEGIN
    SELECT name, salary FROM employees WHERE id = emp_id;
END$$
DELIMITER ;

Siz PHP8 da saqlangan protsedurani PDO::prepare() usulidan, keyin esa PDOStatement::execute() usulidan foydalanib chaqirishingiz mumkin. Misol uchun:

$pdo = new PDO('mysql:host=localhost;dbname=mydb', 'root', 'password');
$stmt = $pdo->prepare('CALL get_employee_info(:emp_id)');
$stmt->execute(array(':emp_id' => 42));
$row = $stmt->fetch();

Triggerlar:
Triggerlar - INSERT, UPDATE yoki DELETE bayonoti kabi ma'lum bir hodisaga javoban avtomatik ravishda bajariladigan ko'rsatmalar guruhi. Triggerlar cheklovlarni, audit o'zgarishlarini yoki kaskadli yangilanishlarni yoki olib tashlashlarni amalga oshirish uchun ishlatilishi mumkin.

MySQL-dagi Generate TRIGGER buyrug'i trigger yaratish uchun ishlatilishi mumkin. Masalan, yozuv yangilanganda, quyidagi trigger ustunda o'zgartirilgan jadvalni o'zgartiradi:

CREATE TRIGGER update_modified_at
    BEFORE UPDATE ON mytable
    FOR EACH ROW
    SET NEW.modified_at = NOW();

Ko'rishlar:

Ko'rinish - bu SELECT operatsiyasi natijalaridan yaratilgan virtual jadval. Ko'rishlar murakkab qidiruvlarni soddalashtirish, nozik ma'lumotlarni yashirish va xavfsizlik standartlarini qo'llash uchun ishlatilishi mumkin.

MySQL-dagi Build VIEW bayonoti ko'rinish yaratish uchun ishlatilishi mumkin. Masalan, quyidagi ko'rinishda faqat 50,000 XNUMX dollardan ortiq maosh oladigan xodimlarning nomi va maoshi ko'rsatiladi:

CREATE VIEW high_salary_employees AS
    SELECT name, salary FROM employees WHERE salary > 50000;

PDO::query() yoki PDO::prepare() usullaridan foydalangan holda jadvalni so'raganingizdek ko'rinishni so'rashingiz mumkin. Misol tariqasida:

$pdo = new PDO('mysql:host=localhost;dbname=mydb', 'root', 'password');
$stmt = $pdo->query('SELECT * FROM high_salary_employees');

Ushbu bo'limda biz MySQL ning ba'zi ilg'or xususiyatlari va ulardan PHP8 da qanday foydalanishni ko'rib chiqdik.

Eng yaxshi amaliyotlar

Kod tashkiloti: Kodni osongina o'qilishi va saqlanishi uchun uni tartibli va tuzilgan saqlash juda muhimdir. Bunga funktsiyalar, sinflar va nomlar bo'shliqlaridan foydalanish, shuningdek nomlashning izchil standartiga rioya qilish orqali erishish mumkin.

Xatolarni tuzatish: MySQL/PHP8 bilan ishlashda kodingizni disk raskadrovka qilishni o'rganish juda muhimdir. Bunga PHP disk raskadrovka paneli yoki Xdebug kabi vositalardan foydalanish, shuningdek, xato xabarlarini o‘qish va tushunishni o‘rganish orqali erishish mumkin.

Ishlashni optimallashtirish: MySQL/PHP8 bilan ishlashning eng muhim qismlaridan biri bu kodingiz ishlashiga ishonch hosil qilishdir. Bunga keshlash, indekslash va yaxshi ma'lumotlar bazasi dizaynidan foydalanish, shuningdek MySQL EXPLAIN buyrug'i yordamida so'rovlaringizni optimallashtirishni o'rganish orqali erishish mumkin.

xavfsizlik: MySQL/PHP8 bilan ishlashda doimo xavfsizlikni yodda tuting. SQL in'ektsion hujumlarining oldini olish uchun tayyorlangan bayonotlardan foydalaning va foydalanuvchi kiritishidan qoching. Maxfiy ma'lumotlar uchun shifrlashdan foydalaning.

PDO dan foydalanish: Xavfsizlikni oshirish va eng yaxshi amaliyotlarni rag'batlantirish uchun ma'lumotlar bazalaringiz bilan o'zaro ishlash uchun interfeys sifatida PDO (PHP Data Objects) dan foydalaning. PDO tayyorlangan bayonotlarni taqdim etadi, bu esa uni mysql_* tartiblariga qaraganda ancha xavfsizroq qiladi.

ORM dan foydalanish: ORM - bu ob'ektga yo'naltirilgan sintaksis yordamida ma'lumotlar bazasi bilan interfeys o'rnatish imkonini beruvchi texnologiya. SQL so'rovlarini yozish o'rniga, Doctrine yoki Eloquent kabi ORM tizimi yordamida ma'lumotlar bazasida CRUD faoliyatini bajarishingiz mumkin.

Ushbu eng yaxshi amaliyotlarga rioya qilgan holda MySQL-ni boshqarish mumkin, samarali va xavfsiz bo'ladi.

Savol-javob

Savol: MySQL/PHP8 dan foydalanishda eng keng tarqalgan xavfsizlik xatosi nima?
Javob: MySQL/PHP8 bilan ishlaganda, xavfsizlik bilan bog'liq eng keng tarqalgan muammo SQL so'rovlarida xavfli o'zgaruvchilardan qochib qutulamasdan yoki tayyorlangan bayonotlardan foydalanmasdan foydalanishdir. Bu OWASP tomonidan onlayn xavfsizlik xavfi bo'yicha birinchi o'rinda turadigan SQL in'ektsiya hujumlariga olib kelishi mumkin.

Savol: Tayyorlangan bayonotlar nima va ular MySQL/PHP8 da nima uchun muhim?
Javob: Tayyorlangan bayonotlar xavfsiz va samarali bo'lgan SQL so'rovlarini yaratish usulidir. Ular sizga SQL so'rovi mantig'ini ma'lumotlardan ajratib qo'yish va har qanday foydalanuvchi kiritishidan avtomatik ravishda qochish imkonini beradi. Bu ularni qo'lda foydalanuvchi kiritishidan qochishdan ancha xavfsizroq qiladi va SQL in'ektsion hujumlarining oldini olishga yordam beradi.

Savol: Mahalliy MySQL/PHP8 ishlab chiqish muhitini qanday sozlashim mumkin?
Javob: MySQL/PHP8 uchun mahalliy ishlab chiqish muhitini yaratishda bir necha bosqichlar mavjud. Boshlash uchun veb-server (masalan, Apache yoki Nginx), PHP8 va MySQL-ni o'z ichiga olgan kerakli dasturiy ta'minotni o'rnatishingiz kerak. Keyingi qadam yangi ma'lumotlar bazasini yaratish va unga ulanish uchun PHP8 muhitini sozlashdir. Bu odatda PHP konfiguratsiya faylini o'zgartirish va tegishli ma'lumotlar bazasi ulanish ma'lumotlarini qo'shish orqali amalga oshiriladi.

Savol: MySQL va PHP8 dan qanday foydalanish tavsiya etiladi?
Javob: SQL in'ektsiya tahdidlarining oldini olish uchun tayyorlangan bayonotlardan foydalanish yoki foydalanuvchi kiritishidan qochish, oddiy texnik xizmat ko'rsatish va disk raskadrovka qilish uchun kodingizni tuzish va ishlash uchun kodingizni optimallashtirish MySQL/PHP8 bilan ishlashda eng yaxshi amaliyotlardir. Xavfsizlik tahdidlarini kamaytirish va muvofiqlikni ta'minlash uchun dasturiy ta'minot va bog'liqliklarni yangilab turish ham muhimdir.

Savol: Qanday murakkab MySQL imkoniyatlari bor va ular PHP8 bilan qanday ishlatilishi mumkin?
Javob: MySQL-ning ilg'or xususiyatlariga saqlangan protseduralar, triggerlar va ko'rinishlar kiradi. Saqlangan protseduralar oldindan kompilyatsiya qilingan va ko'p marta bajarilishi mumkin bo'lgan SQL bayonotlari, triggerlar ma'lumotlar bazasida muayyan hodisalar sodir bo'lganda avtomatik ravishda ishlaydigan skriptlar va ko'rinishlar murakkab qidiruvlarni soddalashtirish uchun ishlatilishi mumkin bo'lgan virtual jadvallardir. Ushbu funksiyalar PHP8 da mavjud, ularni SQL so'rovlariga kiritish va natijalarni mos ravishda qayta ishlash.

mashqlar:

  1. PHP8 yordamida MySQL ma'lumotlar bazasiga qanday ulanish mumkin?
  2. MySQL jadvalidagi ma'lumotlarni o'qish uchun PHP8 da SELECT iborasini qanday bajarasiz?
  3. MySQL jadvaliga ma'lumotlarni qo'shish uchun PHP8 da INSERT iborasini qanday bajarasiz?
  4. MySQL jadvalidagi ma'lumotlarni yangilash uchun PHP8 da UPDATE bayonotini qanday bajarasiz?
  5. MySQL jadvalidagi ma'lumotlarni o'chirish uchun PHP8 da DELETE iborasini qanday bajarasiz?
  6. MySQL ma'lumotlar bazasi bilan o'zaro ishlash uchun PHP8 dan foydalanganda SQL in'ektsion hujumlarini qanday oldini olasiz?

javoblar:

  1. PHP8 yordamida MySQL ma'lumotlar bazasiga ulanish uchun siz foydalanishingiz mumkin mysqli_connect() funktsiyasi yoki PDO sinf. Ikkala usul ham sizdan xost nomi, foydalanuvchi nomi, parol va ma'lumotlar bazasi nomi kabi ulanish tafsilotlarini taqdim etishingizni talab qiladi.
  2. MySQL jadvalidagi ma'lumotlarni o'qish uchun PHP8 da SELECT iborasini bajarish uchun siz foydalanishingiz mumkin mysqli_query() funktsiyasi yoki PDO::query() usuli. Keyin kabi funksiyalardan foydalanishingiz mumkin mysqli_fetch_assoc() or PDO::fetch() qaytarilgan qatorlar orqali takrorlash uchun.
  3. MySQL jadvaliga ma'lumotlarni qo'shish uchun PHP8 da INSERT iborasini bajarish uchun siz foydalanishingiz mumkin mysqli_query() funktsiyasi yoki PDO::query() usuli. So'rovda foydalanuvchi kiritgan ma'lumotlar xavfsiz bo'lishini ta'minlash uchun tayyorlangan bayonotlardan foydalanishni unutmang.
  4. MySQL jadvalidagi ma'lumotlarni yangilash uchun PHP8 da UPDATE bayonotini bajarish uchun siz foydalanishingiz mumkin mysqli_query() funktsiyasi yoki PDO::query() usuli. So'rovda foydalanuvchi kiritgan ma'lumotlar xavfsiz bo'lishini ta'minlash uchun tayyorlangan bayonotlardan foydalanishni unutmang.
  5. MySQL jadvalidan ma'lumotlarni o'chirish uchun PHP8 da DELETE bayonotini bajarish uchun siz foydalanishingiz mumkin mysqli_query() funktsiyasi yoki PDO::query() usuli. So'rovda foydalanuvchi kiritgan ma'lumotlar xavfsiz bo'lishini ta'minlash uchun tayyorlangan bayonotlardan foydalanishni unutmang.
  6. MySQL ma'lumotlar bazasi bilan o'zaro ishlash uchun PHP8 dan foydalanganda SQL in'ektsion hujumlarining oldini olish uchun foydalanuvchi kiritgan so'rovlarda foydalanish xavfsiz bo'lishini ta'minlash uchun tayyorlangan bayonotlardan yoki qochishdan foydalaning. Bu kabi funksiyalar yordamida amalga oshirilishi mumkin mysqli_real_escape_string() yoki PDO::quote() qochish yoki foydalanish usuli mysqli_prepare() funktsiyasi yoki PDO::prepare() tayyorlangan bayonotlar uchun usul.

Agar siz MySQL/PHP ga kirishdan keyin MySQL haqida ko'proq ma'lumot olishni istasangiz, biz quyidagilarni tavsiya qilamiz. rasmiy ma'lumotnoma.

PHP da sana va vaqt
en English
X
Top o'ting