Rumah > pembangunan bahagian belakang > masalah PHP > kiraan pertanyaan pangkalan data php

kiraan pertanyaan pangkalan data php

WBOY
Lepaskan: 2023-05-06 21:26:08
asal
643 orang telah melayarinya

PHP ialah bahasa yang digunakan secara meluas untuk pembangunan web, dan salah satu fungsi pentingnya ialah untuk berinteraksi dengan pangkalan data. Dalam laman web atau aplikasi, data selalunya perlu disoal dan dikira untuk memaparkan maklumat pada antara muka pengguna dan melaksanakan operasi logik seperti halaman dan pengisihan. Dalam artikel ini, kita akan membincangkan cara melakukan pertanyaan pangkalan data dan mengira dalam PHP.

Pertanyaan Pangkalan Data

Dalam PHP, melaksanakan pertanyaan pangkalan data biasanya memerlukan penggunaan perpustakaan sambungan pangkalan data, seperti MySQLi atau PDO. Berikut ialah contoh pertanyaan menggunakan MySQLi:

<?php
  //连接到数据库
  $conn = new mysqli("localhost", "username", "password", "database_name");

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

  //执行查询
  $sql = "SELECT * FROM user";
  $result = $conn->query($sql);

  //检查查询结果
  if ($result->num_rows > 0) {
    //输出每一行数据
    while($row = $result->fetch_assoc()) {
      echo "Name: " . $row["name"]. " - Email: " . $row["email"]. "<br>";
    }
  } else {
    echo "没有数据";
  }

  //关闭数据库连接
  $conn->close();
?>
Salin selepas log masuk

Dalam contoh di atas, kami menggunakan perpustakaan sambungan MySQLi untuk menyambung ke pangkalan data dan mengeluarkan hasil pertanyaan ke antara muka pengguna. Pertama, kami menggunakan fungsi mysqli() baharu untuk mencipta objek sambungan, yang merangkumi localhost (localhost), nama pengguna, kata laluan dan nama pangkalan data. Kami kemudiannya melaksanakan pertanyaan SQL menggunakan kaedah $query->query() dan menyimpan keputusan dalam pembolehubah $result. Hasil pertanyaan biasanya set data Anda boleh mengetahui bilangan keping data yang terdapat dalam hasil melalui atribut $result->num_rows. Akhir sekali, kita boleh menggunakan gelung sementara untuk mengeluarkan data baris demi baris dan menggunakan kaedah $result->fetch_assoc() untuk mendapatkan tatasusunan bersekutu bagi setiap baris data.

Sama seperti perpustakaan sambungan MySQLi, perpustakaan PDO juga boleh digunakan untuk melakukan pertanyaan pangkalan data, contohnya adalah seperti berikut:

<?php
  //连接到数据库
  $conn = new PDO("mysql:host=localhost;dbname=database_name", "username", "password");

  //执行查询
  $sql = "SELECT * FROM user";
  $stmt = $conn->prepare($sql);
  $stmt->execute();

  //获取查询结果
  $result = $stmt->fetchAll(PDO::FETCH_ASSOC);

  //检查查询结果
  if (count($result) > 0) {
    //输出每一行数据
    foreach($result as $row) {
      echo "Name: " . $row["name"]. " - Email: " . $row["email"]. "<br>";
    }
  } else {
    echo "没有数据";
  }

  //关闭连接
  $conn = null;
?>
Salin selepas log masuk

Berbanding dengan perpustakaan sambungan MySQLi, perpustakaan PDO mempunyai beberapa kaedah yang berbeza, seperti menggunakan prepare () dan execute() menyediakan dan melaksanakan pertanyaan, dan menggunakan kaedah fetchAll() untuk mendapatkan hasil pertanyaan. Seperti pustaka sambungan MySQLi, kita boleh menggunakan gelung foreach untuk mengulangi tatasusunan hasil dan mendapatkan setiap baris data menggunakan kunci tatasusunan bersekutu.

Kiraan Pangkalan Data

Untuk memaparkan bilangan entri dalam set data, kita perlu melakukan beberapa pertanyaan khas untuk mendapatkan bilangan baris dalam hasil pertanyaan. Dalam MySQL, anda boleh menggunakan fungsi COUNT() untuk mendapatkan bilangan baris Contoh adalah seperti berikut:

<?php
  //连接到数据库
  $conn = new mysqli("localhost", "username", "password", "database_name");

  //执行查询
  $sql = "SELECT COUNT(*) FROM user";
  $result = $conn->query($sql);
  $count = $result->fetch_assoc()["COUNT(*)"];

  //输出结果
  echo "共有 " . $count . " 条数据";

  //关闭数据库连接
  $conn->close();
?>
Salin selepas log masuk

Dalam contoh di atas, kami menggunakan fungsi COUNT() untuk mendapatkan bilangan baris. jadual pengguna dan simpan hasilnya dalam $ dalam pembolehubah kiraan. Ambil perhatian bahawa kita boleh menggunakan kaedah $result->fetch_assoc() untuk mendapatkan bilangan baris, kerana hasil yang dikembalikan oleh fungsi COUNT() ialah lajur bernama COUNT(*). Akhir sekali, kami mengeluarkan kiraan ke antara muka pengguna.

Begitu juga, kita boleh menggunakan kaedah rowCount() dalam PDO untuk mendapatkan bilangan baris Contohnya adalah seperti berikut:

<?php
  //连接到数据库
  $conn = new PDO("mysql:host=localhost;dbname=database_name", "username", "password");

  //执行查询
  $sql = "SELECT * FROM user";
  $stmt = $conn->prepare($sql);
  $stmt->execute();

  //获取查询结果
  $result = $stmt->fetchAll(PDO::FETCH_ASSOC);
  $count = $stmt->rowCount();

  //输出结果
  echo "共有 " . $count . " 条数据";

  //关闭连接
  $conn = null;
?>
Salin selepas log masuk

Dalam contoh di atas, kita menggunakan kaedah rowCount(). untuk mendapatkan bilangan baris hasil pertanyaan yang ditetapkan dan simpan hasilnya dalam pembolehubah $count. Sama seperti mendapatkan baris data, kita boleh mendapatkan koleksi baris hasil yang ditetapkan dengan memanggil kaedah fetch() atau fetchAll() objek PDOStatement.

Kesimpulan

Dalam artikel ini, kami memperkenalkan cara melakukan pertanyaan pangkalan data dan mengira dalam PHP. Kami belajar cara menggunakan MySQLi dan perpustakaan sambungan PDO untuk menyambung ke pangkalan data dan melakukan pertanyaan dan kiraan. Kami juga membincangkan cara mendapatkan data baris daripada hasil pertanyaan dan mengeluarkan hasilnya kepada antara muka pengguna. Petua ini sangat berguna untuk pembangun membangunkan aplikasi dan tapak web berasaskan web.

Atas ialah kandungan terperinci kiraan pertanyaan pangkalan data php. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

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