Php mysqli chọn truy vấn có biến

nhưng điều này phá vỡ toàn bộ lịch của tôi. và tôi không thể tìm ra bất kỳ cách nào khác để làm điều đó. có ai trong số các bạn có một ý tưởng


Bạn gần như đã làm đúng, bạn có thể đặt các thẻ PHP bên trong

❮ Tham chiếu PHP MySQLi

Ví dụ - Kiểu hướng đối tượng

Thực hiện truy vấn đối với cơ sở dữ liệu

$mysqli = new mysqli("localhost","my_user","my_password","my_db");

// Kiểm tra kết nối
if ($mysqli -> connect_errno) {
  echo "Không thể kết nối với MySQL. ". $mysqli -> connect_error;
  thoát();
}

// Thực hiện truy vấn
if ($result = $mysqli -> query("SELECT * FROM Persons")) {
  echo "Returned . ". $result -> num_rows;
  // ​​Bộ kết quả miễn phí
  $result -> free_result();
}

$mysqli -> close();
?>


Nhìn vào ví dụ về phong cách thủ tục ở phía dưới


Định nghĩa và cách sử dụng

Hàm query() / mysqli_query() thực hiện truy vấn đối với cơ sở dữ liệu


cú pháp

Phong cách hướng đối tượng

$mysqli -> truy vấn (truy vấn, chế độ kết quả)

phong cách thủ tục

mysqli_query(kết nối, truy vấn, chế độ kết quả)

Giá trị tham số

Tham sốMô tảkết nốiBắt buộc. Chỉ định kết nối MySQL với usequeryRequired. Chỉ định chuỗi kết quả truy vấn SQL

Không bắt buộc. Một hằng số. Có thể là một trong những điều sau đây

  • MYSQLI_USE_RESULT (Sử dụng cái này để truy xuất lượng lớn dữ liệu)
  • MYSQLI_STORE_RESULT (Đây là mặc định)

chi tiết kỹ thuật

Giá trị trả về. Đối với các truy vấn CHỌN, HIỂN THỊ, MÔ TẢ hoặc GIẢI THÍCH thành công, nó sẽ trả về một đối tượng mysqli_result. Đối với các truy vấn thành công khác, nó sẽ trả về TRUE. FALSE trên failPhiên bản PHP. Nhật ký thay đổi 5+PHP. PHP5. 3. 0 đã thêm khả năng truy vấn không đồng bộ

Ví dụ - Kiểu thủ tục

Thực hiện truy vấn đối với cơ sở dữ liệu

$con = mysqli_connect("localhost","my_user","my_password","my_db");

if (mysqli_connect_errno()) {
  echo "Không thể kết nối với MySQL. ". mysqli_connect_error();
  thoát();
}

// Thực hiện truy vấn
if ($result = mysqli_query($con, "SELECT * FROM Persons")) {
  echo "Returned rows . ". mysqli_num_rows($result);
  // ​​Tập kết quả miễn phí
  mysqli_free_result($result);
}

mysqli_close($con);
?>



❮ Tham chiếu PHP MySQLi

Ví dụ sau đây chọn các cột id, firstname và lastname từ bảng MyGuests nơi họ là "Doe" và hiển thị nó trên trang

Ví dụ (Hướng đối tượng MySQLi)

$servername = "localhost";
$username = "tên người dùng";
$password = "mật khẩu";
$dbname = "myDB";

// Tạo kết nối
$conn = new mysqli($servername, $username, $password, $dbname);
// Kiểm tra kết nối . ". $conn->connect_error);
if ($conn->connect_error) {
  die("Connection failed: " . $conn->connect_error);
}

$sql = "CHỌN id, tên, họ TỪ MyGuests WHERE lastname='Doe'";
$result = $conn->query($sql);

if ($result->num_rows > 0) {
  // xuất dữ liệu của mỗi hàng
  while($row = $result-> . ". $row["id"]. " - Tên. ". $row["firstname"]. "". $row["họ"]. "
    echo "id: " . $row["id"]. " - Name: " . $row["firstname"]. " " . $row["lastname"]. "
";
  }
} other {
  echo "0 results";<
}
$conn->close();
?>

Chạy ví dụ »

Các dòng mã để giải thích từ ví dụ trên

Trước tiên, chúng tôi thiết lập truy vấn SQL để chọn các cột id, tên và họ từ bảng MyGuests trong đó họ là "Doe". Dòng mã tiếp theo chạy truy vấn và đặt dữ liệu kết quả vào một biến có tên $result

