begin process at 2012 05 31 03:03:35
  Trouver un code source :
 
dans
 
Accueil > Forum > 

PHP

 > 

Divers

 > 

Général

 > 

Lenteur pour afficher ma page.


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

Lenteur pour afficher ma page.

mercredi 3 novembre 2010 à 14:55:25 | Lenteur pour afficher ma page.

ecolom

Bonjour à tous ( toutes ,

j'ai un petit soucis de lenteur quand j'adapte une zone select qui récupère les datas via une db.
Si je place une zone texte, l'affichage de la page est immédiat. Par contre si je place une zone déroulante avec connexion à la db, je dois attendre 5 à 8 secondes avant que la page s'affiche.
Auriez-vous une idée sur le fait que ce soit si lent ?
D'autant que j'utilise souvent ce select et que je ne rencontre aucun problème dans les autres prog.
Ais-je écrit le code à l'envers ??
Code ci-dessous voir entre les *************
Merci pour votre aide.

<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=windows-1252">
<title>Gestion des visiteurs</title>
</head>
<body>
<?php

if(!mysql_connect("localhost","root",""))
{
echo "<h2>".$TEXT['visiteur-error']."</h2>";
die('error');
}
mysql_select_db("gestion_loge");
?>

<div align="center">
<form action="<?php echo basename($_SERVER['PHP_SELF']); ?>" method="get">
<table border="0" width="692" id="table1" background="./images/bg_bleuclair.jpg" style="border: 2px ridge #0000FF">
<tr>
<td colspan="8" height="37" valign="top">
<p align="center"><b><font color="#0000FF" size="4">Gestion des Visiteurs</font></b></td>
</tr>
<tr>
<td height="24" width="17">&nbsp;</td>
<td height="24" width="56"><font color="#000000"><b>Nom</b></font></td>
<td height="24" width="9"><font color="#000000"><b>:</b></font></td>
<td height="24" width="218">
<input type="text" name="nom_visiteur" size="28"></td>
<td height="24" width="161"><font color="#000000"><b>Plaque</b></font></td>
<td height="24" width="10"><font color="#000000"><b>:</b></font></td>
<td height="24" width="187">
<input type="text" name="plaque_visiteur" size="23"></td>
<td height="24" width="11">&nbsp;</td>
</tr>
<tr>
<td width="17">&nbsp;</td>
<td width="56"><font color="#000000"><b>Société</b></font></td>
<td width="9"><font color="#000000"><b>:</b></font></td>
<td width="218">
<select size="1" name="societe_visiteur">

<option value="Seneffe">Seneffe</option>
<option value="Moustier">Moustier</option>
<option value="Fleurus">Fleurus</option>
</select>
</td>
<td width="161"><font color="#000000"><b>Personne Int. Visitée</b></font></td>
<td width="10"><font color="#000000"><b>:</b></font></td>
<td width="187">
*************************************************************************
<select size="1" name="int_visite">
<?php
$liendb = mysql_connect(root,localhost,"");
mysql_select_db (gestion_loge);
$SQL = "SELECT * FROM users";
$res = mysql_query($SQL);
while($val=mysql_fetch_array($res)) {
echo "<option>".$val["nomprenom"]."</option>\n";
}
?>
</select>
*************************************************************************
</td>
<td width="11">&nbsp;</td>
</tr>
<tr>
<td width="17">&nbsp;</td>
<td width="56"><font color="#000000"><b>Société2</b></font></td>
<td width="9"><b><font color="#000000">:</font></b></td>
<td width="218">
<input type="text" name="societe_visiteur2" size="28"></td>
<td width="161"><font color="#000000"><b>Personne Int. Visitée2</b></font></td>
<td width="10"><font color="#000000"><b>:</b></font></td>
<td width="187">
<input type="text" name="int_visite2" size="23"></td>
<td width="11">&nbsp;</td>
</tr>
<tr>
<td width="17">&nbsp;</td>
<td width="56"><font color="#000000"><b>Heure </b></font></td>
<td width="9"><b><font color="#000000">:</font></b></td>
<td width="218">
<input type="text" name="heure_entree2" size="1"><b> :</b>
<input type="text" name="heure_sortie2" size="1"> <i>
<font color="#FF0000" size="2">(Encodage Hors-ligne)</font></i></td>
<td width="161"><font color="#000000"><b>Personne Ext. Visitée</b></font></td>
<td width="10"><font color="#000000"><b>:</b></font></td>
<td width="100">
<input type="text" name="ext_visite" size="23"></td><td width="11">&nbsp;</td>
</tr>
<tr>
<td width="17" height="34">&nbsp;</td>
<td width="56" height="34"><font color="#000000"><b>Type</b></font></td>
<td width="9" height="34"><font color="#000000"><b>:</b></font></td>
<td width="580" colspan="4" height="34"><i>
<font color="#3333CC" style="font-size: 13pt">Visiteur </font>
<font color="#3333CC" style="font-size: 13pt">&nbsp;
<input type="radio" value="Visiteur" checked name="R1">&nbsp;&nbsp; -&nbsp;&nbsp;&nbsp; Fournisseur&nbsp;
<input type="radio" name="R1" value="Fournisseur">&nbsp;&nbsp; -&nbsp;&nbsp;&nbsp; Autre&nbsp;
<input type="radio" name="R1" value="Autre"></font></i></td>
<td width="11" height="34">&nbsp;</td>
</tr>
<tr>
<td width="645" colspan="8">&nbsp;
<input type="hidden" size="10" name="datedujour" style="text-align: center" readonly value="<?php $datedujour=date("Y/m/d");echo $datedujour;?>">
<input type="hidden" size="10" name="heuredujour" style="text-align: center" readonly value="<?php $heuredujour=date("H:i");echo $heuredujour;?>">
</td>
</tr>
<tr>
<td width="17">&nbsp;</td>
<td width="637" colspan="6"><b><font color="#000000">Remarque :&nbsp;</font></b><textarea rows="2" name="remarque_visiteur" cols="65"></textarea></td>
<td width="11">&nbsp;</td>
</tr>
<tr>
<td width="17" height="56">&nbsp;</td>
<td width="637" colspan="6" height="56">
<p align="center"><i>
<input type=submit value="Ajouter"></i></td>
<td width="11" height="56">&nbsp;</td>
</tr>

<tr>
<td width="17">&nbsp;</td>
<td width="637" colspan="6">&nbsp;

<table border=1 cellpadding=0 cellspacing=0 width="641" id="table5"><tr bgcolor=#ffffff>
<td class=tabhead align="center" bgcolor="#FFFFCC" width="144"><font color="#3333CC"><b>Nom_visiteur</b></font></td>
<td class=tabhead align="center" bgcolor="#FFFFCC"><font color="#3333CC"><b>Société_visiteur</b></font></td>
<td class=tabhead align="center" bgcolor="#FFFFCC"><font color="#3333CC"><b>Plaque_Visiteur</b></font></td>
<td class=tabhead align="center" bgcolor="#FFFFCC"><font color="#3333CC"><b>Personne Visitée</b></font></td>
</tr>
<?
if ($_REQUEST['nom_visiteur'] != "")
{
// if ($_REQUEST['jahr'] == "") {
// $jahr = "NULL";
//} else {
$jahr = intval($_REQUEST['jahr']);
//}
$nom_visiteur = mysql_real_escape_string($_REQUEST['nom_visiteur']);
$type = mysql_real_escape_string($_REQUEST['R1']);
$societe_visiteur = mysql_real_escape_string($_REQUEST['societe_visiteur']);
$societe_visiteur2 = mysql_real_escape_string($_REQUEST['societe_visiteur2']);
$plaque_visiteur = mysql_real_escape_string($_REQUEST['plaque_visiteur']);
$int_visite = mysql_real_escape_string($_REQUEST['int_visite']);
$ext_visite = mysql_real_escape_string($_REQUEST['ext_visite']);
$remarque_visiteur = mysql_real_escape_string($_REQUEST['remarque_visiteur']);
$datedujour = mysql_real_escape_string($_REQUEST['datedujour']);
$heuredujour = mysql_real_escape_string($_REQUEST['heuredujour']);
mysql_query("INSERT INTO visiteur (date_entree,
heure_entree,
nom_visiteur,
type,
societe_visiteur,
societe_visiteur2,
plaque_visiteur,
int_visite,
ext_visite,
remarque_visiteur)
VALUES('$datedujour',
'$heuredujour',
'$nom_visiteur',
'$type',
'$societe_visiteur',
'$societe_visiteur2',
'$plaque_visiteur',
'$int_visite',
'$ext_visite',
'$remarque_visiteur')");
}

if ($_REQUEST['action'] == "del") {
$id = intval($_REQUEST['num_visiteur']);
mysql_query("UPDATE `gestion_loge`.`visiteur` SET `statut` = 'OUT',`heure_sortie` = '$heuredujour' WHERE `visiteur`.`num_visiteur`={$_REQUEST['num_visiteur']};");

}
$result=mysql_query("SELECT num_visiteur,nom_visiteur,societe_visiteur,societe_visiteur2,plaque_visiteur,int_visite FROM visiteur WHERE statut='IN';");
$i=0;
while( $row=mysql_fetch_array($result) )
{
if($i>0)
{
echo "<tr valign=bottom>";
echo "<td bgcolor=#3333CC background='./images/strichel.gif' colspan=6 width=1 height=1></td>";
echo "</tr>";
}
echo "<tr height=20 valign=center>";
echo "<td align=center><font color=#333333 class=tabval>".$row['nom_visiteur']."</td>";
echo "<td align=center><font color=#333333 class=tabval>".$row['societe_visiteur']."</td>";
echo "<td align=center><font color=#333333 class=tabval>".$row['plaque_visiteur']."&nbsp;</td>";
echo "<td align=center><font color=#333333 class=tabval>".$row['int_visite']."&nbsp;</td>";
echo "<td class=tabval><a onclick=\"return confirm('Validez-vous la sortie de ce visiteur ?');
\" href=visiteurs.php?action=del&num_visiteur=".$row['num_visiteur']."><span class=red>Sortie</span></a></td>";
// echo "<td class=tabval><a onclick=\"return confirm('Voulez-vous modifier ce visiteur ?');
// \" href=visiteurs.php?action=del&num_visiteur=".$row['num_visiteur']."><span class=red>Edit</span></a></td>";
echo "<td class=tabval></td>";
echo "</tr>";
$i++;
}
?>
</table>
</td>
<td width="11">&nbsp;</td>
</tr>
</table>
</div>
</body>
</html>
mercredi 3 novembre 2010 à 15:25:56 | Re : Lenteur pour afficher ma page.

cod57


Ton hebergeur est-ce du gratuit style free ?


while($val=mysql_fetch_array($res)) {
echo "<option>".$val["nomprenom"]."</option>\n";
}

c'est le select en question ?

mercredi 3 novembre 2010 à 15:29:52 | Re : Lenteur pour afficher ma page.

cod57

$result=mysql_query("SELECT num_visiteur,nom_visiteur,societe_visiteur,societe_visiteur2,plaque_visiteur,int_visite FROM visiteur WHERE statut='IN';");

pourquoi pas faire SELECT * FROM visiteur WHERE statut='IN'
c'est pareil
mercredi 3 novembre 2010 à 17:07:03 | Re : Lenteur pour afficher ma page.

ecolom

Hello cod57,

tu as tout à fait raison pour le select. J'ai modifié.
Pour info, je travaille sur un xampp installé en pc local. Donc pas d'hébergeur via le net.Cela devrait être d'autant plus facile et rapide.
Je ne m'explique pas pourquoi il me faut autant de temps pour afficher ma page. Alors que dans d'autres pages j'utilise aussi une zone nom et cela est très rapide.

Une idée ?
Merci
mercredi 3 novembre 2010 à 18:03:54 | Re : Lenteur pour afficher ma page.

kohntark

Membre Club
Salut,


Code PHP :
$liendb = mysql_connect(root,localhost,"");
mysql_select_db (gestion_loge); 

A quoi cela sert il alors que tu effectue déjà la connexion en début de script ?


Code PHP :
$SQL = "SELECT * FROM users";
$res = mysql_query($SQL);

Inutile puisque tu n'utilises que le champ "nomprenom"
=> SELECT nomprenom FROM users

Combien y a t-il d'enregistrements dans ta table ?
et combien de champs ?

Cordialement,

Kohntark -
mercredi 3 novembre 2010 à 19:36:30 | Re : Lenteur pour afficher ma page.

cod57

re:

if ($_REQUEST['nom_visiteur'] != "") ligne 134

!= c'est plutôt !==
moi je propose

if(isset($_REQUEST['nom_visiteur']) && !empty($_REQUEST['nom_visiteur']) )

puis comme l'a remarqué Kohntark

deux fois le mysql_connect() et mysql_select_db()

ligne 54,53 inutiles

encore une remarque "<option>".$val["nomprenom"]."</option>\n";

c'est pas

"<option value="".$val["nomprenom"."">".$val["nomprenom"]."</option>\n";

sinon ton select il renvoit rien

a++


mercredi 3 novembre 2010 à 19:40:06 | Re : Lenteur pour afficher ma page.

cod57

erreur c'est

echo '<option value="'.$val['nomprenom'].'">'.$val['nomprenom'].'</option>\n';

je me suis planté avec tout ces "

jeudi 4 novembre 2010 à 12:37:42 | Re : Lenteur pour afficher ma page.

ecolom

Merci à tous les deux pour vos réponses et conseils.
Par contre, j'ai remplacé les lignes Par un include et la lenteur à disparu...'cherchez l'erreur'
---$liendb = mysql_connect(root,localhost,"");
---mysql_select_db (gestion_loge);

Cependant, j'ai retiré ces deux lignes car effectivement il y a redondance dans la connexion DB.
Pour l'option value, mon code fonctionne. J'ai malgré tout suivi votre code et expérience.
==> echo "<option>".$val["nomprenom"]."</option>\n";
remplacé par ==> echo '<option value="'.$val['nomprenom'].'">'.$val['nomprenom'].'</option>\n';

Mais pouvez-vous m'expliquer la différence entre les deux.


Pour le test de la zone = "" j'allais modifier ce code par celui que vous avez inscrit. En fait j'ai récupérer ce bout de code dans la collection cd de l'interface phpmyadmin de xampp.

Dernière demande:
Pouvez-vous me dire comment concaténer deux zones par rapport au code ci-dessous. j'aimerais afficher la zone nom_visiteur et nom_societe.
J'ai déjà testé quelques solutions mais ça ne fonctionne pas.
}
echo "<td align=center><font color=#333333 class=tabval>".$row['nom_visiteur']."</td>";

