Problème liste déroulante et BDD

Résolu/Fermé
lecjoh59 Messages postés 82 Date d'inscription lundi 1 février 2016 Statut Membre Dernière intervention 12 février 2016 - Modifié par lecjoh59 le 1/02/2016 à 11:30
jordane45 Messages postés 38144 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 21 avril 2024 - 3 févr. 2016 à 17:09
Bonjour, j'ai un petit soucis avec un code PHP et HTML. Le problème est : je n'arrive pas à enregistrer les données de la liste déroulante dans la BDD.
PS : Je suis débutant.
Voici mes codes html et php


<head>
        <meta charset="utf-8" />
        <title>Inscription enfant</title>
    </head>

    <body>
    <form method="POST" action="inscription_enfant.php">
 <p>
       <label for="nom">Nom :</label>
       <input type="text" name="nom" id="nom" />
       
       <br></br>
    
       <label for="prenom">Prenom :</label>
       <input type="text" name="prenom" id="prenom" />

    <br></br>
    
    <label for="nom_ecole">Ecole :</label>
  <select id='nom_ecole' onChange='nom_ecole();'>
  <option value=0>Charles Perrault</option>
  <option value=1>Charles Robert</option>
  <option value=2>Groupe Champ Fleuri</option>
  </select>

  <br></br>
  
 <FORM>
  <INPUT TYPE="submit" NAME="submit" VALUE=" Envoyer ">
 </FORM>
 </body>










error_reporting(E_ALL);
  
    if(isset($_POST['submit']))
    { 
    $bdd = new PDO('mysql:host=localhost;dbname=projet;charset=utf8', 'root', '');
      try
    {
        $bdd = new PDO('mysql:host=localhost;dbname=projet;charset=utf8', 'root', '');
        $req = "INSERT INTO inscription_enfant (nom, prenom, nom_ecole)";
        $req .= " VALUES ";

        $req .= "(:nom, :prenom, :nom_ecole)";
        $stmt = $bdd->prepare($req);
        $stmt>bindValue('nom',htmlentities(trim($_POST['nom'])),PDO::PARAM_STR);
        $stmt>bindValue('prenom',htmlentities(trim($_POST['prenom'])),PDO::PARAM_STR);
        $stmt>bindValue('nom_ecole',htmlentities(trim($_POST['nom_ecole'])),PDO::PARAM_STR);
    
        if (!$stmt->execute()) {
            throw new PDOException('insertion impossible');
        }
    }
    catch (Exception $e)
    {
        die('Erreur : ' . $e->getMessage());
    }
    }






Merci d'avance

9 réponses

jordane45 Messages postés 38144 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 21 avril 2024 4 650
Modifié par jordane45 le 1/02/2016 à 11:48
Bonjour,

Il faut, en PHP, lorsque tu utilises un SUBMIT .. mettre un attribut NAME à tes éléments html.
 <select id='nom_ecole' onChange='nom_ecole();'>

A changer par :
 <select id='nom_ecole'   name='nom_ecole'  onChange='nom_ecole();'>


De plus... prend l'habitude de récupérer PROPREMENT tes variables AVANT de les utiliser :
et de séparer la connexion de ta BDD dans un fichier à part (pour ne pas avoir à le modifier partout le jour où tu installes ton script sur un autre serveur.... )

Comme ceci :
<?php
// Fichier  cnxBDD.php de connexion à la BDD
// qu'il suffit d'inclure lorsque tu en as besoin dans tes pages

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


<?php
 //Affichage des erreurs PHP
 error_reporting(E_ALL);

 // connexion à la bdd
 require_once "cnxBDD.php";
 
 
 // Récupération "propre" des variables
 $nom = isset($_POST['nom']) ? htmlentities(trim($_POST['nom'])) : '';
 $nom = isset($_POST['prenom']) ? htmlentities(trim($_POST['prenom'])) : '';
 $nom = isset($_POST['nom_ecole']) ? htmlentities(trim($_POST['nom_ecole'])) : '';

  if(isset($_POST['submit'])) {  
    try {
      $req = "INSERT INTO inscription_enfant (nom, prenom, nom_ecole)
                VALUES(:nom, :prenom, :nom_ecole)";
      $stmt = $bdd->prepare($req);
      $stmt>bindValue('nom',$nom),PDO::PARAM_STR);
      $stmt>bindValue('prenom',$prenom,PDO::PARAM_STR);
      $stmt>bindValue('nom_ecole',$nom_ecole,PDO::PARAM_STR);
    
      if (!$stmt->execute()) {
        throw new PDOException('insertion impossible');
      }
    }catch (Exception $e){
        die('Erreur : ' . $e->getMessage());
    }
  }


Cordialement, 
Jordane                                                                 
0
lecjoh59 Messages postés 82 Date d'inscription lundi 1 février 2016 Statut Membre Dernière intervention 12 février 2016
1 févr. 2016 à 14:08
Salut, merci de l'aide mais j'ai une toute petite erreur c'est que en choisissant l'école dans la liste, il enregistre un numéro au lieu du nom de l'école dans la BDD, comment ça se passe ?

Merci d'avance
0
Pitet Messages postés 2826 Date d'inscription lundi 11 février 2013 Statut Membre Dernière intervention 21 juillet 2022 524
1 févr. 2016 à 14:20
Cela vient du fait que les attributs value de ton select sont des nombres et pas le nom de l'école :
<select id='nom_ecole' name='nom_ecole' onChange='nom_ecole();'>
  <option value="Charles Perrault">Charles Perrault</option>
  <option value="Charles Robert">Charles Robert</option>
  <option value="Groupe Champ Fleuri">Groupe Champ Fleuri</option>
  </select>


Bonne journée
0
lecjoh59 Messages postés 82 Date d'inscription lundi 1 février 2016 Statut Membre Dernière intervention 12 février 2016
1 févr. 2016 à 14:23
Merci pour l'aide mais en mettant tes valeurs, ça change rien. Cela ne viendrait pas de la base ? Parce que dans ma table, j'ai un id, nom, prenom et nom_ecole en varchar 30, cela serait - il ça ?
0
jordane45 Messages postés 38144 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 21 avril 2024 4 650 > lecjoh59 Messages postés 82 Date d'inscription lundi 1 février 2016 Statut Membre Dernière intervention 12 février 2016
1 févr. 2016 à 14:29
Cela vient des "value" dans tes balises OPTIONS
  <option value=0>Charles Perrault</option>
  <option value=1>Charles Robert</option>
  <option value=2>Groupe Champ Fleuri</option>

....
Mais dans l'idéal tu ne stockes pas en toutes lettre le nom des écoles dans ta table "inscription_enfant" mais bien leurs ID.
Pour cela.. .. tu créés une table "ecoles" (avec les champs : id, nom, adresse.....etc... ) dans laquelle tu listes les différentes écoles
puis, tu alimentes ta balises SELECT via une requête sur cette Table.
et ainsi.. dans les VALUE tu stocke les ID correspondant aux écoles

Par la suite, lorsque tu auras besoin d'afficher les informations de ta table inscription_enfant et savoir le "nom" de l'école.. il te suffira de faire un JOINTURE entre ces deux tables.
Un truc du genre :

SELECT *
FROM inscription_enfant I
LEFT JOIN ecoles E ON  E.id = I.id_ecole


Bien entendu, tu auras, au préalable, modifié ta table inscription_enfant en retirant le champ : nom_ecole et en y créant à la place, un champ id_ecole (de type INTEGER )

Dis toi que quand tu conçois une Base de données .. il faut essayer au maximum de représenter chaque "objet" dans une table à part.
Un Eleve est un objet
L'inscription d'un Eleve est un objet
L'école est un objet
Le Pays est un objet
La ville est un objet ..
Etc.....

Ensuite, tu ne travailles qu'avec les ID de ces différents objets et quelques jointures pour récupérer les informations correspondantes lorsque tu en as besoin.
Cela permet de gagner en performance dans les requêtes, te permet d'être plus souple dans le contenu à afficher (par exemple... pour ajouter une nouvelle école dans ta liste... pas besoin de modifier ton code... tu n'as qu'à juste l'ajouter dans ta table )

VOilou.
Bonne continuation.
0
lecjoh59 Messages postés 82 Date d'inscription lundi 1 février 2016 Statut Membre Dernière intervention 12 février 2016
1 févr. 2016 à 15:56
Là j'ai modifier ma base, en créant une table école avec un id, et les 3 nom des écoles, mettre un id_ecole dans inscription_enfant. Par contre, je dois modifier quoi dans mon php pour récupérer l'id choisit ?
Merci d'avance
0
jordane45 Messages postés 38144 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 21 avril 2024 4 650
1 févr. 2016 à 17:20
1 - Je t'ai indiqué qu'il fallait séparer la connexion de ta BDD en le plaçant dans une page à part que tu n'auras qu'à inclure lorsque tu en auras besoin (comme je l'ai fait )
2 - Je t'ai écrit un code en utilisant un ARRAY pour passer les variables... pourquoi as tu remis du BINDPARAM ?
3 - Que vient faire ta boucle sur les écoles dans ce code ?????

4 - Je t'ai écris du code .... il te suffit de le copier/coller TEL QUEL !!!!!!

Donc... dans ta page PHP de traitement tu mets :

<?php
 //Affichage des erreurs PHP
 error_reporting(E_ALL);

 // connexion à la bdd
 require_once "cnxBDD.php";
 
 
 // Récupération "propre" des variables
 $nom = isset($_POST['nom']) ? htmlentities(trim($_POST['nom'])) : '';
 $prenom = isset($_POST['prenom']) ? htmlentities(trim($_POST['prenom'])) : '';
 $id_ecole = isset($_POST['ecole']) ? htmlentities(trim($_POST['ecole'])) : '';

  if(isset($_POST['submit'])) {  
    try {
      $a_datas = array(":nom"=>$nom,":prenom"=>$prenom,":id_ecole"=>$id_ecole);
      $req = "INSERT INTO inscription_enfant (nom, prenom, id_ecole)
                VALUES(:nom, :prenom, :id_ecole)";
      $stmt = $bdd->prepare($req);
      $stmt->execute($a_datas);
    }catch (Exception $e){
        echo "<br>Erreur : " . $e->getMessage();
        echo "<br> <b>Requete :<b><br> ".$req;
        echo "<br> params :<br><pre>";
        print_r($a_datas);
        echo "</pre>";
        exit();
    }
  }



La page de ton formulaire html contient :


<?php
 //Affichage des erreurs PHP
 error_reporting(E_ALL);

 // connexion à la bdd
 require_once "cnxBDD.php";
 
 
 //Récupération des écoles dans la BDD
  try{
  $sql = "SELECT * FROM ecole ";
  $stmt = $bdd->prepare($req);
  $res = $stmt->execute();
  //on stocke le résultat dans un array
  $arr_ecoles = $res->fetchall();
 }catch (Exception $e){
        die('Erreur : ' . $e->getMessage());
    }
?>

<html>
<head>
 <meta charset="utf-8" />
 <title>Inscription enfant</title>
</head>

<body>
  <form method="POST" action="inscription_enfant.php">
    <p>
    <label for="nom">Nom :</label>
    <input type="text" name="nom" id="nom" />
    <br></br>
    <label for="prenom">Prenom :</label>
    <input type="text" name="prenom" id="prenom" />
    <br></br>
    <label for="nom_ecole">Ecole :</label>
    <select id='ecole' name='ecole' onChange='nom_ecole();'>
    <?php
      if($arr_ecoles){
        foreach($arr_ecoles as $ECOLE){   
         echo "<option value='".$ECOLE['id']."'>".$ECOLE['nom']."</option>";
        }
      }
   ?>
    </select>
    <br></br>
    <input type="submit" name="submit" value=" Envoyer ">
  </form>
 </body>
 </html>

=> Bien entendu .. le nom de cette page se termine également par .php

Et pour finir .. si tu ne l'as pas encore fait ... tu créés un fichier PHP avec le nom : cnxBDD.php
dans lequel tu places :
<?php
// Fichier  cnxBDD.php de connexion à la BDD
// qu'il suffit d'inclure lorsque tu en as besoin dans tes pages

try{
   $bdd = new PDO('mysql:host=localhost;dbname=projet;charset=utf8', 'root', '');
} catch (Exception $e){
   die('Erreur : ' . $e->getMessage());
}
?>
0
lecjoh59 Messages postés 82 Date d'inscription lundi 1 février 2016 Statut Membre Dernière intervention 12 février 2016
1 févr. 2016 à 17:24
Merci, je vais tout copier - coller.
0
lecjoh59 Messages postés 82 Date d'inscription lundi 1 février 2016 Statut Membre Dernière intervention 12 février 2016
2 févr. 2016 à 08:46
J'ai tout changer mais en notant 127.0.0.1/inscription_enfant.php il n'y a rien qui s'affiche.
0
jordane45 Messages postés 38144 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 21 avril 2024 4 650 > lecjoh59 Messages postés 82 Date d'inscription lundi 1 février 2016 Statut Membre Dernière intervention 12 février 2016
Modifié par jordane45 le 2/02/2016 à 09:12
inscription_enfant.php ... c'est le nom de la page contenant ton formulaire HTML ?
Je ne pense pas...
vu que cette page... c'est celle utilisée dans ton FORM
<form method="POST" action="inscription_enfant.php">

.... donc normal que ça n'affiche rien vu que tu n'aies pas passé par le formulaire......!!!!!!!
0
lecjoh59 Messages postés 82 Date d'inscription lundi 1 février 2016 Statut Membre Dernière intervention 12 février 2016
2 févr. 2016 à 09:22
Merci c'était juste une erreur d'innatention, par contre, dans la liste déroulante des écoles je n'ai aucune école, faut que je rajoute les valeurs et les noms ?
0
jordane45 Messages postés 38144 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 21 avril 2024 4 650 > lecjoh59 Messages postés 82 Date d'inscription lundi 1 février 2016 Statut Membre Dernière intervention 12 février 2016
2 févr. 2016 à 10:07

je n'ai aucune école, faut que je rajoute les valeurs et les noms ?

Non... normalement ça se fait automatiquement...
Tu as bien nommé la table ecole (sans accent) ??
Peux tu nous montrer la structure de ta table ?
0
lecjoh59 Messages postés 82 Date d'inscription lundi 1 février 2016 Statut Membre Dernière intervention 12 février 2016
2 févr. 2016 à 15:28
<?php

 error_reporting(E_ALL);

 require_once "cnxBDD.php";
 
  try{
  $sql = "SELECT * FROM ecole ";
  $stmt = $bdd->prepare($req);
  $res = $stmt->execute();
  $arr_ecoles = $res->fetchall();
 }catch (Exception $e){
        die('Erreur : ' . $e->getMessage());
    }
?>

<html>
<head>
 <meta charset="utf-8" />
 <title>Inscription enfant</title>
</head>

<body>
<form method="POST" action="traitement_enfant.php">
    <p>
    <label for="nom">Nom :</label>
    <input type="text" name="nom" id="nom" />
    <br></br>
    <label for="prenom">Prenom :</label>
    <input type="text" name="prenom" id="prenom" />
    <br></br>
    <label for="nom_ecole">Ecole :</label>
    <select id='ecole' name='ecole' onChange='nom_ecole();'>
	<option value =1>Charles Perrault</option>
	<option value=2>Charles Robert</option>
	<option value=3>Groupe Champ Fleuri</option>
    <?php
      if($arr_ecoles){
        foreach($arr_ecoles as $ECOLE){   
         echo "<option value='".$ECOLE['id']."'>".$ECOLE['nom']."</option>";
        }
      }
   ?>
    </select>
    <br></br>
    <input type="submit" name="submit" value=" Envoyer ">
</form>
 </body>







 error_reporting(E_ALL);

 require_once "cnxBDD.php";
 
 $nom = isset($_POST['nom']) ? htmlentities(trim($_POST['nom'])) : '';
 $prenom = isset($_POST['prenom']) ? htmlentities(trim($_POST['prenom'])) : '';
 $id_ecole = isset($_POST['ecole']) ? htmlentities(trim($_POST['ecole'])) : '';

  if(isset($_POST['submit'])) {  
    try {
      $a_datas = array(":nom"=>$nom,":prenom"=>$prenom,":id_ecole"=>$id_ecole);
      $req = "INSERT INTO inscription_enfant (nom, prenom, id_ecole)
                VALUES(:nom, :prenom, :id_ecole)";	
      $stmt = $bdd->prepare($req);
      $stmt->execute($a_datas);	  
    }catch (Exception $e){
        echo "<br>Erreur : " . $e->getMessage();
        echo "<br> <b>Requete :<b><br> ".$req;
        echo "<br> params :<br><pre>";
        print_r($a_datas);
        echo "</pre>";
        exit();
    }
  }
0
jordane45 Messages postés 38144 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 21 avril 2024 4 650
2 févr. 2016 à 15:30
Que viennent faire ces lignes
<option value =1>Charles Perrault</option>
	<option value=2>Charles Robert</option>
	<option value=3>Groupe Champ Fleuri</option>

dans ton code ?????


Retires les !
0
lecjoh59 Messages postés 82 Date d'inscription lundi 1 février 2016 Statut Membre Dernière intervention 12 février 2016
2 févr. 2016 à 15:36
En les retirant, il n'y a aucune valeur dans la liste aussi.
0
jordane45 Messages postés 38144 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 21 avril 2024 4 650 > lecjoh59 Messages postés 82 Date d'inscription lundi 1 février 2016 Statut Membre Dernière intervention 12 février 2016
2 févr. 2016 à 16:11
Le fichier qui contient ton formulaire html ... il se nomme comment ? Il finit bien par ".php" ??

Que donne ce code :
<?php
 error_reporting(E_ALL);
 //connexion à la BDD
 require_once "cnxBDD.php";
 
 try{
  $sql = "SELECT * FROM ecole ";
  $stmt = $bdd->prepare($req);
  $res = $stmt->execute();
  $arr_ecoles = $stmt->fetchAll();
	
	//le temps des tests :
	echo "<pre>";
	print_r($arr_ecoles);
	echo "</pre>";
	
 }catch (Exception $e){
   die('Erreur : ' . $e->getMessage());
 }
?>

<html>
<head>
 <meta charset="utf-8" />
 <title>Inscription enfant</title>
</head>

<body>
  <form method="POST" action="traitement_enfant.php">
    <p>
    <label for="nom">Nom :</label>
    <input type="text" name="nom" id="nom" />
    <br></br>
    <label for="prenom">Prenom :</label>
    <input type="text" name="prenom" id="prenom" />
    <br></br>
    <label for="ecole">Ecole :</label>
    <select id='ecole' name='ecole'>
    <?php
      if($arr_ecoles){
        foreach($arr_ecoles as $ECOLE){   
         echo "<option value='".$ECOLE['id']."'>".$ECOLE['nom']."</option>";
        }
      }
   ?>
    </select>
    <br></br>
    <input type="submit" name="submit" value=" Envoyer ">
  </form>
</body>
</html>
         

0
lecjoh59 Messages postés 82 Date d'inscription lundi 1 février 2016 Statut Membre Dernière intervention 12 février 2016
2 févr. 2016 à 16:15
En le nommant en .php, il y a ça en erreurs :

Notice: Undefined variable: req in C:\Program Files\EasyPHP-DevServer-14.1VC9\data\localweb\projet\inscription_enfant.php on line 9

Fatal error: Call to a member function fetchall() on a non-object in C:\Program Files\EasyPHP-DevServer-14.1VC9\data\localweb\projet\inscription_enfant.php on line 11
0
jordane45 Messages postés 38144 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 21 avril 2024 4 650 > lecjoh59 Messages postés 82 Date d'inscription lundi 1 février 2016 Statut Membre Dernière intervention 12 février 2016
2 févr. 2016 à 16:17
Désolé...
Modifie la ligne :
$stmt = $bdd->prepare($req);

Par :
$stmt = $bdd->prepare($sql);
0
lecjoh59 Messages postés 82 Date d'inscription lundi 1 février 2016 Statut Membre Dernière intervention 12 février 2016
3 févr. 2016 à 10:23
Photo :

0
jordane45 Messages postés 38144 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 21 avril 2024 4 650
3 févr. 2016 à 10:29
Pour la structure de ta table :
Le champ ID : OK

Mais ensuite.... Je t'ai dit de mettre un champ NOM ... où est-il ????
A la place... toi ... tu as créé autant de "champs" ... que d'ecoles.... ce n'est pas comme ça que fonctionne une BDD !!!!!!!!!

Au niveau de la structure de ta table , tu devrais avoir simplement comme champs :
ID (auto incrémenté / clé Primaire )
NOM varchar(256)


Puis ... DANS la table .... les données :
1 Charles Perrault
2 Charles Robert
3 Groupe Champ Fleuri
0
lecjoh59 Messages postés 82 Date d'inscription lundi 1 février 2016 Statut Membre Dernière intervention 12 février 2016
3 févr. 2016 à 11:00
Quand tu parles dans la table, ça marche comment ?
0
jordane45 Messages postés 38144 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 21 avril 2024 4 650 > lecjoh59 Messages postés 82 Date d'inscription lundi 1 février 2016 Statut Membre Dernière intervention 12 février 2016
3 févr. 2016 à 11:29
Ben.... de la même façon que ta table inscription_enfant .....

La table inscription_enfant ....
elle contient les champs : nom prenom id_ecole ....
et DEDANS ... tu as bien des VALEURS ....
NON ?????
0
lecjoh59 Messages postés 82 Date d'inscription lundi 1 février 2016 Statut Membre Dernière intervention 12 février 2016
3 févr. 2016 à 11:49
Bah oui, donc dans ecole, je met 3 champ nom avec comme valeur le nom des écoles ?
0
jordane45 Messages postés 38144 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 21 avril 2024 4 650 > lecjoh59 Messages postés 82 Date d'inscription lundi 1 février 2016 Statut Membre Dernière intervention 12 février 2016
3 févr. 2016 à 11:57
NONNNNNN !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

Prenons un autre exemple ..... tu connais EXCEL ???
Dans Excel .. tu as des colonnes ... ( les colonnes.... c'est tes "champs" de ta BDD )
Par exemple... dans la colonne "A" .. tu mets l' ID ( 1 , 2 , 3 .....)
Dans la colonne "B" tu places les noms des écoles ....
===>> sur une ligne tu as donc : un ID ... puis un nom d'école
puis à la ligne suivante... un autre ID ... puis une autre ecole....
etc....


Si tu ne comprends pas ça ... il va sérieusement falloir que tu commences par reprendre les BASES ( le BaBa ) de ce que sont les Bases de données.... et leur utilisation !!!!!!
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
jordane45 Messages postés 38144 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 21 avril 2024 4 650
3 févr. 2016 à 12:02
Regardes :

Par exemple... j'ai une table contenant des champs : ID CHAMP CHAMP2 TYP



Dans cette table .. j'ai des données :



Facile non ???

0
lecjoh59 Messages postés 82 Date d'inscription lundi 1 février 2016 Statut Membre Dernière intervention 12 février 2016
3 févr. 2016 à 13:56
Mais là il me dit entrer une longueur valide pour le champ nom
0
jordane45 Messages postés 38144 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 21 avril 2024 4 650 > lecjoh59 Messages postés 82 Date d'inscription lundi 1 février 2016 Statut Membre Dernière intervention 12 février 2016
3 févr. 2016 à 13:57
Peux tu me montrer la STRUCUTE de ta table corrigée suite à mes remarques ?
Quelle "taille" as tu mis pour le champ NOM ?
Quel texte essayes tu d'y mettre ?
0
lecjoh59 Messages postés 82 Date d'inscription lundi 1 février 2016 Statut Membre Dernière intervention 12 février 2016
3 févr. 2016 à 14:03
Taille champ nom : 256
J'eesaye de emttre Charles Perrault...
0
jordane45 Messages postés 38144 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 21 avril 2024 4 650 > lecjoh59 Messages postés 82 Date d'inscription lundi 1 février 2016 Statut Membre Dernière intervention 12 février 2016
3 févr. 2016 à 14:06
Et quel "type" de champ as tu choisi ?
Peux tu nous mettre une capture écran lorsque tu rencontres ce message d'erreur ??
0
lecjoh59 Messages postés 82 Date d'inscription lundi 1 février 2016 Statut Membre Dernière intervention 12 février 2016
3 févr. 2016 à 14:09
Photo

0
jordane45 Messages postés 38144 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 21 avril 2024 4 650
3 févr. 2016 à 14:14
....heu..... tu as vu que là ... tu essayes de saisie un texte dans la zone "Taille/Valeur" ???
Cette zone sert à DEFINIR la"taille" du champ .... pas y mettre des données !
Dans cette zone là .. tu dois mettre 256 par exemple....

Ensuite ... pour remplir ta TABLE tu vas devoir aller dans l'onglet "INSERER" !!!!
0
lecjoh59 Messages postés 82 Date d'inscription lundi 1 février 2016 Statut Membre Dernière intervention 12 février 2016
3 févr. 2016 à 14:23
Comme ça ?

0
jordane45 Messages postés 38144 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 21 avril 2024 4 650
3 févr. 2016 à 14:24
vouiiiiiii ........ \o/
:-)
0
lecjoh59 Messages postés 82 Date d'inscription lundi 1 février 2016 Statut Membre Dernière intervention 12 février 2016
3 févr. 2016 à 14:31
C'est ça exactement ?

0
jordane45 Messages postés 38144 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 21 avril 2024 4 650
3 févr. 2016 à 14:37
Parfait.
0
lecjoh59 Messages postés 82 Date d'inscription lundi 1 février 2016 Statut Membre Dernière intervention 12 février 2016
3 févr. 2016 à 14:38
Maintenant que les noms sont rentrés, j'ai plus rien à modifier ?
0
jordane45 Messages postés 38144 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 21 avril 2024 4 650 > lecjoh59 Messages postés 82 Date d'inscription lundi 1 février 2016 Statut Membre Dernière intervention 12 février 2016
3 févr. 2016 à 14:39
Ben... je ne sais pas ...
Tu as testé ton code pour voir ??
0
lecjoh59 Messages postés 82 Date d'inscription lundi 1 février 2016 Statut Membre Dernière intervention 12 février 2016
3 févr. 2016 à 14:42
Il me fait ça et dans la BDD j'ai pas le nom de l'école :

0
jordane45 Messages postés 38144 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 21 avril 2024 4 650
3 févr. 2016 à 14:55

dans la BDD j'ai pas le nom de l'école

C'est à dire ???
Dans quelle table ???
Qu'est-ce que la table contient ?
Quelle est sa structure ??


Pour ce qui est de l'affichage sur ta page... lui me semble bon (au vu du code que nous y avons mis )
0
lecjoh59 Messages postés 82 Date d'inscription lundi 1 février 2016 Statut Membre Dernière intervention 12 février 2016
3 févr. 2016 à 14:57
En fait, moi je voudrais pas l'id dans la base mais le nom de l'école
0
jordane45 Messages postés 38144 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 21 avril 2024 4 650 > lecjoh59 Messages postés 82 Date d'inscription lundi 1 février 2016 Statut Membre Dernière intervention 12 février 2016
3 févr. 2016 à 14:59
Non..
Le principe ( question de performances....) c''est de ne mettre que l' ID.....

Ensuite... si tu veux récupérer le contenu de la table... tout en ayant le nom de l'école correspondnat à l' ID .. il suffit de faire une JOINTURE.

Testes la requete suivante tu comprendras (j'espère... )
SELECT *
FROM inscription_enfant  I
LEFT JOIN ecole E  ON E.id = I.id_ecole
0
lecjoh59 Messages postés 82 Date d'inscription lundi 1 février 2016 Statut Membre Dernière intervention 12 février 2016
3 févr. 2016 à 16:24
Faut la mettre dans la page inscription ou traitement ?
0
jordane45 Messages postés 38144 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 21 avril 2024 4 650 > lecjoh59 Messages postés 82 Date d'inscription lundi 1 février 2016 Statut Membre Dernière intervention 12 février 2016
3 févr. 2016 à 16:30
..... Pour l'instant... il faut la mettre nul part !!!!!

Je te l'ai donné pour que tu la testes DIRECTEMENT dans ta BDD (en passant par l'onglet SQL de ton phpmyadmin par exemple )
0