Jump to content
Anewone

Rien ne s'enregistre dans ma BDD

Recommended Posts

Bonjours les melinyien,

 

J'ai créé un formulaire que j'ai tout-à-fait bien lié à une page de traitement, mais rien ne s'enregistre dans ma bbd.

Je précise qu'aucune erreur ne s'affiche, tout se déroule parfaitement bien... Visiblement. Mais secrètement, les infos transmises via le formulaire ne sont pas du tout enregistrées dans la base de données...

 

 

Je vous mets le code de la page de traitement :

 

<?php

if(isset($_POST['Envoyer']))
{

try
{
    $bdd = new PDO('mysql:host=localhost;dbname=essai;charset=utf8', 'root', '');
}
catch(Exception $e)
{
        die('Erreur : '.$e->getMessage());
}

 


$req = $bdd->prepare('INSERT INTO codef(Greffier, Noloi, Loi, Adoptio, Pour, Contre, Oblatusab, Fonction, Submandatumde, Principioregni, Ultimregni) VALUES("'.$_POST['Greffier'].'", "'.$_POST['Noloi'].'", "'.$_POST['Loi'].'", "'.$_POST['Adoptio'].'", "'.$_POST['Pour'].'", "'.$_POST['Contre'].'", "'.$_POST['Oblatusab'].'", "'.$_POST['Fonction'].'", "'.$_POST['Submandatumde'].'", "'.$_POST['Principioregni'].'", "'.$_POST['Ultimregni'].'")');

$req->execute(array(

    $_POST['Greffier'],

    $_POST['Noloi'],

    $_POST['Loi'],

    $_POST['Adoptio'],

    $_POST['Pour'],

    $_POST['Contre'],

    $_POST['Oblatusab'],

    $_POST['Fonction'],

    $_POST['Submandatumde'],

    $_POST['Principioregni'],

    $_POST['Ultimregni'] ));


header('Location: afloiscodef.php');


/*echo '<span class="accesblock"><p>Loi ajoutée avec succès !</p></span>';*/


}
?>

 

 

 

 

Merci de votre aide, d'avance !

 

P.S : Je ne sais pas comment mettre l'affichage de programmation, désolé.

 

Edited by Anewone
Changement d'un fichier

Share this post


Link to post
Share on other sites

Regarde si $_POST['Envoyer'] est bien défini après avoir envoyer ton formulaire (et donc à l'exécution de la requête). Tu peux utiliser TamperData ou un autre module de ce genre.

 

Share this post


Link to post
Share on other sites

Tu veux dire si mon bouton dans ma page formulaire a bien l'attribut 'Envoyer' ?

Si c'est ça dans ce cas alors oui il l'a bien.

 

Merci de bien vouloir m'aider !

 

 

Share this post


Link to post
Share on other sites

Alors oui si ton champ "Envoyer" est du type "submit", c'est normal qu'il n'existe pas. Du coup effectue ton test avec un autre champ, par exemple, sur ton premier champ

if(isset($_POST['Greffier'])) 
{
	...
}

 

Aussi chose que je n'avais pas vu : tu ne respectes pas les normes d'une requête préparée. En effet, tu ne dois jamais concaténer des variables à ta requête préparée, la PDO s'occupera de lier les variables passées à l'exécution (comme tu as commencé à le faire) avec les variables spécifiques de la requête. Ainsi, tu dois remplacer ta requête par :

$req = $bdd->prepare("INSERT INTO codef(Greffier, Noloi, Loi, Adoptio, Pour, Contre, Oblatusab, Fonction, Submandatumde, Principioregni, Ultimregni) VALUES(?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)");

 

Share this post


Link to post
Share on other sites

Sujet résolu !

 

Ce n'est pas à cause (ou grâce) à ce que tu m'as dit, c'était simplement un problème venant de WAMP64. Lorsque j'ai mis en ligne mon site, le formulaire fonctionnait très bien, une fois complété et envoyé, les infos saisies se retrouvaient bien dans ma base de données phpmyadmin.

 

Merci quand même !

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...

×
×
  • Create New...