Un grand merci pour votre aide et ce forum qui m'a déjà bien dépatouillé quand les problèmes surviennent.
jeudi 4 novembre 2010 à 14:30:01 | Re : Lenteur pour afficher ma page.

ecolom

Réponse acceptée !
Trouvé !!!!
echo "<td align=center><font color=#333333 class=tabval>".$row['nom_visiteur']." ".$row['nom_societe']."</td>";

Maintenant ça fonctionne.

Merci à tous


Cette discussion est classée dans : page, echo, row, visiteur, lenteur


Répondre à ce message

Sujets en rapport avec ce message

Menu déroulant avec récupération des données via mysql --> PB [ par cougar5 ] Bonjour à tous,Je suis un débutant en code php. (et nouveau également sur ce site)Il m'a fallu la journée pour créer 2 pages PHP. (Merci internet et l salut je veux faire une tableau qui afficher une table mysql et quand je click sur un champ par exempl cham (nom )il donner moi une page qui affiche tous les informations de ce nom voila ma page aidé moi svp si urgent et Merci d'avance [ par echibat ] Editer         $connect=mys error Undefined offset [ par tadjidine ] Bonjour, je suis entrian de crée un site de boutique ne ligne; après je suis en phase d'afficher tous les produit existant ds la tableau produit mais affichage une liste des articles dans une seul page [ par tadjidine ] Bonjour; quelqu'un peus m'aidé sur ce code; le but de listé vers la base de donnée tous les articles qui est stocké ds la base dans une seul page en l Passage de variables d'une page à une autre [ par calypso78 ] Bonjour, Je dois envoyer une variable à une autre page, mais je ne vois pas du tout comment faire... Voici mon code pour l'instant : [code=php] problème d'affichage de page [ par morgain63 ] bonjour, à la base ça me supprimait l'affichage des deux pages (il me restait plus que le menu et le font d'écran) et la bdd était pas modifiée mainte php+calcul+nbre heure [ par pandouta08 ] bonjour,je voudrais savoir comment je peux calculer le nombre d'heures entre 2 dates de la meme journée .j'ai une date sortie et une date entrée de ty Affichage d'une bd dans mysql à partir de la selection d'un nom d'une liste déroulante [ par sirina89 ] bjr j'ai un formulaire php qui contient une liste déroulante en choisissons un noms de cette liste il doit afficher dans un tableau tous les enregist Problème avec une page php [ par bonhommecrea ] boujour a tous, je cherche a créer des profil d'utilisateur sur mon site, tout fonctionne bien SAUF les pagede profil qui m'affiche une erreur ... vo liste déroulante - php - mysql [ par calypso78 ] Bonsoir, J'ai un petit blocage, j'ai réussi à faire une requête et à l'afficher dans un tableau, mais je bloque pour faire une liste déroulante avec


Nos sponsors


Sondage...

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

Photothèque

A découvrir



 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,624 sec (4)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales