Advertisement
Guest User

Untitled

a guest
Apr 24th, 2017
94
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 9.69 KB | None | 0 0
  1. <?php
  2. /**
  3. * Gestion des négociants : mise à jour d'un négociant
  4. *
  5. *
  6. * @author dk
  7. * @package default
  8. */
  9.  
  10. // inclure les bibliothèques de fonctions
  11. require_once '_config.inc.php';
  12. require_once 'include/_data.lib.php';
  13.  
  14. session_start(); // début de session
  15.  
  16. ?>
  17.  
  18. <!DOCTYPE html>
  19. <html>
  20. <head>
  21. <title>BioGro - Coopérative Agricole de Groville</title>
  22. <meta http-equiv="content-type" content="text/html; charset=UTF-8" />
  23. <meta lang="fr">
  24. <link rel="stylesheet" type="text/css" href="styles/screen.css" />
  25. </head>
  26. <body>
  27. <?php include("include/header.php") ; ?>
  28. <?php include("include/menu.php") ; ?>
  29. <div id="contenu">
  30. <h2>Gestion des contrats</h2>
  31. <?php
  32. // variables pour la gestion des erreurs
  33. $tabErrors = array();
  34. $hasErrors = false;
  35. $afficherForm = true;
  36. if (isset($_REQUEST["id"]))
  37. {
  38. $intNoContrat = intval($_REQUEST["id"]);
  39. // ouvrir une connexion
  40. $cnx = connectDB();
  41. // définition de la requête
  42. $strSQL = "SELECT c.nocontrat, n.nomnegociant, ce.variete, c.qtecde, c.prixcontrat "
  43. ."FROM contrat c "
  44. ."INNER JOIN negociant n "
  45. ."ON c.nonegociant = n.nonegociant "
  46. ."INNER JOIN cereale ce "
  47. ."ON c.codecereale = ce.codecereale "
  48. ."WHERE nocontrat = ".$intNoContrat;
  49. $leContrat = getRows($cnx,$strSQL,0);
  50. $res = rowsOK($leContrat);
  51. if (!is_array($res))
  52. {
  53. // récupérer les données du contrat
  54. $strNoContrat = $leContrat[0][0];
  55. $strNomNegociant = $leContrat[0][1];
  56. $strVariete = $leContrat[0][2];
  57. $intqtecde = $leContrat[0][3];
  58. $intPrixContrat = $leContrat[0][4];
  59. }
  60. else
  61. {
  62. // erreur
  63. if (!isAppProd())
  64. {
  65. $tabErrors["Message"] = $res[0].' : '.$res[1];
  66. $tabErrors["SQL"] = $strSQL;
  67. }
  68. else
  69. {
  70. $tabErrors["Message"] = $res[0].' : Une erreur s\'est produite, veuillez essayer ultérieurement';
  71. }
  72. $hasErrors = true;
  73. $afficherForm = false;
  74. }
  75. disconnectDB($cnx);
  76. }
  77. else
  78. {
  79. // pas d'id dans l'url
  80. $tabErrors["Erreur"] = "Aucun identifiant présent dans l'URL !";
  81. $hasErrors = true;
  82. $afficherForm = false;
  83. }
  84. // tester le clic sur le bouton Valider
  85. if (isset($_POST["cmdValider"]))
  86. {
  87. // test des zones obligatoires
  88. if (!empty($_POST["txtCommande"]))
  89. {
  90. $intqtecde = strip_tags($_POST["txtCommande"]);
  91. $intPrixContrat = strip_tags($_POST["txtPrix"]);
  92. // autres contrôles...
  93. }
  94. else
  95. {
  96. if (empty($_POST["txtCommande"]))
  97. {
  98. $tabErrors["Commande"] = "La quantité de la commande doit être renseigné !";
  99. $hasErrors = true;
  100. }
  101.  
  102. }
  103. // si pas d'erreur, mise à jour dans la base
  104. if (!$hasErrors)
  105. {
  106. // ouvrir une connexion
  107. $cnx = connectDB();
  108. // définition de la requête
  109. if ($intPrixContrat == 0)
  110. {
  111. $strSQL = "UPDATE contrat "
  112. . "SET qtecde = '".$intqtecde
  113.  
  114. . "' WHERE nocontrat = ".$intNoContrat;
  115. }
  116. else
  117. {
  118. $strSQL = "UPDATE contrat "
  119. . "SET qtecde = '".$intqtecde
  120. ."', prixcontrat ='".$intPrixContrat
  121. . "' WHERE nocontrat = ".$intNoContrat;
  122. }
  123. $affected = execSQL($cnx,$strSQL);
  124. $res = rowsOK($affected);
  125. if (!is_array($res))
  126. {
  127. header("location:consulterContrat.php?id=".$intNoContrat);
  128. }
  129. else
  130. {
  131. // erreur
  132. if (!isAppProd())
  133. {
  134. $tabErrors["Message"] = $res[0].' : '.$res[1];
  135. $tabErrors["SQL"] = $strSQL;
  136. }
  137. else
  138. {
  139. $tabErrors["Message"] = $res[0].' : Une erreur s\'est produite, veuillez essayer ultérieurement';
  140. }
  141. $hasErrors = true;
  142. }
  143. disconnectDB($cnx);
  144. $cnx = NULL;
  145. }
  146. }
  147. // afficher les erreurs
  148. if ($hasErrors)
  149. {
  150. foreach ($tabErrors as $code => $message)
  151. {
  152. echo '<span class="erreur">'.$code.' : '.$message.'</span>';
  153. }
  154. }
  155. // afficher le formulaire de saisie
  156. if ($afficherForm)
  157. {
  158. ?>
  159. <div id="breadcrumb">
  160. <a href="listerContrat.php">Retour à la liste des Contrats</a>
  161. </div>
  162. <form action="modifierContrat.php" method="post" >
  163. <div id="corpsForm">
  164. <fieldset>
  165. <legend>Modifier un contrat</legend>
  166. <table>
  167.  
  168. <!-- Numero du contrat !-->
  169. <tr>
  170. <td><label>Numéro :</label></td>
  171. <td>
  172. <input type="text" id="txtID" name="id"
  173. value="<?php echo $intNoContrat ?>"
  174. readonly required
  175. />
  176. </td>
  177. </tr>
  178.  
  179. <!-- nom du négociant !-->
  180. <tr>
  181. <td><label>Nom :</label></td>
  182. <td>
  183. <input type="text" id="txtNom" name="txtNom"
  184. value="<?php echo $strNomNegociant ?>"
  185. readonly required
  186. </td>
  187. </tr>
  188.  
  189. <!-- nom de la variete de cereale !-->
  190. <tr>
  191. <td><label>Cereale :</label></td>
  192. <td>
  193. <input type="text" id="txtVariete" name="txtVariete"
  194. value="<?php echo $strVariete ?>"
  195. readonly required
  196. </td>
  197. </tr>
  198.  
  199. <!-- quantité commandé !-->
  200. <tr>
  201. <td><label for="txtCommande">Quantité :</label></td>
  202. <td>
  203. <input type="text" id="txtCommande" name="txtCommande"
  204. size="50" maxlength="50" required
  205. value="<?php echo $intqtecde ?>"
  206. </td>
  207. </tr>
  208.  
  209. <!-- prix de la commande !-->
  210. <tr>
  211. <td><label for="txtPrix">Prix :</label></td>
  212. <td>
  213. <input type="text" id="txtPrix" name="txtPrix"
  214. size="50" maxlength="50"
  215. value="<?php echo $intPrixContrat ?>"
  216. </td>
  217. </tr>
  218. </table>
  219. </fieldset>
  220. </div>
  221. <div class="piedForm">
  222. <p>
  223. <input name="cmdValider" type="submit" value="Appliquer" />
  224. </p>
  225. </div>
  226. </form>
  227. <?php
  228. }
  229. ?>
  230. </div>
  231. <?php include("include/footer.php") ; ?>
  232. </body>
  233. </html>
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement