recherche
Maisondéveloppement back-endProblème PHPComment faire fonctionner la base de données via les fenêtres pop-up PHP

En tant que développeur PHP, nous avons souvent besoin d'exploiter la base de données. Dans les projets réels, nous devons souvent utiliser des fenêtres contextuelles pour mettre en œuvre certaines opérations, telles que la suppression, la modification, etc.

Cet article présentera comment faire fonctionner la base de données via des fenêtres contextuelles PHP, dans le but d'aider les lecteurs à mieux maîtriser cette compétence.

1. Préparation

Avant d'implémenter la fenêtre pop-up, nous devons préparer le travail suivant :

1. Connexion à la base de données : Nous devons utiliser PHP pour créer une connexion à la base de données.

2. Requête de base de données : nous devons utiliser PHP pour interroger la base de données afin d'obtenir les données qui doivent être exploitées.

3. Code de la fenêtre contextuelle : nous devons utiliser JavaScript ou jQuery pour écrire le code de la fenêtre contextuelle.

Pour faciliter la démonstration, nous utilisons ici MySQL comme base de données et PHP PDO pour nous connecter à la base de données.

2. Supprimer des données

Ci-dessous, nous présenterons comment supprimer des données via des fenêtres contextuelles. Tout d’abord, nous devons supprimer les données de la base de données, puis les afficher sur la page pour faciliter la sélection de l’utilisateur.

1. Interroger les données

Nous pouvons utiliser le code suivant pour interroger les données qui doivent être supprimées :

<?php //连接数据库
$dsn = &#39;mysql:host=localhost;dbname=test;charset=utf8&#39;;
$username = &#39;root&#39;;
$password = &#39;123456&#39;;
$options = [
    PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION, //异常处理模式
    PDO::ATTR_DEFAULT_FETCH_MODE => PDO::FETCH_ASSOC, //默认的查询结果类型
];
$pdo = new PDO($dsn, $username, $password, $options);

//查询要删除的数据
$sql = "SELECT * FROM test_table WHERE status = 0"; //status字段表示待删除数据
$stmt = $pdo->prepare($sql);
$stmt->execute();
$data = $stmt->fetchAll();
?>

Dans le code ci-dessus, nous nous connectons d'abord à la base de données et utilisons l'instruction SELECT pour interroger les données qui doivent être supprimé. Parmi eux, le champ statut indique les données à supprimer.

  1. Afficher les données

Ensuite, nous affichons les données interrogées sur la page pour que les utilisateurs puissent choisir.



    
        
            
            
            
            
        
    
    
        $row): ?>
        
            
            
            
            
        
        
    
IDNameEmailAction

Dans le code ci-dessus, nous utilisons des tableaux HTML pour afficher les données interrogées sur la page. Afin d'implémenter la fonction de suppression, nous ajoutons un bouton de suppression à chaque ligne de données et stockons sa valeur d'ID correspondante via l'attribut data-id.

  1. Supprimer les données

Enfin, implémentons la fonction de suppression. Lorsque l'utilisateur clique sur le bouton Supprimer, une boîte de confirmation apparaîtra lui demandant s'il doit supprimer les données. Si l'utilisateur confirme la suppression, nous enverrons une requête AJAX pour supprimer les données de la base de données.

$('.delete-btn').on('click', function() {
    var id = $(this).data('id');
    if (confirm('确定要删除吗?')) {
        $.ajax({
            url: 'delete.php', //处理删除请求的PHP文件
            type: 'POST',
            data: {id: id},
            success: function(res) {
                if (res.code === 0) {
                    alert('删除成功');
                    window.location.reload(); //刷新页面
                } else {
                    alert('删除失败,请稍后再试');
                }
            },
            error: function() {
                alert('请求失败,请稍后再试');
            }
        });
    }
});

Dans le code ci-dessus, nous utilisons jQuery pour lier l'événement de clic du bouton de suppression. Lorsque l'utilisateur clique sur le bouton Supprimer, nous obtenons d'abord la valeur d'identification des données et utilisons la fonction de confirmation pour afficher une boîte de confirmation demandant à l'utilisateur s'il souhaite les supprimer. Si l'utilisateur clique pour confirmer, nous enverrons une requête POST au fichier delete.php pour supprimer les données de la base de données.

Remarque : le code dans le fichier delete.php est le suivant :

<?php //连接数据库
$dsn = &#39;mysql:host=localhost;dbname=test;charset=utf8&#39;;
$username = &#39;root&#39;;
$password = &#39;123456&#39;;
$options = [
    PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION, //异常处理模式
    PDO::ATTR_DEFAULT_FETCH_MODE => PDO::FETCH_ASSOC, //默认的查询结果类型
];
$pdo = new PDO($dsn, $username, $password, $options);

//删除数据
$id = $_POST['id'];
$sql = "DELETE FROM test_table WHERE id = :id";
$stmt = $pdo->prepare($sql);
$stmt->bindParam(':id', $id, PDO::PARAM_INT);
$res = $stmt->execute();

//返回结果
if ($res) {
    echo json_encode(['code' => 0, 'msg' => '删除成功']);
} else {
    echo json_encode(['code' => 1, 'msg' => '删除失败']);
}
?>

Dans le code ci-dessus, nous nous connectons d'abord à la base de données, puis utilisons l'instruction DELETE pour supprimer les données de la base de données. Enfin, nous renvoyons les résultats au format JSON.

3. Modifier les données

En plus de supprimer des données, nous devons souvent modifier des données. Ci-dessous, nous présenterons comment modifier les données via des fenêtres contextuelles.

  1. Requête de données

Tout d'abord, nous devons interroger les données qui doivent être modifiées à partir de la base de données et les afficher sur la page pour permettre aux utilisateurs de les modifier.

<?php //连接数据库
$dsn = &#39;mysql:host=localhost;dbname=test;charset=utf8&#39;;
$username = &#39;root&#39;;
$password = &#39;123456&#39;;
$options = [
    PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION, //异常处理模式
    PDO::ATTR_DEFAULT_FETCH_MODE => PDO::FETCH_ASSOC, //默认的查询结果类型
];
$pdo = new PDO($dsn, $username, $password, $options);

//查询要修改的数据
$id = $_GET['id'];
$sql = "SELECT * FROM test_table WHERE id = :id";
$stmt = $pdo->prepare($sql);
$stmt->bindParam(':id', $id, PDO::PARAM_INT);
$stmt->execute();
$data = $stmt->fetch();
?>

Dans le code ci-dessus, nous obtenons d'abord l'ID des données qui doivent être modifiées via $_GET['id']. Ensuite, nous utilisons l'instruction SELECT pour interroger les données de la base de données.

  1. Afficher les données

Ensuite, nous afficherons les données interrogées sur la page pour permettre aux utilisateurs de les modifier. Ici, nous utilisons toujours le formulaire HTML pour remplir les données demandées dans le formulaire.


    ">     
                 ">     
    
                 ">     
         

Notez que nous avons ajouté un champ masqué au formulaire pour stocker la valeur ID des données qui doivent être modifiées.

  1. Modifier les données

Enfin, implémentons la fonction de modification. Lorsque l'utilisateur clique sur le bouton Enregistrer, nous enverrons une requête AJAX pour mettre à jour les données modifiées dans la base de données.

$('.submit-btn').on('click', function() {
    var data = $('form').serialize();
    $.ajax({
        url: 'update.php', //处理修改请求的PHP文件
        type: 'POST',
        data: data,
        success: function(res) {
            if (res.code === 0) {
                alert('修改成功');
                window.location.href = 'index.php'; //跳转到列表页
            } else {
                alert('修改失败,请稍后再试');
            }
        },
        error: function() {
            alert('请求失败,请稍后再试');
        }
    });
});

