Optimisation des requetes

Optimisation des requetes - PHP - Programmation

Marsh Posté le 27-07-2003 à 17:09:33    

Bonjour,
 
Voila, sur une page php je me sers de valeur qui se trouve dans mysql pour changer des parametres de la page (couleur, texte et autre).
Mais mes pages faisant appelle a pas mal de parametre, je pense qu'il dois y avoir un moyen de simplifié le code car pour le moment, je fais une requete pour chaque variable.
 

Code :
  1. <? include ("../connexion.php" );
  2. $id = MYSQL_CONNECT($serveur,$login,$pass);
  3. mysql_select_db("$base" );
  4. $query = "SELECT * FROM kikivient_variable WHERE variable_kiki = 'dateaff1'" ; 
  5. $result=mysql_query($query) ; 
  6. $var = mysql_fetch_row($result)
  7. $dateaff1 = $var[3];
  8. $query = "SELECT * FROM kikivient_variable WHERE variable_kiki = 'dateaff2'" ; 
  9. $result=mysql_query($query) ; 
  10. $var = mysql_fetch_row($result)
  11. $dateaff2 = $var[3];
  12. ...
  13. ?>

A noter qu'a chaque fois, le nom de la variable correspond a une valeur d'un champ precis.


---------------
http://www.menuiseriemerceron.fr - http://www.atlantiquecoloration.fr
Reply

Marsh Posté le 27-07-2003 à 17:09:33   

Reply

Marsh Posté le 27-07-2003 à 17:14:29    

avec un OR ?

Reply

Marsh Posté le 27-07-2003 à 17:24:02    

Taz a écrit :

avec un OR ?

oops je crois que j'ai oublier de preciser un truc...je suis encore debutant  :(  
C'est quoi un OR


---------------
http://www.menuiseriemerceron.fr - http://www.atlantiquecoloration.fr
Reply

Marsh Posté le 27-07-2003 à 17:28:37    

dans la requête  
 
varaiable=machin OR variable=truc

Reply

Marsh Posté le 27-07-2003 à 17:30:37    

Taz a écrit :

dans la requête  
 
varaiable=machin OR variable=truc

ok d'accord mais comment on recupere tous les resultat ?


---------------
http://www.menuiseriemerceron.fr - http://www.atlantiquecoloration.fr
Reply

Marsh Posté le 27-07-2003 à 17:31:31    

bodbod a écrit :

ok d'accord mais comment on recupere tous les resultat ?

ça je sais pas, je fais pas de PHP, cela dit sur http://www.php.net/ y a tout

Reply

Marsh Posté le 27-07-2003 à 17:32:10    

Reply

Marsh Posté le 27-07-2003 à 17:37:00    

while ($var = mysql_fetch_row($result)) {
    // traitement d'une des lignes du résultat
    ....
}
 
ca te permet de parcourir toutes les lignes :)

Reply

Marsh Posté le 27-07-2003 à 17:49:57    

mrBebert a écrit :

while ($var = mysql_fetch_row($result)) {
    // traitement d'une des lignes du résultat
    ....
}
 
ca te permet de parcourir toutes les lignes :)  

oui je suis toujours d'accord mais c'est pour mettre le bon resultat dans la bonne variable.
 
Je viens de penser a un truc :

Code :
  1. while ($var = mysql_fetch_row($result)) {
  2. $$var[1] = $var[3];
  3. }


Ca marcherai ?


---------------
http://www.menuiseriemerceron.fr - http://www.atlantiquecoloration.fr
Reply

Marsh Posté le 27-07-2003 à 18:00:10    

Ca pourrait marcher, effectivement [:figti]

Reply

Marsh Posté le 27-07-2003 à 18:00:10   

Reply

Marsh Posté le 27-07-2003 à 18:13:38    

bodbod a écrit :

oui je suis toujours d'accord mais c'est pour mettre le bon resultat dans la bonne variable.
 
Je viens de penser a un truc :

Code :
  1. while ($var = mysql_fetch_row($result)) {
  2. $$var[1] = $var[3];
  3. }


Ca marcherai ?
 

Attention a ne pas mettre n'importe quoi dans la base de donnée en fesant ça. ;)

Reply

Marsh Posté le 27-07-2003 à 18:18:50    

omega2 a écrit :

Attention a ne pas mettre n'importe quoi dans la base de donnée en fesant ça. ;)

cad ?
Il n'y a que des mots pour la premiere colonne voir des mot en mot_mot2
 
Dans l'autre colonne, il y a du texte ou des couleur style #FFFFFF ou url ou email.


---------------
http://www.menuiseriemerceron.fr - http://www.atlantiquecoloration.fr
Reply

Marsh Posté le 27-07-2003 à 18:36:32    

bodbod a écrit :

cad ?
Il n'y a que des mots pour la premiere colonne voir des mot en mot_mot2
 
Dans l'autre colonne, il y a du texte ou des couleur style #FFFFFF ou url ou email.

T'utilises le contenu de la base de donnée pour conaitre le nom de la variable dont il faut changer la valeur. Donc il y a un risque d'écrasement de n'importe qielle variable par ce qui est contenu dans la base de donnée et ca peut provoquer de nombreux problèmes. ;)

Reply

Marsh Posté le 27-07-2003 à 18:51:46    

OK, je vois ce que tu veux dire, si une variable de la base porte le nom d'une autre variable de la page, ca va clocher ;)
Pour ca, je ne pense pas avoir de probleme vu que dans mon code j'utilisais la variable du meme nom que la variabble de la base. Et les variables etait exclusivement pour ca ;)
merci


---------------
http://www.menuiseriemerceron.fr - http://www.atlantiquecoloration.fr
Reply

Sujets relatifs:

Leave a Replay

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