N'arrive pas à insérer un enregistrement dans la base de données
a.b
-
jordane45 Messages postés 40050 Statut Modérateur -
jordane45 Messages postés 40050 Statut Modérateur -
Bonjour à tous,
Je souhaite insérer un enregistrement dans ma base de données via le formulaire HTML ci-dessus mais je n'arrive pas. Voici la page en question :
Une aide serait le bienvenue.
Je vous remercie.
Je souhaite insérer un enregistrement dans ma base de données via le formulaire HTML ci-dessus mais je n'arrive pas. Voici la page en question :
<?php
session_start();
include "../Data/Config.php";
?>
<!DOCTYPE html>
<html lang="fr">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<link rel="stylesheet" href="../../Css/Server.css">
<link rel="stylesheet" href="../../Css/bootstrap.min.css">
<title></title>
</head>
<body>
<!-- Slide server -->
<div id="server">
<?php include "../Data/Server.php" ?>
</div>
<!-- Home server -->
<div class="">
<div id="pictureServer" class="rounded-circle mx-auto">
<?php echo $_GET['severName']; ?>
</div>
<div id="add" class="col-sm-3 mx-left">
<a href="#" id="button" class="button">Add post</a>
</div>
</div>
<div id="post_container">
<div class="text-center border mx-auto rounded" style="width:10%; margin-top:3%; padding: 50px;%">
<?php
$req_post = "SELECT description FROM Post";
$res = mysqli_query($conn, $req_post);
while ($all_post = mysqli_fetch_array($res)) {
echo "<p>".$all_post['description']."</p>";
}
mysqli_close($conn);
?>
</div>
</div>
<!-- Popup -->
<div id="modal">
<div id="modal-content">
<div id="modal-content-top">
<div id="close">+</div>
<div class="image-profil">
<img id="image-profil" src="#" alt="profil" style="width: 30px;">
</div>
<div class="pseudo">
<p id="pseudo">Pseudo</p>
</div>
</div>
<div id="modal-content-body">
<form method="post">
<div class="form-group">
<label for="usr">Sujet:</label>
<input type="text" class="form-control" name="subject" id="usr" required>
</div>
<br>
<div class="form-group">
<label for="comment">Post:</label>
<textarea class="form-control" rows="5" name="post" id="comment" form="post" ></textarea>
</div>
<div id="modal-content-bottom">
<button type="submit" name="posted">Envoyer<button>
</div>
</form>
</div>
</div>
</div>
<script type="text/javascript" src="../../JS/Popup.js"></script>
</body>
</html>
<?php
$subject = htmlentities($_POST['subject']);
if(!$subject == NULL) {
$req = "INSERT INTO Post VALUES (NULL, 2, NULL, '".$_POST['subject']."', 1, NULL, NULL)";
$res = mysqli_query($conn, $req);
}
header("Location: ServerView.php");
exit;
?>
Une aide serait le bienvenue.
Je vous remercie.
Configuration: Macintosh / Safari 14.0.2
A voir également:
- N'arrive pas à insérer un enregistrement dans la base de données
- Fuite données maif - Guide
- Insérer vidéo dans powerpoint - Guide
- Base de registre - Guide
- Insérer signature word - Guide
- Insérer un espace insécable dans word - Guide
1 réponse
Bonjour,
Déjà, essayes de placer le maximum de code php AVANT (et en dehors ) du HTML.
cela le rendra plus facile à maintenir
Surtout que l'instruction header ne marche que si tu n'as rien affiché avant ....
Ensuite, active l'affichage des erreurs PHP dans ta page.
Voir les conseils donnés ici : https://forums.commentcamarche.net/forum/affich-37584947-php-gestion-des-erreurs-debogage-et-ecriture-du-code
Puis, gère les erreurs éventuelles au niveau de tes requête sql
par exemple
Déjà, essayes de placer le maximum de code php AVANT (et en dehors ) du HTML.
cela le rendra plus facile à maintenir
Surtout que l'instruction header ne marche que si tu n'as rien affiché avant ....
Ensuite, active l'affichage des erreurs PHP dans ta page.
Voir les conseils donnés ici : https://forums.commentcamarche.net/forum/affich-37584947-php-gestion-des-erreurs-debogage-et-ecriture-du-code
Puis, gère les erreurs éventuelles au niveau de tes requête sql
par exemple
// Perform a query, check for error
if ( !$res = mysqli_query($conn, $req) ) {
echo("Error description: " . mysqli_error($conn));
}
Quelque chose m'échappe. Je ne sais pas quoi.
J'ai recherché sur internet mais rien.