Bonsoir,
Je fais un test d'envoi pour la création d'un forum, ça à l'air de fonction pour la première variable (titre), mais pas la deuxième (contenu).
Voici mon code:
Je me suis inspiré de ce code que j'avais fais pour l'envoi de message dans un chat, il permettait de vérifier si le formulaire n'étais pas vide et qu'il n'y a pas de caractère invisible tel les espaces.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20 <?php session_start(); if (empty($_POST['titre'] AND strlen(trim($_POST['titre'])) > 0 AND empty($_POST['contenu'] AND strlen(trim($_POST['contenu'])) > 0 ))) { header('location: billets_forum.php' ); } else { require "#require/connet_bdd.php"; //Connexion à la base de données // Insertion du message à l'aide d'une requête préparée $req = $bdd->prepare('INSERT INTO billets (titre, date_creation, contenu) VALUES(?, NOW(), ?)'); $req->execute(array($_POST['titre'], $_POST['contenu'])); // Redirection du visiteur vers la page du forum header('Location: forum.php'); } ?>
Je pensais peut être à tort que je pouvais doubler la condition, mais hélas non.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21 <?php session_start(); if (empty($_POST['message'] AND strlen(trim($_POST['message'])) > 0 )) { header('location: chatbox.php' ); } else { require "#require/connet_bdd.php"; //Connexion à la base de données // Insertion du message à l'aide d'une requête préparée $req = $bdd->prepare('INSERT INTO minichat (pseudo, date_post, message) VALUES(?, NOW(), ?)'); $req->execute(array($_SESSION['pseudo'], $_POST['message'])); // Redirection du visiteur vers la page du chatbox header('Location: chatbox.php'); } ?>
Votre aide serais la bienvenue, merci.
Partager