votre avis m'interesse

votre avis m'interesse - PHP - Programmation

Marsh Posté le 10-03-2009 à 15:10:09    

bonjour,
 
  Et oui tout mes messages ont le même titre :-)  
 
  Je suis surpris d'une technique de codage que je voie pour la 2eme fois, que je trouve affreusement sale, mais car je l'ai vue 2 fois je me demande qd meme si ce n'est pas mon jugement qui est altéré. Donc votre avis m'intéresse :
 
Le site web contient une dizaine de page, et pour ne pas avoir de requete SQL éparpillées, une classe technique contient beaucoup de méthodes sont créées pour les différentes requêtes à effectuer. Pourquoi pas ? ca va dans le sens du MVC. Mais que penser du code html mélanger au code SQL dans ces mêmes méthodes ?
 

Code :
  1. class technique
  2. {
  3. // Génération de la liste des projets
  4. public function get_all_projet($default_project = "" )
  5. {
  6.  $requete = "SELECT *
  7.     FROM ".$this->table_projet;
  8.  $result = $this->executeSQL($requete);
  9.  $form = "<table width='50%' border='0' cellspacing='1' cellpadding='1' align='center'>";
  10.  $form .= "<tr><td width='30%'><span class='txtform'>Choix du projet :</span></td></tr><tr><td><select name='id_p'>";
  11.  while ($ligne = mysql_fetch_array($result))
  12.  {
  13.   $form .= "<option value='".$ligne['id_projet']."' id='".$ligne['nom_projet']."'";
  14.   if ($default_project != "" && $ligne['id_projet'] == $default_project)
  15.    $form .= " selected";
  16.   $form .= ">".$ligne['nom_projet']."</option>";
  17.  }
  18.  $form .= "</select>
  19.    <input id='sub' type='submit' name='submit1' value='configurer'/>
  20.    </td></tr>
  21.    </table>";
  22.  return ($form);
  23. }
  24. // Récupérer l'id d'un projet
  25. public function get_id_projet($projet)
  26. {
  27.  $requete = "SELECT id_projet
  28.     FROM ".$this->table_projet."
  29.     WHERE nom_projet = '".$projet."'";
  30.  $result = $this->connect->executeSQL($requete);
  31.  $id = mysql_fetch_array($result);
  32.  return ($id['id_projet']);
  33. }
  34. }


 
Merci


---------------
Du tofu en Alsace : www.tofuhong.com
Reply

Marsh Posté le 10-03-2009 à 15:10:09   

Reply

Marsh Posté le 10-03-2009 à 15:26:44    

c'est nul! Faut des classes pour manipuler les données (en BD le plus souvent), des classes pour gérer les vues (affichage) et des classes pour faire le lien entre les 2 précédentes et qui contiennent la logique métier (contrôleur, 1 ou plusieurs, des débats sont ouverts à ce sujet).


---------------
Astres, outil de help-desk GPL : http://sourceforge.net/projects/astres, ICARE, gestion de conf : http://sourceforge.net/projects/icare, Outil Planeta Calandreta : https://framalibre.org/content/planeta-calandreta
Reply

Marsh Posté le 10-03-2009 à 15:34:43    

concept MVC donc ...
donc pour l'instant +1 pour ce que je pensais de ce code.
 
d'autre avis ?  
 
ce que je comprend pas c'est pourquoi / comment 2 utilisateurs qui ne ne sont jamais vu ont réussit à ecrire ce meme genre de code. Est ce que à l'ecole on apprend ca ?


---------------
Du tofu en Alsace : www.tofuhong.com
Reply

Marsh Posté le 10-03-2009 à 17:07:33    

On n'apprend pas vraiment le php à l'école. Mais c'est al façon la plus simple de coder une appli quand on est débutant.


---------------
Astres, outil de help-desk GPL : http://sourceforge.net/projects/astres, ICARE, gestion de conf : http://sourceforge.net/projects/icare, Outil Planeta Calandreta : https://framalibre.org/content/planeta-calandreta
Reply

Marsh Posté le 10-03-2009 à 17:22:07    

De la grosse daube faite par un débutant, rien à dire d'autre.
Maintenant on est tous passé par la, et par expérience je peux affirmer que certaines personnes se prétendant "professionnelles" codent comme cela voir pire :D


Message édité par Gat$ le 10-03-2009 à 17:23:20
Reply

Marsh Posté le 11-03-2009 à 08:18:12    

y'a même des webagencies qui font payer à leurs clients ce genre de code tout pourri. Et des fois, ils trouvent le moyen de faire du code pourri juste avec du html (pas valide w3c quoi) :/


---------------
Astres, outil de help-desk GPL : http://sourceforge.net/projects/astres, ICARE, gestion de conf : http://sourceforge.net/projects/icare, Outil Planeta Calandreta : https://framalibre.org/content/planeta-calandreta
Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed