Comment envoyer des soumissions à votre base de données SQL en utilisant PHP

September 15, 2021

Comment envoyer des soumissions à votre base de données SQL en utilisant PHP

La première chose que vous devez apprendre est de savoir comment afficher les données de soumission sur votre page de remerciement.  Vous pouvez lire ce guide afin d’obtenirplus d’informations

En supposant que vous ayez configuré votre formulaire pour poster des données sur une page URL personnalisée, vous devrez faire un peu de programmation PHP/MySQL dans le but de faire un formulaire à MySQL.

Les données affichées par Jotform sont en fait un tableau, donc pour trouver les clés et les valeurs du tableau, vous devrez essayer de l’insérer dans votre script :

print_r( $_POST );   ?>

Ensuite : Faites une soumission réelle pour tester votre formulaire et obtenir le résultat.  Une fois que vous avez soumis le formulaire, il doit être redirigé vers votre URL de remerciement personnalisée qui recevra les données d’envoi.  Voici un exemple de données tirées d’un formulaire type :https://www.jotform.com/form/11814245193

Array
(
    [submission_id] => 186725738203177939
    [formID] => 11814245193
    [ip] => 203.177.93.98
    [name] => sample name test data
    [email] => email@example.com
    [phonenumber13] => Array
        (
            [0] => 3343
            [1] => 4234
        )

   [subject7] => Technical Support assistance

    [message6] => test
)

Vous pouvez également tester votre script PHP via le Postman Tool. Vous pouvez télécharger Postman à partir dece lien.Vous pouvez tester votre script PHP pour voir les données de soumission publiées et exécuter facilement des méthodes de débogage simples, même dans votre environnement local. Effectuons une simple demande POST avec notre script PHP en utilisant Postman.

Vous pouvez télécharger un exemple de script PHP à partir de celien.

(N’hésitez pas à faire une soumission en utilisant ce formulaire pour voir le résultat du tableau par vous-même)

Maintenant que nous avons les clés, nous pouvons jouer avec ces informations, créer vos propres champs dans votre base de données.  Voici à quoi ressemblent mes champs dans cet exemple :

Création de votre script PHP

Maintenant que vous avez créé votre base de données, vous pouvez commencer à créer votre script PHP.

Étape 1 : Pour prévenir d’éventuelles vulnérabilités d’injection SQL dans votre base de données, nous devons exécuter PHP’s addslash() pour chaque variable de message.  Et puisque les données $_POST sont un tableau, créons une fonction qui bouclera sur chaque variable :

// Cette fonction s’exécutera dans chaque tableau de données, y compris les tableaux multidimensionnels

function ExtendedAddslash(&$params)
{
        foreach ($params as &$var) {

            // vérifier si $var est un tableau. Si oui, il lancera une autre fonction ExtendedAddslash() pour boucler chaque clé à l’intérieur.

  is_array($var) ? ExtendedAddslash($var) : $var=addslashes($var) ;

        }

}

     // Initialiser la fonction ExtendedAddslash() pour chaque variable 

    ExtendedAddslash($_POST);     

?>

Étape 2 : J’ai identifié chaque donnée POST avec une variable.  Vous remarquerez également que j’ai fusionné les deux variables POST du numéro de téléphone en une seule 

$submission_id = $_POST[‘submission_id’];
$formID =
 
$_POST[‘formID’] ;
$ip =
 
$_POST[‘ip’] ;
$name =
 
$_POST[‘name’] ;
$email =
 
$_POST[’email’] ;
$phonenumber =
 
$_POST[‘phonenumber13’][0] .”-“. $_POST[‘phonenumber13’][1] ;
$subject =
 
$_POST[‘subject7’] ;
$message =
 
$_POST[‘message6’] ;

?>

Étape 3 : Nous initialisons maintenant la connectivité de la base de données pour le script à MySQL

$db_host = ‘db hostname here’;
$db_username = ‘db username here’;
$db_password = ‘db password here’;
$db_name = ‘name of your database’;
mysql_connect( $db_host, $db_username, $db_password) or die(mysql_error());
mysql_select_db($db_name);
?>

Étape 4 : Pour vérifier si une insertion ou une mise à jour doit être effectuée, il faut initialiser une recherche si l’ID de soumission existe, puis poser une condition selon laquelle, si l’ID de soumission existe, une mise à jour doit être initialisée à l’aide de cet ID de soumission.  Et si aucun numéro de soumission ne correspond, un nouvel encart sera réalisé :

// recherchez l’ID de soumission

$query = “SELECT * FROM `table_name` WHERE `submission_id` = ‘$submission_id’“;

$sqlsearch = mysql_query($query);
$resultcount = mysql_numrows($sqlsearch);

if ($resultcount > 0) {

mysql_query(“UPDATE `table_name` SET
                                `name` = ‘$name’,
                                `email` = ‘$email’,
                                `phone` = ‘$phonenumber’,
                                `subject` = ‘$subject’,
                                `message` = ‘$message’       
                             WHERE `submission_id` = ‘$submission_id'”)
     or die(mysql_error());
else {
mysql_query(“INSERT INTO `table_name` (submission_id, formID, IP,
                                                                          name, email, phone, subject, message)
                               VALUES (‘$submission_id’, ‘$formID’, ‘$ip’,
                                                 ‘$name’, ‘$email’, ‘$phonenumber’, ‘$subject’, ‘$message’) “)
    or die( mysql_error()); 

}
?>
Vous avez terminé.  Nommez le script comme votre fichier php de remerciement et téléchargez-le pour qu’il corresponde exactement aux détails que vous avez définis dans votre URL de remerciement personnalisée

Ce guide vous a-t-il aidé ?

Envoyer un commentaire:

Jotform Avatar
This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.

Commentaire:

Podo CommentSoyez le premier à commenter.