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

Petit nouveau ! | 5 Messages

04 sept. 2013, 18:49

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é

 ?>

ViPHP
xTG
ViPHP | 7331 Messages

04 sept. 2013, 18:54

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.

Petit nouveau ! | 5 Messages

04 sept. 2013, 19:07

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?

Mammouth du PHP | 790 Messages

04 sept. 2013, 19:31

A quoi te réfère tu pour dire que ca na marche pas ?
Les fautes de grammaire et d'orthographe contenu dans mes postes sont sous copyright, vous pouvez les utiliser pour un usage personnelle mais vous ne devrez en aucun cas les utiliser a des fins commercial sans une autorisation écrite de ma part.

ViPHP
xTG
ViPHP | 7331 Messages

04 sept. 2013, 21:28

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.

Invité
Invité n'ayant pas de compte PHPfrance

04 sept. 2013, 21:48

A quoi te réfère tu pour dire que ca na marche pas ?
Bonsoir
svp, aidez moi!!!

Avatar du membre
Modérateur PHPfrance
Modérateur PHPfrance | 8758 Messages

05 sept. 2013, 11:16

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).

@+
Il en faut peu pour être heureux ......

Petit nouveau ! | 5 Messages

07 sept. 2013, 07:16

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.

ViPHP
xTG
ViPHP | 7331 Messages

07 sept. 2013, 09:05

Le site phpdebutant.org propose des tutoriaux très abordable pour les débutants. :)