Tutoriel de base de développement PHP : suppression batch et spécifique d'utilisateurs

Encapsuler la fonction de connexion à la base de données

Dans un projet réel, nous utilisons le nom d'hôte et d'utilisateur, les mots de passe et les bibliothèques sont tous écrits dans le fichier de configuration.
Si c'est écrit en dur dans le code, si les informations pertinentes du serveur de base de données changent, cela n'est évidemment pas conforme à la pensée du programmeur de modifier tout le code.

De plus, dans chaque page qui doit se connecter à la base de données. Nous devons tous écrire des connexions, juger les erreurs et définir des jeux de caractères, ce qui est trop gênant. Et ce n’est pas propice à la réutilisation de ces codes.

Nous pouvons utiliser la série de fonctions include mentionnées précédemment pour atteindre notre objectif. L'image d'exemple est la suivante :

118.png

Par conséquent, nous pouvons créer un fichier de configuration config.php. Définissez toutes les configurations qui doivent être utilisées comme constantes. Le code est le suivant :

<?php
//数据库服务器
define('DB_HOST', 'localhost');

//数据库用户名
define('DB_USER', 'root');

//数据库密码
define('DB_PWD', 'secret');

//库名
define('DB_NAME', 'book');

//字符集
define('DB_CHARSET', 'utf8');

Nous allons extraire le page connection.php, lorsque vous devrez vous connecter à la base de données à l'avenir, il vous suffit d'inclure le fichier connection.php. Le code est le suivant :

<?php

include 'config.php';

$conn = mysqli_connect(DB_HOST, DB_USER, DB_PWD, DB_NAME);

if (mysqli_errno($conn)) {
    mysqli_error($conn);
    exit;
}

mysqli_set_charset($conn, DB_CHARSET);

Nous pouvons réaliser la connexion à la base de données en incluant directement le fichier connection.php dans chaque fichier à l'avenir :

include 'connection.php';

Terminez les préparatifs ci-dessus, puis terminez le suppression des données


Supprimer les utilisateurs par lots et spécifiquement Les données suppriment toujours plusieurs lignes de données.

Une seule ligne écrit l'ID correspondant dans le fichier delete.php en passant les paramètres via get.

Et plusieurs suppressions transmettent l'ID correspondant à la page delete.php via POST.
  • Si aucune de ces deux conditions n'est remplie, alors nous pouvons considérer les données comme illégales.
  • if (is_array($_POST['id'])) {
    
        $id = join(',', $_POST['id']);
    
    } elseif (is_numeric($_GET['id'])) {
    
        $id = (int) $_GET['id'];
    
    } else {
        echo '数据不合法';
        exit;
    }

Instructions SQL combinées


Nous vous avons déjà expliqué dans le chapitre MySQL que vous pouvez utiliser la sous-instruction in lors de la suppression.

De même ici, nous pouvons utiliser la sous-instruction in pour obtenir l'effet.

La fonction join modifie l'identifiant transmis par suppression à sélection multiple au format 3, 4, 5. Le résultat final de l'exécution de l'instruction SQL de suppression à sélection multiple est :

delete from user where id in(3,4,5,6,8);

Et suppression à sélection unique L'effet d'instruction est :

delete from user where id in(3)

De cette façon, nous obtenons des effets adaptatifs à sélection unique et multi-sélection.

$sql = "delete from user where id in($id)";

La démonstration finale complète du code est la suivante :

<?php

include 'connection.php';

if (is_array($_POST['id'])) {

    $id = join(',', $_POST['id']);

} elseif (is_numeric($_GET['id'])) {

    $id = (int) $_GET['id'];

} else {
    echo '数据不合法';
    exit;
}

$sql = "delete from user where id in($id)";

$result = mysqli_query($conn, $sql);

if ($result) {
    echo '删除成功';
} else {
    echo '删除失败';
}


Formation continue
||
<?php include 'connection.php'; if (is_array($_POST['id'])) { $id = join(',', $_POST['id']); } elseif (is_numeric($_GET['id'])) { $id = (int) $_GET['id']; } else { echo '数据不合法'; exit; } $sql = "delete from user where id in($id)"; $result = mysqli_query($conn, $sql); if ($result) { echo '删除成功'; } else { echo '删除失败'; }
soumettreRéinitialiser le code
  • Recommandations de cours
  • Téléchargement du didacticiel