Requête sql oracle qui ne marche pas

Fermé
msi79 Messages postés 509 Date d'inscription lundi 24 août 2009 Statut Membre Dernière intervention 2 mai 2023 - 13 août 2011 à 16:09
 msi79 - 1 sept. 2011 à 22:12
salut j'ai crée un code pour inserer les notes des eleves dans ma base de donnée oracle .
mais aucune insertions de note ne se passe .
voici mes tables :
eleve( NUM,NOM,PRENOM,CLASSE,AGE,)
participe(id_eleve,id_eval,date_eval,note) /////////// id_eleve fait reference a NUM
evaluation(id_eval,,type_eval)

et voici mon code :
<?php
// connexion au sgbd de toute façon c'est utilisé par tout dans la page 
$conn = oci_connect("zana", "cool75sool", '(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = localhost.localdomain)(PORT = 1521))
(ADDRESS = (PROTOCOL = TCP)(HOST = localhost.localdomain)(PORT = 1521))
)
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = orcldb)
(INSTANCE_NAME = orcldb)
(GLOBAL_NAME = orcldb)
))');

if (isset($_POST["Valider"])) {
// la suite est discutable un array_walk (par exemple) opurr être plus intérréssant <img src="./images/smilies/icon_wink.gif" alt=";)" title="Wink" />
//$NOM=trim($_POST["NOM"]);
$id_evaluation=trim($_POST["id_evaluation"]);
$id_eleve=trim($_POST["id_eleve"]);
$NOTE=trim($_POST["NOTE"]);

//Dans ma base de donnée j'ai deja enregistrer des eleves de différentes classes
//apres avoir fait une evaluation je veux enregistrer les notes des éleves par exemples ceus de la 4eme classe
// alors je crée une requtte sql qui me permet d'abord de faire une selection des eleves de la 4eme5

//au cas ou ces élèves existent ,dans le champ NOTE qui doit se trouver devant chaque nom ,j'inscrit la note de cet élève  

if (!empty($NOM)) { 
    $sql=oci_parse($conn,"INSERT INTO participe (NOTE,id_eleve,id_evaluation) values ('".$NOTE."','".$id_eleve."','".$id_evaluation."')");
    $result = oci_execute($sql);
    //Analyse et exécution d'autres commandes ici...
    // Validation de la transaction
    $committed = oci_commit($conn);// utilise
    // Vérification de la validation : si une erreur est survenue, afficher
    // le message d'erreur
    if (!$committed) {
        $error = oci_error($conn);
        echo 'Validation échouée. Oracle dit : ' . $error['message'];
    }
    else{ 
	    
        echo '------------------------Insersion OK !!!!!!!!!';}
    }
   }
else
   { // au cas ou lélève n'existe pas alors je reçois ce message
       echo "LE NOM DE l'élève ne peux être vide !!!";
   }
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>Document sans titre</title>
<style type="text/css">
<!--
.Style3 {color: #FFFFFF}
.Style4 {color: #FFFFFF; font-weight: bold; }
.Style5 {
color: #CCCCCC;
font-weight: bold;
}
.Style6 {
	color: #0000FF;
	font-weight: bold;
}
-->
</style>
</head>

<body>

<div align="center">
<h1><a href="MonSiteOK.php" title="Acceuil !!!!" class="Style5">
<input type="image" name="imageField" src="btmylod_1.png" />
</a><em>>>> LISTE DES ELEVES DE 4ème 5 </em> <<<
</h1>
</div>
<table width="888" border="0" align="center" cellspacing="2">
  <tr bgcolor="#999999">
    <th width="22" scope="row">N°</th>
    <th width="42" scope="row"><span class="Style3">NOM</span></th>
    <td width="73"><div align="center" class="Style4">PRENOM</div></td>
    <td width="61"><div align="center" class="Style4">CLASSE</div></td>
    <td><div align="center" class="Style4">-----ENREGISTRER VOTRE NOTE PAR ICI !!!!!!!! ------ </div>      <div align="center" class="Style3"></div>      <div align="center" class="Style3"></div></td>
    <td width="82"><div align="center" class="Style4">MaNote</div></td>
  </tr>
  <?php
$i=0;
$paire= '33FFFF';
$impaire= 'C0C0C0';
// requete SQL pour l'affichage de la table 
$res = oci_parse($conn,"SELECT NUM,NOM,PRENOM,CLASSE FROM eleve WHERE CLASSE='4eme5' ORDER BY NOM ASC");
if ($res === false ){
    // affichage d'un message d'erreur !
}
else {
    $req = oci_execute($res);
    if ($req === false ){
        // affiche le message d'erreur. 
    }
    else {
        // la je met des { pour le else mais sans ça fait pareil <img src="./images/smilies/icon_wink.gif" alt=";)" title="Wink" />
        while($liste_etu = oci_fetch_assoc($res)) {
        ?>
  <tr bgcolor="#<?php
        if( ($i%2) === 0) echo $paire;
        else echo $impaire; ?>">
    <td><?php echo $liste_etu['NUM'] ?></td>
    <td><?php echo $liste_etu['NOM'] ?></td>
    <td><?php echo $liste_etu['PRENOM'] ?></td>
    <td><?php echo $liste_etu['CLASSE'] ?></td>
    <td><form id="form1" name="form1" method="post" action="">
      <span class="Style6">NOTE</span>
      <input type="text" name="NOTE" value="" />
      <span class="Style6">id_eleve</span>
      <select name="id_eleve">
        <option>1</option>
        <option>2</option>
        <option>3</option>
        <option>4</option>
        <option>5</option>
        <option>6</option>
        <option>7</option>
        <option>8</option>
        <option>9</option>
        <option>10</option>
        <option>11</option>
        <option>12</option>
        <option>13</option>
        <option>14</option>
        <option>15</option>
        <option>16</option>
        <option>17</option>
        <option>18</option>
        <option>19</option>
        <option>20</option>
        <option>21</option>
        <option>22</option>
        <option>23</option>
        <option>24</option>
        <option>25</option>
        <option>26</option>
        <option>27</option>
        <option>28</option>
        <option>29</option>
        <option>30</option>
        <option>31</option>
        <option>32</option>
        <option>33</option>
        <option>34</option>
        <option>35</option>
        <option>36</option>
        <option>37</option>
        <option>38</option>
        <option>38</option>
        <option>40</option>
        <option>41</option>
        <option>42</option>
        <option>43</option>
        <option>44</option>
        <option>45</option>
        <option>46</option>
        <option>47</option>
        <option>48</option>
        <option>49</option>
        <option>50</option>
        <option>51</option>
        <option>52</option>
        <option>53</option>
        <option>54</option>
        <option>55</option>
        <option>56</option>
        <option>57</option>
        <option>58</option>
        <option>59</option>
        <option>60</option>
        <option>61</option>
        <option>62</option>
        <option>63</option>
        <option>64</option>
        <option>65</option>
        <option>66</option>
        <option>67</option>
        <option>68</option>
        <option>69</option>
        <option>70</option>
        <option>71</option>
        <option>72</option>
        <option>73</option>
        <option>74</option>
        <option>75</option>
        <option>76</option>
        <option>77</option>
        <option>78</option>
        <option>79</option>
        <option>80</option>
      </select>
      <span class="Style6">      id_evaluat°</span>
      <select name="id_evaluation">
        <option>1</option>
        <option>2</option>
        <option>3</option>
        <option>4</option>
        <option>5</option>
        <option>6</option>
        <option>7</option>
        <option>8</option>
        <option>9</option>
        <option>10</option>
        <option>11</option>
        <option>12</option>
        <option>13</option>
        <option>14</option>
        <option>15</option>
      </select>
      <input type="submit" name="Valider" value="Envoyer" />
    </form>      </td>
    <td><?php //echo $liste_etu['NOTE'] ; ?></td>
  </tr>
  <?php
        $i++;
        }
}
}
?>
</table>
<p>&nbsp;</p>
</body>
</html>

10 réponses

le champ date_eval doit etre comment alors
1