Comment supprimer l'attribut title d'une image en php

PHPz
Libérer: 2023-04-21 09:17:50
original
585 Les gens l'ont consulté

Avec le développement continu du développement de sites Web, les technologies frontales telles que Javascript, CSS et HTML sont devenues très matures et les langages de programmation back-end sont devenus de plus en plus importants. Parmi eux, PHP est le langage back-end le plus utilisé et le plus riche en fonctionnalités.

Dans le développement de sites Web, il est souvent nécessaire de gérer des opérations telles que le téléchargement et la suppression d'images. Lors de la suppression d'images, nous utilisons généralement la fonction unlink() de PHP pour supprimer les fichiers image du système de fichiers du serveur. Cependant, un problème survient parfois : après la suppression de l'image, l'attribut titre de l'image originale existe toujours dans la page d'accueil. Ce problème nécessite que nous prenions certaines mesures pour le résoudre.

En HTML, l'attribut titre d'une image peut être affiché sous forme de texte d'invite de souris de l'image, c'est donc très courant dans la conception de sites Web. Lors de la suppression d'images en PHP, nous supprimons généralement les fichiers image directement et oublions de supprimer ensemble les attributs associés dans la base de données ou la page. Cela aura pour conséquence que certaines informations de l'image supprimée seront toujours visibles sur la page, telles que les attributs du titre, la taille de l'image, etc.

Heureusement, il n'est pas difficile de résoudre ce problème, il suffit d'ajouter du code au script PHP. Ce qui suit présente deux méthodes pour supprimer l’attribut title d’une image.

Méthode 1 :

<?php
$file = &#39;path/to/image.jpg&#39;;
if (file_exists($file)) {
    unlink($file);
    $img_name = basename($file);
    // 移除页面中对应图片元素的title属性
    echo "<script> document.querySelector('img[src=\"".$img_name."\"]').removeAttribute('title'); </script>";
}
?>
Copier après la connexion

Le principe de cette méthode est qu'une fois que la fonction unlink() a supprimé avec succès le fichier image, faites correspondre l'attribut src de l'élément img sur la page pour voir s'il s'agit du fichier image qui vient d'être supprimé, et puis utilisez RemoveAttribute() de JavaScript. La fonction supprime l'attribut title de l'élément image.

Méthode 2 :

<?php
$file = &#39;path/to/image.jpg&#39;;
if (file_exists($file)) {
    unlink($file);
    $img_name = basename($file);
    // 修改数据库中对应图片的title属性为null
    $stmt = $pdo->prepare("UPDATE images SET title=NULL WHERE filename=?");
    $stmt->execute([$img_name]);
}
?>
Copier après la connexion

Le principe de cette méthode est qu'une fois que la fonction unlink() a supprimé avec succès le fichier image, utilisez PDO pour interroger l'enregistrement de l'image correspondante dans la base de données, puis définissez l'attribut title sur null. De cette façon, l’attribut title qui affiche l’image correspondante sur la page n’existera plus.

Il est à noter que l'utilisation de la deuxième méthode nécessite que l'enregistrement d'image correspondant existe dans la base de données, contrairement à la première méthode. De plus, la deuxième méthode nécessite le support de la base de données et garantit que le lien entre la base de données et PHP a été correctement établi.

Résumé :

Lors de la suppression d'images en PHP, nous devons nous rappeler de supprimer également l'attribut titre de l'image sur la page ou l'enregistrement dans la base de données, sinon cela peut entraîner des risques de sécurité potentiels ou des problèmes d'affichage de la page. Les deux méthodes présentées ci-dessus peuvent facilement résoudre ce problème. J'espère que cela sera utile à tout le monde.

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!

source:php.cn
Déclaration de ce site Web
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
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal