Optimisation de code php

Invité
Invité n'ayant pas de compte PHPfrance

22 déc. 2006, 19:30

Bonjour,

Ce code peut t'il être optimiser ? :
$aqw = "SELECT pj1 FROM membres WHERE id = '" . $id . "'";
$asz = mysql_query($aqw) or die('Erreur SQL !<br />'.$sql.'<br />'.mysql_error());   
$pj1 = mysql_result($asz, 0, 'pj1');

$abc = "SELECT pj2 FROM membres WHERE id = '" . $id . "'";
$asy = mysql_query($abc) or die('Erreur SQL !<br />'.$sql.'<br />'.mysql_error());   
$pj2 = mysql_result($asy, 0, 'pj2');

$aqz = "SELECT pj3 FROM membres WHERE id = '" . $id . "'";
$asu = mysql_query($aqz) or die('Erreur SQL !<br />'.$sql.'<br />'.mysql_error());   
$pj3 = mysql_result($asu, 0, 'pj3');

$abi = "SELECT pj4 FROM membres WHERE id = '" . $id . "'";
$aso = mysql_query($abi) or die('Erreur SQL !<br />'.$sql.'<br />'.mysql_error());   
$pj4 = mysql_result($aso, 0, 'pj4');

$abw = "SELECT pj5 FROM membres WHERE id = '" . $id . "'";
$asm = mysql_query($abw) or die('Erreur SQL !<br />'.$sql.'<br />'.mysql_error());   
$pj5 = mysql_result($asm, 0, 'pj5');

$abr = "SELECT pj6 FROM membres WHERE id = '" . $id . "'";
$asa = mysql_query($abr) or die('Erreur SQL !<br />'.$sql.'<br />'.mysql_error());   
$pj6 = mysql_result($asa, 0, 'pj6');

$abt = "SELECT pj7 FROM membres WHERE id = '" . $id . "'";
$asb = mysql_query($abt) or die('Erreur SQL !<br />'.$sql.'<br />'.mysql_error());   
$pj7 = mysql_result($asb, 0, 'pj7');

$abx = "SELECT pj8 FROM membres WHERE id = '" . $id . "'";
$asq = mysql_query($asq) or die('Erreur SQL !<br />'.$sql.'<br />'.mysql_error());   
$pj8 = mysql_result($asq, 0, 'pj8');
Parce que ca commence a faire gros et j'en ai encore a rajouter !

Merci de votre aide !

ViPHP
ViPHP | 2144 Messages

22 déc. 2006, 19:34

Le problème c'est que visiblement la structure de ta base de donnée n'a pas l'air très optimale.
Il faudrait que tu nous en dise plus sur la structure de la base de donnée
Modifié en dernier par iclo le 22 déc. 2006, 19:40, modifié 1 fois.

ViPHP
ViPHP | 1996 Messages

22 déc. 2006, 19:39

Combien as tu de pj ?
It is nice to be important but it is more important to be nice
http://www.aureuswebfactory.fr

Invité
Invité n'ayant pas de compte PHPfrance

22 déc. 2006, 19:43

Le problème c'est que visiblement la structure de ta base de donnée n'a pas l'air très optimale.
Ce sont des données totalement différentes !

c'est tout ce qu'il y'a en faite,je croyait en avoir plus mais non !

ViPHP
ViPHP | 1961 Messages

22 déc. 2006, 19:44

Bonjour,
Copier/coller, quand tu nous tiens...
Tu construis tes requêtes dans $aqw, $abc, ...
et en cas d'erreur tu demandes d'afficher $sql ????

A part ça, tu peux le faire en une seule requête
$qry = "SELECT * FROM membres WHERE id = '" . $id . "'";
$resultQry = mysql_query($qry) or die('Erreur SQL !<br />'.$qry.'<br />'.mysql_error());   
$row = mysql_fetch_array($resultQry);
$pj1 = $row['pj1'];
$pj2 = $row['pj2'];
....
Et tu peux encore l'optimiser avec une boucle.
Deux choses sont infinies, l'Univers et la sottise humaine!!
Mais je ne suis pas sur de ce que j'affirme au sujet de l'Univers.

A. Einstein

ViPHP
ViPHP | 2144 Messages

22 déc. 2006, 19:46

Il faut que tu nous en dises plus, parce que lancer 6 ou 7 requêtes à la suite sur la même table j'ai du mal à comprendre le but.
Expliques nous ce que représentes les données, ce que tu veux en faire après les avoir récupérées, etc... pour qu'on puisse te suggérer des solutions adaptées à ce que tu veux faire.

Eléphant du PHP | 96 Messages

22 déc. 2006, 20:06

parce que lancer 6 ou 7 requêtes
C'est peut être pour afficher les infos sur une page de son site !

Pourquoi,il est pas obliger de lancer toutes ces requetes si il veut sortir ces infos pour les afficher ?