Dans le code ci-dessus, nous utilisons jQuery pour lier l'événement click du bouton Enregistrer. Lorsque l'utilisateur clique sur le bouton Enregistrer, nous récupérons d'abord toutes les données du formulaire via la fonction de sérialisation et les envoyons au fichier update.php. Ici, nous utilisons la méthode POST pour envoyer des données.

Remarque : le code dans le fichier update.php est le suivant :

<?php //连接数据库
$dsn = &#39;mysql:host=localhost;dbname=test;charset=utf8&#39;;
$username = &#39;root&#39;;
$password = &#39;123456&#39;;
$options = [
    PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION, //异常处理模式
    PDO::ATTR_DEFAULT_FETCH_MODE => PDO::FETCH_ASSOC, //默认的查询结果类型
];
$pdo = new PDO($dsn, $username, $password, $options);

//修改数据
$id = $_POST['id'];
$name = $_POST['name'];
$email = $_POST['email'];
$sql = "UPDATE test_table SET name = :name, email = :email WHERE id = :id";
$stmt = $pdo->prepare($sql);
$stmt->bindParam(':id', $id, PDO::PARAM_INT);
$stmt->bindParam(':name', $name, PDO::PARAM_STR);
$stmt->bindParam(':email', $email, PDO::PARAM_STR);
$res = $stmt->execute();

//返回结果
if ($res) {
    echo json_encode(['code' => 0, 'msg' => '修改成功']);
} else {
    echo json_encode(['code' => 1, 'msg' => '修改失败']);
}
?>

Dans le code ci-dessus, nous nous connectons d'abord à la base de données, puis utilisons l'instruction UPDATE pour mettre à jour les données dans la base de données. Enfin, nous renvoyons les résultats au format JSON.

Notez que pour faciliter la démonstration, nous utilisons ici la fonction de sérialisation pour convertir les données du formulaire en chaîne, mais dans les projets réels, nous utilisons généralement l'objet FormData pour traiter les données du formulaire afin de prendre en charge des fonctions telles que le téléchargement de fichiers.

4. Résumé

Grâce à l'introduction de cet article, nous avons appris à utiliser la base de données via des fenêtres pop-up PHP. Qu'il s'agisse de suppression ou de modification, nous pouvons utiliser des méthodes similaires pour y parvenir. J'espère que cet article pourra aider les lecteurs. S'il y a quelque chose que vous ne comprenez toujours pas, vous pouvez laisser un message pour en discuter.

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
Base de données d'acide vs de base: différences et quand utiliser chacun.Base de données d'acide vs de base: différences et quand utiliser chacun.Mar 26, 2025 pm 04:19 PM

L'article compare les modèles de base de données d'acide et de base, détaillant leurs caractéristiques et les cas d'utilisation appropriés. L'acide priorise l'intégrité et la cohérence des données, adaptées aux applications financières et de commerce électronique, tandis que Base se concentre sur la disponibilité et

Téléchargements de fichiers sécurisés PHP: prévention des vulnérabilités liées au fichier.Téléchargements de fichiers sécurisés PHP: prévention des vulnérabilités liées au fichier.Mar 26, 2025 pm 04:18 PM

L'article traite de la sécurisation des téléchargements de fichiers PHP pour éviter les vulnérabilités comme l'injection de code. Il se concentre sur la validation du type de fichier, le stockage sécurisé et la gestion des erreurs pour améliorer la sécurité de l'application.

Validation d'entrée PHP: meilleures pratiques.Validation d'entrée PHP: meilleures pratiques.Mar 26, 2025 pm 04:17 PM

L'article traite des meilleures pratiques pour la validation des entrées PHP pour améliorer la sécurité, en se concentrant sur des techniques telles que l'utilisation de fonctions intégrées, une approche de liste blanche et une validation côté serveur.

