Начало > Помощен център > Споделен Хостинг Linux > Уебсайт > Вмъкване на данни в MySQL таблица чрез PHP скрипт

Вмъкване на данни в MySQL таблица чрез PHP скрипт

Помощен център

Вмъкване на данни в MySQL таблица чрез PHP скрипт

В тази статия продължаваме с уроците за управление на MySQL бази данни чрез PHP скрипт като ползваме двете най-актуални разширения MySQLi (Procedural и Object Оriented) и PDO Object Оriented.

След като създадохме база данни и таблица, можем да започнем да добавяме данни в тях.

Ето някои правила за синтаксиса, които да следвате:

  • SQL заявката трябва да бъде поставена в кавички в PHP скрипта;
  • Стойностите на низовете в SQL заявката трябва да бъдат в кавички;
  • Цифровите стойности не трябва да са в кавички, същото важи и за NULL.

Изразът (командата) INSERT INTO се използва за добавяне на нови записи към таблица в MySQL:

INSERT INTO table_name (column1, column2, column3,...)
VALUES (value1, value2, value3,...)

В предишната глава създадохме празна таблица с име guests с пет колони: id, firstname, lastname, email и regdate. Сега нека попълним таблицата с данни.

Забележка: Ако колоната е AUTO_INCREMENT (както колона id) или TIMESTAMP (както колона regdate), не е необходимо да се посочва в SQL заявката - MySQL автоматично ще добави стойността.

Следните примери добавят нов запис към таблицата guests.

Вмъкване на данни в таблица с MySQLi Object-oriented

<?php
include 'dbvar.php';
// Create connection
$conn = new mysqli($servername, $username, $password, $database);
// Check connection
if ($conn->connect_error) {
    die("Connection failed: " . $conn->connect_error);
} 
$sql = "INSERT INTO newsletterMysqliOBJ (firstname, lastname, email)
VALUES ('John', 'Johnson', 'john@example.com')";

if ($conn->query($sql) === TRUE) {
    echo "New record created successfully - newsletterMysqliOBJ";
} else {
    echo "Error: " . $sql . "<br>" . $conn->error;
}
$conn->close();
?>

Вмъкване на данни в таблица с MySQLi Procedural

<?php
include 'dbvar.php';
// Create connection
$conn = mysqli_connect($servername, $username, $password, $database);
// Check connection
if (!$conn) {
    die("Connection failed: " . mysqli_connect_error());
}
$sql = "INSERT INTO newsletterProcedural (firstname, lastname, email)
VALUES ('John', 'Johnson', 'john@example.com')";
if (mysqli_query($conn, $sql)) {
    echo "New record created successfully - newsletterProcedural";
} else {
    echo "Error: " . $sql . "<br>" . mysqli_error($conn);
}
mysqli_close($conn);
?>

Вмъкване на данни в таблица с PDO

<?php
include 'dbvar.php';
try {
    $conn = new PDO("mysql:host=$servername;dbname=$database", $username, $password);
    // set the PDO error mode to exception
    $conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
    $sql = "INSERT INTO newsletterPDO (firstname, lastname, email)
    VALUES ('John', 'Johnson', 'john@example.com')";
    // use exec() because no results are returned
    $conn->exec($sql);
    echo "New record created successfully - newsletterPDO";
    }
catch(PDOException $e)
    {
    echo $sql . "<br>" . $e->getMessage();
    }
$conn = null;
?>

Тест на кода от примерите

Добавяме трите блока с PHP код във файл mysql-insert.php и зареждаме файла като URL:

http://icn-test.net/mysql-insert.php

Потвърждение на успешно вмъкване на данни в браузър

В phpMyAdmin можем да видим, че и в трите таблици реда със записите е добавен успешно:

Успешно добавен запис в phpMyAdmin

В друга статия от тази поредица ще ви покажем как може да въвеждаме повече от един запис в MySQL таблица.