Coucou !
(Je ne sais pas si le thème du topic est le bon, désolé d'avance...)
J'ai un problème assez gros au niveau de ma BDD.

J'essaie d'insérer des valeurs dans cette dernière, mais quand je clique sur le
bouton qui est normalement censé insérer ces valeurs sans problème, il ne se
passe rien. Aucun message d'erreur, pas de nouvelles données dans a BDD...
La connexion se fait pourtant très bien, mais je n'ai strictement aucune idée
de pourquoi ce "bug" (si je peux appeler ça comme ça) à lieu.

Note : Les systèmes de connexion, d'inscription et de déconnexion marchent parfaitement.

Voici mon code :

<?php
session_start();
require('./database.php');

echo $_SESSION['id'];

if (isset($_POST['send'])) {
  $description = htmlspecialchars($_POST['description']);
  $desclen = strlen($description);
  $title = htmlspecialchars($_POST['title']);
  $titlelen = strlen($title);
  $version = htmlspecialchars($_POST['version']);
  $versionlen = strlen($version);
  $versiontype = $_POST['versiontype'];
  $projecttype = $_POST['projecttype'];

  if ($desclen >= 20) {
    if ($titlelen >= 5) {
      if ($versionlen >= 1) {
        $postPrepare = $dbhost->prepare("INSERT INTO posts (title, content, postdatetime, ownerid, projectversion, versiontype, projecttype) VALUES (?, ?, NOW(), ?, ?, ?, ?");
        $postPrepare->execute(array($title, $description, $_SESSION['id'], $version, "test", "test"));
      } else {
        $err = "Veuillez fournir une version.";
      }
    } else {
      $err = "Le titre doit être supérieure ou égale à 5 caractères.";
    }
  } else {
    $err = "La description doit être supérieure ou égale à 20 caractères.";
  }
}
?>

C'est un projet qui me tiens beaucoup à coeur, merci de m'aider...

1 réponse


Carouge10
Réponse acceptée

Bonjour,
pas de htmlspecialchar sur les donnes entrées en bdd, c'est uniquement sur de l'affichage.
tu n'as pas d'erreurs car tu ne les as pas activés. cf la doc de PDO.
car cela t'aurais dis que tu n'as pas fermer ton VALUES...