Limitation du taux de l'API PHP: stratégies de mise en œuvre.Limitation du taux de l'API PHP: stratégies de mise en œuvre.Mar 26, 2025 pm 04:16 PM

L'article traite des stratégies de mise en œuvre de la limitation du taux d'API en PHP, y compris des algorithmes comme un godet de jeton et un seau qui fuit, et en utilisant des bibliothèques comme Symfony / Rate-Limiter. Il couvre également la surveillance, l'ajustement dynamiquement des limites de taux et la main

Hachage de mot de passe PHP: Password_Hash et Password_verify.Hachage de mot de passe PHP: Password_Hash et Password_verify.Mar 26, 2025 pm 04:15 PM

L'article traite des avantages de l'utilisation de mot de passe_hash et de mot de passe_verify dans PHP pour sécuriser les mots de passe. L'argument principal est que ces fonctions améliorent la protection des mots de passe grâce à la génération automatique de sel, à de forts algorithmes de hachage et à

OWASP Top 10 PHP: Décrivez et atténue les vulnérabilités communes.OWASP Top 10 PHP: Décrivez et atténue les vulnérabilités communes.Mar 26, 2025 pm 04:13 PM

L'article traite des 10 meilleures vulnérabilités de l'OWASP dans les stratégies PHP et d'atténuation. Les problèmes clés incluent l'injection, l'authentification brisée et les XS, avec des outils recommandés pour surveiller et sécuriser les applications PHP.

PHP XSS Prévention: comment protéger contre XSS.PHP XSS Prévention: comment protéger contre XSS.Mar 26, 2025 pm 04:12 PM

L'article traite des stratégies pour empêcher les attaques XSS en PHP, en se concentrant sur la désinfection des entrées, le codage de sortie et l'utilisation de bibliothèques et de cadres améliorant la sécurité.

Interface PHP vs classe abstraite: quand utiliser chacun.Interface PHP vs classe abstraite: quand utiliser chacun.Mar 26, 2025 pm 04:11 PM

L'article traite de l'utilisation des interfaces et des classes abstraites en PHP, en se concentrant sur le moment de l'utiliser. Les interfaces définissent un contrat sans mise en œuvre, adapté aux classes non apparentées et à l'héritage multiple. Les cours abstraits fournissent une fusion commune

See all articles

Outils d'IA chauds

Undresser.AI Undress

Undresser.AI Undress

Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover

AI Clothes Remover

Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool

Undress AI Tool

Images de déshabillage gratuites

Clothoff.io

Clothoff.io

Dissolvant de vêtements AI

AI Hentai Generator

AI Hentai Generator

Générez AI Hentai gratuitement.

Outils chauds

Bloc-notes++7.3.1

Bloc-notes++7.3.1

Éditeur de code facile à utiliser et gratuit

Listes Sec

Listes Sec

SecLists est le compagnon ultime du testeur de sécurité. Il s'agit d'une collection de différents types de listes fréquemment utilisées lors des évaluations de sécurité, le tout en un seul endroit. SecLists contribue à rendre les tests de sécurité plus efficaces et productifs en fournissant facilement toutes les listes dont un testeur de sécurité pourrait avoir besoin. Les types de listes incluent les noms d'utilisateur, les mots de passe, les URL, les charges utiles floues, les modèles de données sensibles, les shells Web, etc. Le testeur peut simplement extraire ce référentiel sur une nouvelle machine de test et il aura accès à tous les types de listes dont il a besoin.

PhpStorm version Mac

PhpStorm version Mac

Le dernier (2018.2.1) outil de développement intégré PHP professionnel

Télécharger la version Mac de l'éditeur Atom

Télécharger la version Mac de l'éditeur Atom

L'éditeur open source le plus populaire

ZendStudio 13.5.1 Mac

ZendStudio 13.5.1 Mac

Puissant environnement de développement intégré PHP