PHP實現排序功能總結

2022-06-20 14:00:21
本篇文章給大家帶來了關於的相關知識,其中主要介紹了關於排序功能的相關問題,通過範例完成php+mysqli排序功能的實現,下面一起來看一下,希望對大家有幫助。

推薦學習:《》

和大家一起完成php+mysqli排序功能的實現.

一、sql:

-- phpMyAdmin SQL Dump
-- version 4.5.1
-- http://www.phpmyadmin.net
--
-- Host: 127.0.0.1
-- Generation Time: 2022-03-17 17:19:09
-- 伺服器版本: 10.1.13-MariaDB
-- PHP Version: 5.6.21

SET SQL_MODE = "NO_AUTO_VALUE_ON_ZERO";
SET time_zone = "+00:00";


/*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */;
/*!40101 SET @OLD_CHARACTER_SET_RESULTS=@@CHARACTER_SET_RESULTS */;
/*!40101 SET @OLD_COLLATION_CONNECTION=@@COLLATION_CONNECTION */;
/*!40101 SET NAMES utf8mb4 */;

--
-- Database: `a`
--

-- --------------------------------------------------------

--
-- 表的結構 `search`
--

CREATE TABLE `search` (
  `id` int(11) NOT NULL DEFAULT '0',
  `content` text COLLATE utf8_vietnamese_ci NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_vietnamese_ci;

--
-- 轉存表中的資料 `search`
--

INSERT INTO `search` (`id`, `content`) VALUES
(666, 'cyg'),
(2, 'liwen'),
(555, 'liwen&cyg');

/*!40101 SET CHARACTER_SET_CLIENT=@OLD_CHARACTER_SET_CLIENT */;
/*!40101 SET CHARACTER_SET_RESULTS=@OLD_CHARACTER_SET_RESULTS */;
/*!40101 SET COLLATION_CONNECTION=@OLD_COLLATION_CONNECTION */;

二、使用步驟

核心問題:
1.怎麼連結資料庫呢?

$link=mysqli_connect('localhost','root','','a');

解析:連結資料庫,在自己的電腦本地地址上localhost。資料庫軟體使用者名稱:root.密碼"", 資料庫名:a
2.怎麼設定連結的資料庫的字元編碼呢?

mysqli_set_charset($link,'utf8');

設定這種utf8編碼,不至於有漢字亂碼。
3.怎麼執行php中的sql呢?

mysqli_query($link,$sql);

解析:第一個引數是資料庫連結賦值的變數。第二個引數是sql語句變數

4.怎麼在插入語句中寫變數呢?

$sql = "INSERT INTO search(id,content)
VALUES ('{$id}','{$content}')";

解析:按照這種格式來就行了

5.排序的sql語句,升序怎麼寫?從小到大的是升序。越來越大

$sql = "SELECT id,content FROM search ORDER BY id";

6.從大到小的降序sql怎麼寫?越來越小

$sql = "SELECT id,content FROM search ORDER BY id desc";

7.mysqli_query遍歷出來的資料要轉化為陣列才能執行.

$row=mysqli_fetch_array($result)

解析:因為foreach不支援mysqli_query資料直接輸出

1.cyg.php

程式碼如下(範例):

<?php
$link=mysqli_connect('localhost','root','','a');
//然後是指定php連結資料庫的字元集
mysqli_set_charset($link,'utf8');
$sql="select * from search";
$result=mysqli_query($link,$sql);//執行sql

?>
<!--顯示的效果-->
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Document</title>
</head>
<body>
<table border="1" cellpadding="5">
<tr>
<td>id</td>
<td>標題</td>
<td>內容</td>

<?php 
while ($row=mysqli_fetch_array($result)) {//把物件變成陣列輸出,不然會報錯哦

?>
<tr>
<td><?=$row['id'];?></td>
<td><?=$row['content'];?></td>


</tr>
<?php 
}
?>
<td><a href="create.php">建立才能排序哦</a></td>
<td><a href="asc.php">升序</a></td><!--從小到大-->
<td><a href="desc.php">降序</a></td><!--從大到小-->
</tr>
</table>
</body>
</html>

2.create.php

<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Document</title>
</head>
<body>
<form action="create.php" method="POST">
<input type="text" name="id">
<input type="text" name="content">

<input type="submit" value="提交">
</form>
</body>
</html>
<?php
if(!$_POST['content']||!$_POST['id'])
{
exit();
}
$content=$_POST['content'];
$id=$_POST['id'];

$link=mysqli_connect('localhost','root','','a');
//然後是指定php連結資料庫的字元集
mysqli_set_charset($link,'utf8');
$sql = "INSERT INTO search(id,content)
VALUES ('{$id}','{$content}')";
 
$result=mysqli_query($link,$sql);
echo "<script>alert('建立成功');</script>";
?>
<button><a href="cyg.php">返回</a></button>

2.asc.php

<?php
$link=mysqli_connect('localhost','root','','a');
//然後是指定php連結資料庫的字元集
mysqli_set_charset($link,'utf8');
$sql = "SELECT id,content FROM search ORDER BY id";
 
$result=mysqli_query($link,$sql);

?>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Document</title>
</head>
<body>
<table border="1" cellpadding="5">
<tr>
<td>id</td>
<td>標題</td>
<td>內容</td>

<?php 
while ($row=mysqli_fetch_array($result)) {//把物件程式設計陣列輸出,不然會報錯哦

?>
<tr>
<td><?=$row['id'];?></td>
<td><?=$row['content'];?></td>


</tr>
<?php 
}
?>
<td><a href="create.php">建立才能排序哦</a></td>
<td><a href="asc.php">升序</a></td><!--從小到大-->
<td><a href="desc.php">降序</a></td><!--從大到小-->
</tr>
</table>
</body>
</html>

2.desc.php

<?php
$link=mysqli_connect('localhost','root','','a');
//然後是指定php連結資料庫的字元集
mysqli_set_charset($link,'utf8');
$sql = "SELECT id,content FROM search ORDER BY id desc";
 
$result=mysqli_query($link,$sql);

?>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Document</title>
</head>
<body>
<table border="1" cellpadding="5">
<tr>
<td>id</td>
<td>標題</td>
<td>內容</td>

<?php 
while ($row=mysqli_fetch_array($result)) {//把物件程式設計陣列輸出,不然會報錯哦

?>
<tr>
<td><?=$row['id'];?></td>
<td><?=$row['content'];?></td>


</tr>
<?php 
}
?>
<td><a href="create.php">建立才能排序哦</a></td>
<td><a href="asc.php">升序</a></td><!--從小到大-->
<td><a href="desc.php">降序</a></td><!--從大到小-->
</tr>
</table>
</body>
</html>

推薦學習:《》

以上就是PHP實現排序功能總結的詳細內容,更多請關注TW511.COM其它相關文章!