on peut optimiser des requetes simples avec php ? - PHP - Programmation
Marsh Posté le 18-03-2004 à 14:59:06
en gros je fais :
Code :
|
et la fonction qui recupere
Code :
|
Marsh Posté le 18-03-2004 à 15:12:41
10s ?
de génération du texte ou de transfert vers ton navigateur ?
sinon, ma seul optimisation possible c'est de faire retourner à ta fonction un chaine qui contient directement les "<option>".
tu génere un tableau pour le re-parcourir, tu mets donc 2x fois plus de tps, a part ça...
Marsh Posté le 18-03-2004 à 15:15:37
Moi dans un premier temps je ferais (je sais pas si ça améliore bcp faut que tu me dises ):
Code :
|
et la fonction qui recupere
Code :
|
Sinon t'as un index sur NOMPROFIL ?
Marsh Posté le 18-03-2004 à 16:30:30
ca change pas...
je crois meme que le for each est plus long que le while..
pour les 10s, il s'agit de 10s entre le temps ou j'appuye sur mon bouton et le temps où la page s'affiche
Marsh Posté le 18-03-2004 à 16:41:22
affiche le temps de génération de la page en utilisant microtime() (www.php.net/microtime)
et si le code HTML généré est long, utilise ça au début de ton script PHP : ob_start("ob_gzhandler" ); pour compresser les pages envoyés au client
Marsh Posté le 18-03-2004 à 22:58:02
Perso je fais ça, avec OCI8 :
Code :
|
Ca prend 2 sec pour 3000 records là ...
Marsh Posté le 19-03-2004 à 09:19:31
t'as calculé le temps de génération ?
il fait réellement 10 s ?
Marsh Posté le 19-03-2004 à 09:28:55
ob_start("ob_gzhandler" ) -> ca ameliore un peu thx
(je suis a 4s maintenant)
Marsh Posté le 21-03-2004 à 22:42:54
utilise la fonction de bufferisation des données en envoi ca permettra de gagner du temps je pense ..
c le transfert au fur et a mesure qui est long
Marsh Posté le 18-03-2004 à 14:48:10
RE tt le monde
voila, je veux construire une liste deroulante. les valeurs a inclures proviennent d'une BDD oracle.
le problème est que lorsque je demande a php de remplir ma liste, il met super longtemps (genre 10s pour 1500valeurs) alors que ca prend a peine 1s a la bdd.
je fais ma requete :
select nom from table order by nom
et ensuite je met ds un tableau (pq j'ai 2 liste a creer avec les memes valeurs)
et je cree ma liste avec mon tableau.