ouvrir connexion multiple

Répondre
jackbocar
le 31/08/2006 à 15:03
jackbocar
Bonjour,

Mes pages sont faites de cette façon :


<?php
include ('../_require/config.php');
include ('../_require/functions.php');
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//FR"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" lang="fr">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />

<?php
include (PATH_INCLUDE.'/includes/top.php');
include (PATH_INCLUDE.'/jackbocar/pages/1_jackbocar.php');
include (PATH_INCLUDE.'/menus/menu-jackbocar.php');
include (PATH_INCLUDE.'/includes/footer.php');
?>

</body>
</html>

Toutes mes pages de codes PHP se terminent comme-ceci :

Alors mes questions sont celles-ci, EXEMPLE : en fin de code php pour les includes : jackbocar.php ; Si je mets en fin de page :

mysql_free_result($resultat);
mysql_close ();
?>

Cela m'oblige à ouvrir une connexion pour le menu, et le clôturer.

Et comme j'ai aussi un texte de sources qui sort d'une base de données, cela m'oblige aussi à ouvrir une connexion et la clôturer.

Idem pour le code PHP du compteur.

Alors que si je laisse en bas du code de chaque page simplement : mysql_free_result($resultat);
?>

Tout fonctionne avec une seule connexion sur la page d'index.php

Quelle est la bonne façon de faire ?

Merci de vos conseils.

Jack Bocar
moogli
le 01/09/2006 à 13:03
moogli
salut,

connection / déconnection dans la page principal et les autres exploite simplement mysql sans se soucier de la connection.

si tu veut faire autrement tu peut avec un objet mysql et tu l'utilise dans ton tes scripts et l'objet gère la connection !

smiley
Il en faut peu pour être heureux !!!!!
jackbocar
le 02/09/2006 à 18:47
jackbocar
Bonjour,

Je ne savais pas comment faire pour mettre sur la même page deux ou trois requêtes MYSQL sans les TAGS de début et de fin : exemple :


<?php //selection des ID de menu
$sql = 'SELECT id, lien, nom_lien FROM proces WHERE id IN (26, 27, 29)';
$data = mysql_num_rows($resultat);
while ($data = mysql_fetch_array($resultat)) {

$id=$data['id'];
$lien=$data['lien'];
$nom_lien=$data['nom_lien'];
echo '<a href="'.$_SERVER['PHP_SELF'].'?page='.MyStripSlashes($lien).'" class="menuNav">'.MyStripSlashes($nom_lien).'</a>';
}
mysql_free_result($resultat);
mysql_close();
?>



<?php //selection des pages correspondantes aux ID de menu
$sql = 'SELECT id, actes FROM proces_actes WHERE id IN (26, 27, 29)';
$resultat = mysql_query($sql) or die('Erreur SQL !<br>'.$sql.'<br>'.mysql_error());
$data = mysql_num_rows($resultat);

while ($data = mysql_fetch_array($resultat)) {
$id=$data['id'];
$actes=$data['actes'];
echo '<span>'.MyStripSlashes($actes).'</span>';
}
mysql_free_result($resultat);
mysql_close();
?>


Maintenant, après avoir vu plusieurs scripts sur le site, j'ai fais comme ceci :

<?php //selection des ID de menu
$sql = 'SELECT id, lien, nom_lien FROM proces WHERE id IN (26, 27, 29)';
$data = mysql_num_rows($resultat);
while ($data = mysql_fetch_array($resultat)) {
$id=$data['id'];
$lien=$data['lien'];
$nom_lien=$data['nom_lien'];
echo '<a href="'.$_SERVER['PHP_SELF'].'?page='.MyStripSlashes($lien).'" class="menuNav">'.MyStripSlashes($nom_lien).'</a>';
}
mysql_free_result($resultat);



//selection des pages correspondantes aux ID de menu
$sql = 'SELECT id, actes FROM proces_actes WHERE id IN (26, 27, 29)';
$resultat = mysql_query($sql) or die('Erreur SQL !<br>'.$sql.'<br>'.mysql_error());
$data = mysql_num_rows($resultat);

while ($data = mysql_fetch_array($resultat)) {
$id=$data['id'];
$actes=$data['actes'];
echo '<span>'.MyStripSlashes($actes).'</span>';
}
mysql_free_result($resultat);
mysql_close();
?>

Je n'ai plus de connexions multiples.

Merci tout de même de votre aides.

PS : On m'a demandé à quoi servait ID, je ne sais de la quelle on parlait, selle du SELECT ou celle du WHERE ?
Répondre

Ecrire un message

Votre message vient d'être créé avec succès.
LoadingChargement en cours