Conseil pour MySQLI

Résolu/Fermé
crocoscore Messages postés 165 Date d'inscription dimanche 16 novembre 2008 Statut Membre Dernière intervention 3 février 2015 - 5 juil. 2011 à 16:18
avion-f16 Messages postés 19249 Date d'inscription dimanche 17 février 2008 Statut Contributeur Dernière intervention 15 juin 2024 - 5 juil. 2011 à 21:43
Bonjour,
J'ai longtemps utilisé la fonction mysql_ en php pour communiqué avec mes bases de données. Même si ça fonctionne parfaitement, j'ai décidé de me mettre à jour car j'ai lu (notament sur php.net) qu'il fallait à présent utiliser mysqli_ car elle possèdait de nombreux avantages. Je ne m'en rends pas encore compte mais je pense que c'est du faite de ma trop petite expérience avec elle.

Je viens donc vous demandez votre avis sur le code que j'ai créé pour savoir s'il faut l'ameilliorer ou même le modifier complètement (mais il marche tout au si bien qu'avant, avec mysql_).

Fichier connexion.php (inséré grâce à include()) :
if(! $connexion = mysqli_connect('localhost', 'root', '', 'bdd'))
{
	echo mysqli_error($connexion);
	exit;
}


Page d'affichage de news :
<?php include("include/connexion.php");

$retour = mysqli_query($connexion, 'SELECT * FROM nouvelle ORDER BY id DESC');
while ($donnees = mysqli_fetch_assoc($retour))
{
?>
	<div id="<?php echo $donnees['id'];?>">
		<h2 class="nouvelles">
			<?php echo stripslashes(htmlspecialchars($donnees['titre'])); ?>, <em>publié le <?php echo date('d/m/Y à H\hi', $donnees['timestamp']); ?></em>
		</h2>    
		<p><?php echo nl2br(htmlspecialchars(stripslashes($donnees['contenu'])));?></p>
	</div>
	
<hr />
<?php
}
	mysqli_free_result($retour);
?>
A voir également:

2 réponses

intéressant ! mais pourquoi ne pas faire du php5 en creant une class connection qui permettra de faire tout ce qu'il faut ...
et si tu tu voudrais te mettre à la page, pense en MVC et regarde un framework genre zend ...
0
crocoscore Messages postés 165 Date d'inscription dimanche 16 novembre 2008 Statut Membre Dernière intervention 3 février 2015 5
5 juil. 2011 à 17:35
Je vais jeter un coup d'oeil, merci ;)
0
avion-f16 Messages postés 19249 Date d'inscription dimanche 17 février 2008 Statut Contributeur Dernière intervention 15 juin 2024 4 505
5 juil. 2011 à 21:43
Salut,

Évite l'usage des liens ("stockage" de la connexion en variable) lorsqu'il n'y a qu'une seule connexion.

Sinon, je te conseille également de rendre ta base de données accessible via une classe. C'est ce qu'on appelle le Mapping objet-relationnel, ou en anglais Object-relational mapping (ORM). Il existe des bibliothèques qui font ça très bien, comme Doctrine (utilisée dans le framework Symfony).
0