Maison  >  Article  >  développement back-end  >  Comment implémenter la fonction de requête et d'affichage d'image en php

Comment implémenter la fonction de requête et d'affichage d'image en php

PHPz
PHPzoriginal
2023-04-03 18:53:231381parcourir

Dans le développement de sites Web, la transmission d'images est une fonction très importante. Parmi eux, la transmission d'images de requête PHP est une méthode d'implémentation courante. Il permet aux utilisateurs d'interroger des images associées dans la base de données en saisissant des mots-clés et de les afficher sur la page Web pour que les utilisateurs puissent les visualiser et les télécharger.

Il existe de nombreuses façons d'implémenter des requêtes PHP et d'afficher des images. Ci-dessous, nous présenterons une méthode d'implémentation courante.

1. Établir une base de données et une table de données

Tout d'abord, nous devons créer une table d'images dans la base de données MySQL pour stocker des informations sur toutes les images. La structure de la table est la suivante :

CREATE TABLE pic (
 id int(10) unsigned NOT NULL AUTO_INCREMENT COMMENT '主键ID',
 title varchar(100) NOT NULL DEFAULT '' COMMENT '图片标题',
 description varchar(255) NOT NULL DEFAULT '' COMMENT '图片描述',
 url varchar(255) NOT NULL DEFAULT '' COMMENT '图片URL',
 created datetime NOT NULL DEFAULT '0000-00-00 00:00:00' COMMENT '创建时间',
 PRIMARY KEY (id)
) ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8mb4 COMMENT='图片存储表';

2. Créer une connexion PHP

Afin de nous connecter à la base de données et d'effectuer des opérations de requête, nous devons créer une connexion PHP. Vous pouvez utiliser mysqli ou PDO et d'autres méthodes de connexion. Voici un exemple de code pour la connexion mysqli :

//数据库连接配置
define('DB_HOST', 'localhost');
define('DB_DATABASE', 'test');
define('DB_USERNAME', 'root');
define('DB_PASSWORD', '');
//连接数据库
$mysqli = new mysqli(DB_HOST, DB_USERNAME, DB_PASSWORD, DB_DATABASE);
if ($mysqli->connect_errno) {
die('Connect Error: ' . $mysqli->connect_error);
}

3. Écrire une fonction de requête

Après la connexion à la base de données, nous devons écrire une fonction de requête. Normalement, l'utilisateur entrera un mot-clé à interroger, et nous devons le comparer avec le titre et la description dans la base de données, et renvoyer l'URL de l'image correspondante à l'utilisateur. Voici un code de requête de base :

//定义查询关键字
$keyword = $_GET['keyword'];
//执行查询
$query = "SELECT * FROM pic WHERE title LIKE '%$keyword%' OR description LIKE '%$keyword%'";
$result = $mysqli->query($query);
//处理查询结果
$pic_arr = array();
if ($result) {
while ($row = $result->fetch_assoc()) {
    $pic_arr[] = array(
        'title' => $row['title'],
        'description' => $row['description'],
        'url' => $row['url'],
    );
}
}

4. Afficher les résultats de la requête

Enfin, nous devons afficher les résultats de la requête sur la page Web pour que les utilisateurs puissent les consulter et les télécharger. Cela peut être implémenté à l'aide de technologies telles que HTML et CSS. Ce qui suit est un code d'affichage de base :

//遍历所有查询结果
foreach ($pic_arr as $pic) {
echo &#39;<div class="pic">&#39;;
echo &#39;<img src="&#39;.$pic[&#39;url&#39;].&#39;" />&#39;;
echo &#39;<h3>&#39;.$pic[&#39;title&#39;].&#39;</h3>&#39;;
echo &#39;<p>&#39;.$pic[&#39;description&#39;].&#39;</p>&#39;;
echo &#39;</div>&#39;;
}

Grâce aux étapes ci-dessus, nous pouvons implémenter une simple fonction de requête et d'affichage d'image PHP. Cependant, dans les projets réels, des fonctions connexes telles que le téléchargement d'images et l'ajout de filigranes peuvent également devoir être prises en compte pour répondre aux besoins réels.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn