Pas de plugins ! Le secret pour que les formulaires HTML de WordPress se connectent facilement à la base de données

Vous y croyez ? Formulaires de contact, formulaires d'inscription des utilisateurs ou formulaires de soumission de données, le principe du faire avancer une partie de qqch. HTML Formulaires + traitement de la base de données dorsale. Cet article explique en détail, des concepts de base aux précautions, en passant par les aspects pratiques, comment le système d'information sur la santé peut être utilisé. WordPress pour créer un formulaire HTML et stocker les données dans la base de données.

Image[1]-WordPress Custom HTML Forms + Database Practice ! Les débutants peuvent se débrouiller !

I. Pourquoi personnaliser les formulaires HTML ?

WordPress Bien qu'il existe de nombreux plugins de formulaires (tels que Contact Form 7,WPForms), mais dans certains cas, nous devons écrire le formulaire HTML à la main :

  • Logique commerciale personnaliséeLes champs de l'application peuvent être modifiés : par exemple, vous devez collecter des champs supplémentaires ou les stocker dans une table personnalisée.
  • Des performances accruesLes plugins complexes ne doivent pas être chargés avec un code plus léger.
  • Entièrement contrôlableLa conception de la partie frontale et la logique de traitement de la partie dorsale sont laissées à votre discrétion.

Deuxièmement, la structure de base du formulaire HTML

Le formulaire HTML le plus simple se compose d'une zone de saisie, d'un bouton d'envoi et d'un champ de saisie. formulaire Tags, par exemple :

Pictures[2]-WordPress Custom HTML Forms + Database Practice ! Les débutants peuvent se débrouiller !

  

   
  

  
</form

Description :

  • method="post": Soumission de données de formulaire avec POST.
  • action="": Soumettre à la page en cours.
  • nom: L'attribut clé du champ par lequel la valeur est récupérée après la soumission.

Comment traiter les données des formulaires dans WordPress

existent WordPress dans lequel il se trouve généralement dans le functions.php ou des plugins personnalisés pour ajouter une logique de traitement.

fichier functions.php

  • Chaque thème WordPress est livré avec un functions.php Documentation.
  • Vous pouvez écrire du code ici pour que WordPress exécute cette logique lorsque le thème est chargé.
  • Convient à l'exécution de certaines fonctions simples, telles que le traitement de données de formulaires.

Plug-ins personnalisés

  • Si la fonction est plus indépendante et plus complexe, il est préférable de l'écrire sous la forme d'un plugin.
  • Le plugin dispose d'un dossier séparé et de fichiers PHP qui ne seront pas perdus en cas de changement de thème.
  • Par exemple, créer un "plugin de collecte de formulaires personnalisés", afin que le code soit plus clair et plus sûr.

1) Obtenir les données du formulaire

Image [3] - WordPress Custom HTML Forms + Database Practice ! Les débutants peuvent se débrouiller !
if ( isset($_POST['submit_form']) ) {
    $name = sanitize_text_field($_POST['name']) ;
    $email = sanitize_email($_POST['email']) ;
}

utiliser sanitize_text_field() répondre en chantant sanitize_email() Filtrage des données pour garantir la sécurité.

2. accès à la base de données

WordPress fournit $wpdb qui peuvent facilement interagir avec la base de données.

Pictures[4]-WordPress Custom HTML Forms + Database Practice ! Les débutants peuvent se débrouiller !
global $wpdb.
$table_name = $wpdb->prefix . "custom_form" ; // nom de la table de données

$wpdb->insert(
    $table_name,
    array(
        'name' => $name,
        'email' => $email, 'created_at' => current_time('mysql')
        'created_at' => current_time('mysql')
    )
).

Description :

  • $wpdb->prefixe est le préfixe de la table de la base de données (la valeur par défaut est wp_).
  • insérer() écrira les données dans le tableau spécifié.

3. créer des tables dans la base de données

Vous devez d'abord créer une table pour le formulaire afin de stocker les données, et vous pouvez exécuter le code SQL lorsque le plugin est activé :

Image [5] - WordPress Custom HTML Forms + Database Practice ! Les débutants peuvent se débrouiller !
function create_custom_table() {
    global $wpdb ; $table_name = $wpdb->prefix .
    $able_name = $wpdb->prefix . "custom_form" ;

    $charset_collate = $wpdb->get_charset_collate() ;

    $sql = "CREATE TABLE $table_name (
      id mediumint(9) NOT NULL AUTO_INCREMENT,
      name varchar(50) NOT NULL, email varchar(100)
      email varchar(100) NOT NULL, created_at datetime DEFORM
      date_at datetime DEFAULT CURRENT_TIMESTAMP NOT NULL, PRIMARY KEY (id)
      PRIMARY KEY (id)
    ) $charset_collate ;";

    require_once( ABSPATH . 'wp-admin/includes/upgrade.php' ) ;
    dbDelta($sql) ;
}
add_action('after_switch_theme', 'create_custom_table' ) ;

Ce code crée le tableau de données lorsque l'on passe d'un sujet à l'autre.

IV. afficher les formulaires sur la page

WordPress suggère de passer l'option Code court pour appeler le formulaire afin qu'il puisse être intégré dans n'importe quelle page.

Image [6] - WordPress Custom HTML Forms + Database Practice ! Les débutants peuvent se débrouiller !
function custom_form_shortcode() {
    function custom_form_shortcode() { ob_start() ; ?
    Voici un exemple de formulaire personnalisé. 
    
        
      
      
    </form
    <?php
    return ob_get_clean() ;
}
add_shortcode('custom_form', 'custom_form_shortcode') ;

Insérer dans la page [custom_form] Le formulaire peut être affiché.

V. Comment consulter les données transmises

  • Connectez-vous à phpMyAdmin ou à l'outil de gestion de la base de données et recherchez le fichier wp_custom_form pour visualiser les données soumises.
Image [7] - WordPress Custom HTML Forms + Database Practice ! Les débutants peuvent se débrouiller !
  • Si vous souhaitez l'afficher dans le backend, vous pouvez écrire une simple page d'administration avec l'option $wpdb->get_results() Sortez les données et montrez-les.

VI. recommandations en matière de sécurité et d'optimisation

  • Filtrage et validation des données
    • utiliser sanitize_*() pour nettoyer les données d'entrée.
    • Validation régulière de champs spéciaux tels que les boîtes aux lettres.
  • Prévenir les attaques CSRF
    WordPress offres wp_nonce_field() avec check_admin_referer() pour sécuriser la demande.
  • Pagination et restrictions
    • Limitez la fréquence des envois de formulaires afin d'éviter le spamming.
    • Effectuer une pagination lors de l'affichage des données afin d'éviter un chargement lent en arrière-plan.
  • Envisager l'utilisation d'AJAX
    Les formulaires peuvent être soumis via AJAX, une combinaison de technologies utilisées pour créer des applications web plus réactives, permettant à la page d'être actualisée sans qu'il soit nécessaire de la rafraîchir, ce qui améliore l'expérience de l'utilisateur.

VII. résumé

Les étapes principales pour créer un formulaire HTML et se connecter à une base de données dans WordPress sont les suivantes :Écrire des structures de formulaire HTML > Obtenir et traiter des données en PHP > Utiliser le logiciel $wpdb Ecrire dans la base de données > Afficher le formulaire sur le frontend avec un shortcode.

Par rapport à l'approche par plug-in, les formulaires personnalisés sont plus flexibles et peuvent répondre avec précision aux besoins du projet. Bien que la quantité de code soit légèrement plus importante, la liberté et le contrôle qu'elle apporte valent l'investissement.

    Une fois que vous aurez maîtrisé ce processus, vous pourrez facilement étendre les fonctionnalités de votre site web, par exemple en personnalisant le système d'inscription, la collecte des questionnaires, la gestion des informations sur les membres, et bien d'autres possibilités pour votre site web !


    Contactez nous
    Vous n'arrivez pas à lire le tutoriel ? Contactez-nous pour une réponse gratuite ! Aide gratuite pour les sites personnels et les sites de petites entreprises !
    Service clientèle WeChat
    Service clientèle WeChat
    Tel : 020-2206-9892
    QQ咨询:1025174874
    (iii) Courriel : info@361sale.com
    Horaires de travail : du lundi au vendredi, de 9h30 à 18h30, jours fériés.
    © Déclaration de reproduction
    Cet article a été rédigé par WoW
    LA FIN
    Si vous l'aimez, soutenez-le.
    félicitations2497 partager (joies, avantages, privilèges, etc.) avec les autres
    avatar de wajigua - Photon Flux | Service professionnel de réparation de WordPress, dans le monde entier, réponse rapide
    commentaires achat de canapé

    Veuillez vous connecter pour poster un commentaire

      Pas de commentaires