Rumah > pangkalan data > tutorial mysql > Bagaimana untuk mendapatkan data rekod daripada pangkalan data MySQL dalam PHP

Bagaimana untuk mendapatkan data rekod daripada pangkalan data MySQL dalam PHP

WBOY
Lepaskan: 2023-05-26 20:52:21
ke hadapan
1145 orang telah melayarinya

Dapatkan jumlah bilangan rekod dalam jadual data

<?php
require &#39;linkConfig.php&#39;;//根据连接信息连接数据库
$sql = "select count(*) from druserlist where C04=&#39;普通用户&#39;";//查询数据表
$result = $mysqli->query($sql);//以索引的方式返回一个结果集
list($rowCount)=$result->fetch_row();
echo &#39;记录总数:&#39;.$rowCount;
$result->close();
$mysqli->close();
?>
Salin selepas log masuk

Ia juga boleh diperolehi seperti ini:

<?php
require &#39;linkConfig.php&#39;;//根据连接信息连接数据库
$sql = "select count(*) from druserlist where C04=&#39;普通用户&#39;";//查询数据表
$result = $mysqli->query($sql);//以索引的方式返回一个结果集
$row = $result->fetch_row();
echo &#39;记录总数:&#39;.$row[0];
$result->close();
$mysqli->close();
?>
Salin selepas log masuk

Borang lain: ($row['total '] digantikan dengan $ row[0] juga boleh digunakan)

<?php
require &#39;linkConfig.php&#39;;//根据连接信息连接数据库
$sql = "select count(*) as total from druserlist where C04=&#39;普通用户&#39;";//查询数据表
$result = $mysqli->query($sql);//以索引的方式返回一个结果集
$row = $result->fetch_array(MYSQLI_BOTH);
echo &#39;记录总数:&#39;.$row[&#39;total&#39;];
$result->close();
$mysqli->close();
?>
Salin selepas log masuk

Selepas berunding dengan manual operasi PHP, terdapat terlalu banyak fungsi serupa, yang bermaksud PHP mempunyai banyak kaedah pemprosesan untuk keperluan yang sama.

Dapatkan rekod jadual pertanyaan pangkalan data dan kembalikannya dalam format JSON

<?php
$sql = "select * from druserlist";//查询语句
$res = $mysqli->query($sql);//执行查询
$result = array();//准备一个空数组
while ($row = $res->fetch_assoc()){
    //对结果集进行逐行取值并压入到数组中
    array_push($result,$row);
}
echo json_encode($result);//返回前端JSON格式数据
?>
Salin selepas log masuk

Data yang dikembalikan:

[
  {
    "C01": "00924001",
    "C02": "经理办01",
    "C03": "1",
    "C04": "普通用户",
    "C05": "1"
  },
  {
    "C01": "00924002",
    "C02": "经理办02",
    "C03": "2",
    "C04": "普通用户",
    "C05": "1"
  },
  {
    "C01": "00923128",
    "C02": "人事科01",
    "C03": "1",
    "C04": "普通用户",
    "C05": "人事科的张小勇"
  }
]
Salin selepas log masuk

Dapatkan data rekod halaman halaman jadual data dan kembalikannya dalam format JSON (Ambil data paging LayUI sebagai contoh) Data yang dikembalikan oleh

<?php
$page  = isset($_POST[&#39;page&#39;]) ? intval($_POST[&#39;page&#39;]) : 1;//获取页数
$limit = isset($_POST[&#39;limit&#39;]) ? intval($_POST[&#39;limit&#39;]) : 10;//获取每页的显示记录数
$offset = ($page-1)*$limit;//计算起始位置
 
require &#39;linkConfig.php&#39;;//连接数据库
$sql1 = "select count(*) from druserlist";
$result1 = $mysqli->query($sql1);
$rowCount = $result1->fetch_row();
 
$returnArr[&#39;code&#39;]=0;
$returnArr[&#39;msg&#39;]="";
$returnArr[&#39;count&#39;]=$rowCount[0];//总记录数
 
$sql2 = "select * from druserlist order by C01 limit $offset,$limit";
$res = $mysqli->query($sql2);
$result = array();
while ($row = $res->fetch_assoc()){
    array_push($result,$row);
}
$returnArr[&#39;data&#39;]=$result;
echo json_encode($returnArr);//返回JSON格式数据
$res->free();
$mysqli->close();
?>
Salin selepas log masuk

:

{
  "code": 0,
  "msg": "",
  "count": "12",
  "data": [
    {
      "C01": "00101078",
      "C02": "HaoR",
      "C03": "2",
      "C04": "管理员",
      "C05": "1"
    },
    {
      "C01": "00323007",
      "C02": "研究中心01",
      "C03": "1",
      "C04": "管理员",
      "C05": "1"
    },
    {
      "C01": "00616001",
      "C02": "财务科01",
      "C03": "1",
      "C04": "管理员",
      "C05": "1"
    },
    {
      "C01": "00616002",
      "C02": "财务科02",
      "C03": "1",
      "C04": "管理员",
      "C05": "1"
    },
    {
      "C01": "00616003",
      "C02": "财务科03",
      "C03": "1",
      "C04": "管理员",
      "C05": "1"
    },
    {
      "C01": "00923127",
      "C02": "admin",
      "C03": "1",
      "C04": "管理员",
      "C05": "系统管理员"
    },
    {
      "C01": "00923128",
      "C02": "人事科01",
      "C03": "1",
      "C04": "普通用户",
      "C05": "人事科的张小勇"
    },
    {
      "C01": "00923129",
      "C02": "人事科02",
      "C03": "1",
      "C04": "管理员",
      "C05": "1"
    }
  ]
}
Salin selepas log masuk

boleh mengembalikan gaya data yang berbeza mengikut paging bahagian hadapan keperluan Setelah anda mengetahui pemprosesan PHP, ia akan menjadi lebih mudah untuk dikendalikan.

Pemprosesan PHP set hasil pertanyaan pangkalan data mysql.

⑴ fetch_array()

<?php
require &#39;linkConfig.php&#39;;//根据连接信息连接数据库
$sql = "select C01,C02 from druserlist where C04=&#39;普通用户&#39;";//查询数据表
$result=$mysqli->query($sql);//以索引的方式返回一个结果集
while($row = $result->fetch_array()){
    $rows[] = $row;
}
foreach($rows as $row){
    echo $row[&#39;C01&#39;].&#39;  &#39;.$row[&#39;C02&#39;].&#39;<br>&#39;;
}
$result->close();
$mysqli->close();
?>
Salin selepas log masuk

Keputusan dikembalikan baris demi baris:

00924001 Pejabat Pengurus 01
00924000<🎜9202002 Pejabat Pengurus Jabatan Kakitangan 01

Mengembalikan format JSON:

<?php
require &#39;linkConfig.php&#39;;//根据连接信息连接数据库
$sql = "select C01,C02 from druserlist where C04=&#39;普通用户&#39;";//查询数据表
$result=$mysqli->query($sql);//以索引的方式返回一个结果集
while($row = $result->fetch_array()){
    $rows[] = $row;
}
echo json_encode($rows);//返回JSON格式数据
$result->close();
$mysqli->close();
?>
Salin selepas log masuk

Hasil yang dikembalikan:

[
  {
    "0": "00924001",
    "1": "经理办01",
    "C01": "00924001",
    "C02": "经理办01"
  },
  {
    "0": "00924002",
    "1": "经理办02",
    "C01": "00924002",
    "C02": "经理办02"
  },
  {
    "0": "00923128",
    "1": "人事科01",
    "C01": "00923128",
    "C02": "人事科01"
  }
]
Salin selepas log masuk

Daripada output di atas, dapat dilihat bahawa output adalah gaya nombor dan nama medan masing-masing Menurut manual operasi PHP, anda boleh mendapatkan nilai rekod dengan memberikan parameter fungsi fetch_array(), iaitu, tiga output berikut adalah sama.

<?php
require &#39;linkConfig.php&#39;;//根据连接信息连接数据库
$sql = "select C01,C02 from druserlist where C04=&#39;普通用户&#39;";//查询数据表
$result=$mysqli->query($sql);//以索引的方式返回一个结果集
//第一种输出
while($row = mysqli_fetch_array($result, MYSQLI_NUM)){
    echo $row[0].&#39;  &#39;.$row[1].&#39;<br>&#39;;
}
//第二种输出
while($row = mysqli_fetch_array($result, MYSQLI_ASSOC)){
    echo $row[&#39;C01&#39;].&#39;  &#39;.$row[&#39;C02&#39;].&#39;<br>&#39;;
}
//第三种输出
while($row = mysqli_fetch_array($result, MYSQLI_BOTH)){
    echo $row[0].&#39;  &#39;.$row[&#39;C02&#39;].&#39;<br>&#39;;
}
$result->close();
$mysqli->close();
?>
Salin selepas log masuk

Tiga output ialah keputusan berikut:

00924001 Pejabat Pengurus 01

00924002 Pejabat Pengurus 02
00923128 Jabatan Kakitangan 00923128

⑵ fetch_row()

Output di atas boleh dilakukan menggunakan kaedah berikut:

<?php
require &#39;linkConfig.php&#39;;//根据连接信息连接数据库
$sql = "select C01,C02 from druserlist where C04=&#39;普通用户&#39;";//查询数据表
$result=$mysqli->query($sql);//以索引的方式返回一个结果集
while ($row = $result->fetch_row()) {
    printf ("%s %s <br>", $row[0], $row[1]);
}
$result->close();
$mysqli->close();
?>
Salin selepas log masuk

⑶ fetch_assoc()

Output di atas boleh dilakukan menggunakan kaedah berikut :

<?php
require &#39;linkConfig.php&#39;;//根据连接信息连接数据库
$sql = "select C01,C02 from druserlist where C04=&#39;普通用户&#39;";//查询数据表
$result=$mysqli->query($sql);//以索引的方式返回一个结果集
while ($row = $result->fetch_assoc()) {
    printf ("%s %s <br>", $row["C01"], $row["C02"]);
}
$result->close();
$mysqli->close();
?>
Salin selepas log masuk

⑷ fetch_all()

Sama seperti fetch_array, terdapat juga pilihan parameter, iaitu: MYSQLI_ASSOC, MYSQLI_NUM atau MYSQLI_BOTH.

<?php
require &#39;linkConfig.php&#39;;//根据连接信息连接数据库
$sql = "select C01,C02 from druserlist where C04=&#39;普通用户&#39;";//查询数据表
$result=$mysqli->query($sql);//以索引的方式返回一个结果集
$rows=$result->fetch_all(MYSQLI_NUM);
$r=0;
while ( $r < mysqli_num_rows($result) ) {
    printf ("%s %s <br>", $rows[$r][0], $rows[$r][1]);
    $r++;
}
$result->close();
$mysqli->close();
?>
Salin selepas log masuk
<?php
require &#39;linkConfig.php&#39;;//根据连接信息连接数据库
$sql = "select C01,C02 from druserlist where C04=&#39;普通用户&#39;";//查询数据表
$result=$mysqli->query($sql);//以索引的方式返回一个结果集
$rows=$result->fetch_all(MYSQLI_ASSOC);
$r=0;
while ( $r < mysqli_num_rows($result) ) {
    printf ("%s %s <br>", $rows[$r][&#39;C01&#39;], $rows[$r][&#39;C02&#39;]);
    $r++;
}
$result->close();
$mysqli->close();
?>
Salin selepas log masuk
<?php
require &#39;linkConfig.php&#39;;//根据连接信息连接数据库
$sql = "select C01,C02 from druserlist where C04=&#39;普通用户&#39;";//查询数据表
$result=$mysqli->query($sql);//以索引的方式返回一个结果集
$rows=$result->fetch_all(MYSQLI_BOTH);
$r=0;
while ( $r < mysqli_num_rows($result) ) {
    printf ("%s %s <br>", $rows[$r][0], $rows[$r][&#39;C02&#39;]);
    $r++;
}
$result->close();
$mysqli->close();
?>
Salin selepas log masuk

Keluaran tiga keping kod di atas adalah sama.

Atas ialah kandungan terperinci Bagaimana untuk mendapatkan data rekod daripada pangkalan data MySQL dalam PHP. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Label berkaitan:
sumber:yisu.com
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