[RESOLU] Vérifier mon code PHP

Eléphant du PHP | 386 Messages

03 déc. 2012, 07:39

Bonjour,

J'ai un morceau de code qui fonctionne très bien, mais qui prend beaucoup de place, je voudrais savoir si on peut l'alléger.
C'est une simple requête de derniers membres inscrits avec la date en format : 03 Décembre 2012

Voici le code :
<?php
							$sql = connect_sql();
							$query = mysql_query('SELECT id, nom, prenom, temps FROM wa_communaute ORDER BY temps');
								if ($query) {
								while ($result = mysql_fetch_object($query)) {
								$prenom = $result->prenom;
								$nom = $result->nom;
								$temps = $result->temps;
								$id = $result->id;
								$adresse_image = $sexe ==1 ? '../images/upload/homme.png' : '../images/upload/femme.png';
								$filename = ''.$_SERVER["DOCUMENT_ROOT"].'/images/upload/'.$id.'.png';
								if (file_exists($filename)) { ?>
								<div class="content-mur">
									<a href="<?php echo $url_site; ?>/home/profil.php?id=<?php echo $id; ?>#!<?php echo htmlentities(ucfirst($prenom)); ?><?php echo htmlentities(ucfirst($nom)); ?>">
										<img src="../images/upload/<?php echo $id; ?>.png" width="50" height="50" alt="" />
									</a>
									<a href="<?php echo $url_site; ?>/home/profil.php?id=<?php echo $id; ?>#!<?php echo htmlentities(ucfirst($prenom)); ?><?php echo htmlentities(ucfirst($nom)); ?>">
										<?php echo htmlentities(ucfirst($prenom)); ?> <?php echo htmlentities(ucfirst($nom)); ?>
									</a>
									<p>a rejoint Web Astronomie</p>
									<span class="infos">Inscrit le <?php echo date("d", strtotime($temps)); ?> <?php echo $Mois[date("n", strtotime($temps))]; ?> <?php echo date("Y", strtotime($temps)); ?> à <?php echo date("H:i", strtotime($temps)); ?></span>
								</div>
								<span class="drop-line-mur"></span>
								<?php } else { ?>
								<div class="content-mur">
									<a href="<?php echo $url_site; ?>/home/profil.php?id=<?php echo $id; ?>#!<?php echo htmlentities(ucfirst($prenom)); ?><?php echo htmlentities(ucfirst($nom)); ?>">
										<img src="<?php echo $adresse_image; ?>" width="50" height="50" alt="" />
									</a>
									<a href="<?php echo $url_site; ?>/home/profil.php?id=<?php echo $id; ?>#!<?php echo htmlentities(ucfirst($prenom)); ?><?php echo htmlentities(ucfirst($nom)); ?>">
										<?php echo htmlentities(ucfirst($prenom)); ?> <?php echo htmlentities(ucfirst($nom)); ?>
									</a>
									<p>a rejoint Web Astronomie</p>
									<span class="infos">Inscrit le <?php echo date("d", strtotime($temps)); ?> <?php echo $Mois[date("n", strtotime($temps))]; ?> <?php echo date("Y", strtotime($temps)); ?> à <?php echo date("H:i", strtotime($temps)); ?></span>
								</div>
								<span class="drop-line-mur"></span>
								<?php } } } 
							mysql_close(); ?>
Merci d'avance

ViPHP
xTG
ViPHP | 7331 Messages

03 déc. 2012, 10:54

Ce qui prend beaucoup de place c'est l'affichage.
Si cela ne te plaît pas regardes du côté des templates et d'un fonctionnement MVC (Modèle - Vue - Contrôleur) pour alléger ton code.

Eléphant du PHP | 386 Messages

03 déc. 2012, 18:31

Mais ca ne ralenti pas le serveur ?

Avatar du membre
Modérateur PHPfrance
Modérateur PHPfrance | 8758 Messages

03 déc. 2012, 18:35

salut,


Oui, ça le "ralentis" forcément vu qu'il y a plus de traitement.

Mais il faut voir si la différence engendrée est vraiment significative (si c'est pour gagner 2ms osef).

cela peux être gênant sur les sites à forte influence, mais dans ce cas il est préférable e s'orienter vers des solution de cache coté serveur (histoire de n'envoyer que des fichiers "html" qui ne sont généré que lorsque c'est nécessaire, le prix à payer est la durée de génération e la première page, qui est généralement pas visible).


@+
Il en faut peu pour être heureux ......