Sau đó, function num_rows() kiểm tra xem có nhiều hơn 0 hàng được trả về không

Nếu có nhiều hơn 0 hàng được trả về, hàm fetch_assoc() sẽ đặt tất cả các kết quả vào một mảng kết hợp mà chúng ta có thể lặp qua. Vòng lặp while() lặp qua tập kết quả và xuất dữ liệu từ các cột id, firstname và lastname

Ví dụ sau hiển thị giống như ví dụ trên, theo cách thủ tục MySQLi

Ví dụ (Thủ tục MySQLi)

$servername = "localhost";
$username = "tên người dùng";
$password = "mật khẩu";
$dbname = "myDB";

// Tạo kết nối
$conn = mysqli_connect($servername, $username, $password, $dbname);
// Kiểm tra kết nối< . $conn) {
if (!$conn) {
  die("Kết nối không thành công. ". mysqli_connect_error());
}

$sql = "CHỌN id, tên, họ TỪ MyGuests WHERE lastname='Doe'";
$result = mysqli_query($conn, $sql);

if (mysqli_num_rows($result) > 0) {
  // xuất dữ liệu của mỗi hàng
  while($row = mysqli_fetch_assoc($result . ". $row["id"]. " - Tên. ". $row["firstname"]. "". $row["họ"]. "
    echo "id: " . $row["id"]. " - Name: " . $row["firstname"]. " " . $row["lastname"]. "
";
  }
} other {
  echo "0 results";<
}

mysqli_close($conn);
?>

Chạy ví dụ »



Bạn cũng có thể đưa kết quả vào một bảng HTML

Ví dụ (Hướng đối tượng MySQLi)

$servername = "localhost";
$username = "tên người dùng";
$password = "mật khẩu";
$dbname = "myDB";

// Tạo kết nối
$conn = new mysqli($servername, $username, $password, $dbname);
// Kiểm tra kết nối . ". $conn->connect_error);
if ($conn->connect_error) {
  die("Connection failed: " . $conn->connect_error);
}

$sql = "CHỌN id, tên, họ TỪ MyGuests WHERE lastname='Doe'";
$result = $conn->query($sql);

if ($result->num_rows > 0) {
  echo ";
  // ​​xuất dữ liệu của từng hàng
  while($row = $result->fetch_assoc()) {
    echo "";
  }
  echo "

IDName". $row["id"]. "". $row["firstname"]. "". $row["họ"]. ";
} else {
  echo "0 results";
}
$
?>

Run example »


Chọn dữ liệu với PDO (+ Báo cáo đã chuẩn bị)

Ví dụ sau sử dụng câu lệnh đã chuẩn bị

Nó chọn các cột id, firstname và lastname từ bảng MyGuests nơi họ là "Doe" và hiển thị nó trong một bảng HTML

Làm cách nào để nhận giá trị từ Mysqli_query?

Giá trị trả về ¶ . Đối với các truy vấn thành công khác, mysqli_query() sẽ trả về true. mysqli_query() will return a mysqli_result object. For other successful queries, mysqli_query() will return true .

MySQLi là gì

Trả về giá trị. Đối với các truy vấn CHỌN, HIỂN THỊ, MÔ TẢ hoặc GIẢI THÍCH thành công, mysqli_query() sẽ trả về một đối tượng mysqli_result . Đối với các truy vấn thành công khác, mysqli_query() sẽ trả về TRUE.

Làm cách nào để lưu trữ giá trị từ câu lệnh chọn trong SQL trong PHP?

Cú pháp gán giá trị cho biến SQL trong truy vấn CHỌN là @ var_name. = value , trong đó var_name là tên biến và value là giá trị mà bạn đang truy xuất. Biến có thể được sử dụng trong các truy vấn tiếp theo bất cứ nơi nào một biểu thức được cho phép, chẳng hạn như trong mệnh đề WHERE hoặc trong câu lệnh INSERT.

Làm cách nào để chọn dữ liệu từ cơ sở dữ liệu trong PHP bằng MySQLi?

Kết nối với cơ sở dữ liệu. .
Hướng đối tượng MySQLi $conn = new mysqli($servername, $username, $databasename)
Thủ tục MySQLi $conn = mysqli_connect($servername, $username, $password, $databasename);
PDO. $conn = PDO mới("mysql. máy chủ=$servername;dbname=myDB", $username, $password, $databasename);