Page 1 sur 1

rien ne se passe dans ma base de données

Posté : 04 sept. 2013, 18:49
par cjik1
Bonsoir aux membres du forum

j'ai deux pages: un formulaire pour entrer les données :ecrirebasedonnee.php et une autre page de traitement: traitement_notes.php
quand je remplie mon formulaire, rien ne se passe dans ma base de données quand je clicque sur envoyez!!! et il n'ya pas d'erreur.
page 1:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" lang="fr">
    <head>
        <title>insertion-notes-eleve</title>
        <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
    </head>
    <style type="text/css">
    form
    {
        text-align:center;
    }
    </style>
    <body>
     <p>entrer les notes des élèves ici</p>
    <form action="traitement_notes.php" method="post">
        <p>
        <label for="Noms">Noms</label>:<input type="text"name="Noms"id="Noms"/><br/>
        <label for="prenoms">prenoms</label>:<input type="text"name="prenoms"id="prenoms"/><br/>
		<label for="notes">notes</label>:<input type="text"name="notes"id="notes"/><br/>
		<label for="apreciations">apreciations</label>:<input type="text"name="apreciations"id="apreciations"/><br/>
        <input type="submit"value="Envoyer"/>
    </p>
    </form>
	</body>
</html>
page 2
<?php
if (isset($_POST['Noms'],$_POST['prenoms'],$_POST['notes'],$_POST['apreciations'])) // On a les entrées On doit toujours commencer par if isset pour s'assurer que les paramètres existent
{
// Connexion à la base de données
try
{
    $bdd = new PDO('mysql:host=localhost;dbname=test', 'root', '');
}
catch(Exception $e)
{
        die('Erreur : '.$e->getMessage());
}
 
// Insertion du message à l'aide d'une requête préparée
$req = $bdd->prepare('INSERT INTO  note_eleve_terminalea4(Noms,prenoms,notes,apreciations)VALUES(?,?,?,?)');
$req->execute(array($_POST['Noms'],$_POST['prenoms'],$_POST['notes'],$_POST['apreciations']));




}

else // Il manque des paramètres, on avertit le visiteur
{
    echo 'la note a été ajoutée , merci de votre fidelité à ce site  !';
}//code normal et bien securisé

 ?>

Re: rien ne se passe dans ma base de données

Posté : 04 sept. 2013, 18:54
par xTG
Ce code :
echo 'la note a été ajoutée , merci de votre fidelité à ce site  !';
est ton else, il est donc affiché quand justement l'insertion ne se fait pas à cause de variable non existante.

Actives les erreurs de PDO : http://fr2.php.net/manual/en/pdo.error-handling.php

Rajoutes un echo de debug après l'exécution de ta requête pour être certain d'avoir exécuté cette portion de code.

Re: rien ne se passe dans ma base de données

Posté : 04 sept. 2013, 19:07
par cjik1
Bonsoir
Mefci de l'intérêt our mon message
je suis un vrai débutant
pouvez-vous reprendre mon code afin qu'il soit fonctionnel?

Re: rien ne se passe dans ma base de données

Posté : 04 sept. 2013, 19:31
par juliette
A quoi te réfère tu pour dire que ca na marche pas ?

Re: rien ne se passe dans ma base de données

Posté : 04 sept. 2013, 21:28
par xTG
je suis un vrai débutant
pouvez-vous reprendre mon code afin qu'il soit fonctionnel?
Quand on est débutant on pose les questions, on demande pas un code tout fait en général.
Ou bien comptes-tu rester débutant toute ta vie ?
Certains te répondraient que si tu veux un code tout fait il y a la section "Offre d'emploi" sur ce forum qui est faite pour cela.

Re: rien ne se passe dans ma base de données

Posté : 04 sept. 2013, 21:48
par Invité
A quoi te réfère tu pour dire que ca na marche pas ?
Bonsoir
svp, aidez moi!!!

Re: rien ne se passe dans ma base de données

Posté : 05 sept. 2013, 11:16
par moogli
Modération :
Les "up" sont interdits sur PHPFrance.

Si tu n'as pas obtenu de réponse, c'est (au choix) :
- que ta question est mal formulée : reformule-la différemment ;
- que personne ne connaît la réponse ici : faire un "up" ne te donnera pas davantage de résultats ;
- que la réponse demandée exige un travail important que personne ne va faire à ta place ;
- que trop peu de temps s'est écoulé depuis ton précédent message pour qu'un membre ait pu y répondre.

Merci de prendre le temps de lire les règlements.


salut,

si tu ne répond pas aux questions on ne peux pas t'aider.

As tu essayé l'indication de xTG ?

il faut toujours tester le retour de prepare ou execute afin de vérifier qu'il soit bien différent de false et si c'est le cas l'erreur est disponible avec la méthode errorInfo()

Ne connaissant pas la structure de la table on ne peu pas savoir si ta requête est effectivement bonne.

Comme déjà dit le message dans le else doit être un message d'erreur (un champ du formulaire n'est pas présent). C'est d'ailleurs ce qui et écrit dans les commentaire du code.

tu peux debogguerton script. (var_dump sera une excellente alliée dans cette démarche).

@+

Re: rien ne se passe dans ma base de données

Posté : 07 sept. 2013, 07:16
par cjik1
Bonjour mes amis du Forum vous avez été nombreux à me guider à trouver la solution à mon code. mon code marche maintenant:

ce que j'ai retenu:

-trop d'espaces au milieu des codes bloquent l'exécution d'un programme. mon problème était là et il m'a fallu presque presque une semaine pour arriver à bout.

je suis sur les leçons suivantes:

1-lire dans une table de données

2-écrire dans une table de données

3-modifier dans sur table de données

4-supprimer dans une table de données

je viens de finir les deux premier avec succès.

aujourd'hui, je commence avec le 3.

Chers amis, si vous connaissez là où il y a des exercices pour débutant en php, indiquez moi.

grand merci pour vos sacrifices qui me font avancer surement.

Re: [RESOLU] rien ne se passe dans ma base de données

Posté : 07 sept. 2013, 09:05
par xTG
Le site phpdebutant.org propose des tutoriaux très abordable pour les débutants. :)