cs_Anthomicro
Messages postés9433Date d'inscriptionmardi 9 octobre 2001StatutMembreDernière intervention13 avril 2007
-
27 déc. 2004 à 12:56
cs_Anthomicro
Messages postés9433Date d'inscriptionmardi 9 octobre 2001StatutMembreDernière intervention13 avril 2007
-
9 avril 2006 à 14:15
Cette discussion concerne un article du site. Pour la consulter dans son contexte d'origine, cliquez sur le lien ci-dessous.
cs_Anthomicro
Messages postés9433Date d'inscriptionmardi 9 octobre 2001StatutMembreDernière intervention13 avril 20078 9 avril 2006 à 14:15
ouais enfin sa fonction première c'est pas de libérer de la mémoire mais de fermer la connexion (qui elle occupe de la mémoire), donc oui ça libère de la mémoire, mais c'est pas sa fonction première (y'a unset() pour ça).
coucou747
Messages postés12303Date d'inscriptionmardi 10 février 2004StatutMembreDernière intervention30 juillet 201244 9 avril 2006 à 13:15
le mysql_close permet de libérer plus tot de la mémoire...
Bon, sinon, phpbb c'est pas super optimisé...
cs_Anthomicro
Messages postés9433Date d'inscriptionmardi 9 octobre 2001StatutMembreDernière intervention13 avril 20078 9 avril 2006 à 13:13
Nan, mais c'est mieux de le faire juste après le dernier mysql_query() car sinon tu peux avoir des erreurs de max_user_connections
cs_spyro666
Messages postés137Date d'inscriptionlundi 10 janvier 2005StatutMembreDernière intervention28 août 2007 9 avril 2006 à 12:35
Y a-t-il un quelconque danger si on ne fait pas mysql_close() apres un mysql_query() ?
cs_Anthomicro
Messages postés9433Date d'inscriptionmardi 9 octobre 2001StatutMembreDernière intervention13 avril 20078 22 août 2005 à 00:37
il manque aussi un mysql_close() après le mysql_query()
cs_mickael9
Messages postés13Date d'inscriptiondimanche 19 juin 2005StatutMembreDernière intervention16 novembre 2005 22 août 2005 à 00:35
A la racine de ton forum.
sidi system
Messages postés1Date d'inscriptionsamedi 5 février 2005StatutMembreDernière intervention 6 février 2005 6 févr. 2005 à 16:07
voila je suis un debutant et je voudrais savoir ou placer ce fichier
a+
_sebf
Messages postés42Date d'inscriptionjeudi 1 avril 2004StatutMembreDernière intervention 7 octobre 2006 5 janv. 2005 à 21:42
Voilà j'ai tenu compte de vos remarques pour mettre à jour le code.
Merci à vous
_SebF
coucou747
Messages postés12303Date d'inscriptionmardi 10 février 2004StatutMembreDernière intervention30 juillet 201244 2 janv. 2005 à 16:31
Oki, c'est donc cela phpbb...
J'aimes pas trop les trucs tout faits...
Si qqn veut, pour ajouter un module à phpbb, je vais tenter de faire un réseau de neurones en php pour censurer les messages...
si c'est trop lent, je le ferais en C et php ne fera que l'apeler grace à la commande system...
Si qqn est volontaire, ou si qqn à de la doc...
cs_Anthomicro
Messages postés9433Date d'inscriptionmardi 9 octobre 2001StatutMembreDernière intervention13 avril 20078 2 janv. 2005 à 14:50
je rajoute :
$id=mysql_query("select topic_title,topic_id from z_forum_topics where forum_id!=11 ORDER BY topic_id desc");
à remplacer par
$id=mysql_query("SELECT topic_title,topic_id FROM z_forum_topics WHERE forum_id!=11 ORDER BY topic_id DESC LIMIT ".$nombre_de_post_a_afficher);
Ensuite
for ($i=1;$i<=$nombre_de_post_a_afficher;$i++)
{
$tempo=mysql_fetch_row($id);
echo "\n";
echo "<title>$tempo[0]</title>\n";
echo "<link>http://www.frameip.com/forum/viewtopic.php?t=$tempo[1]</link>\n";
echo "\n\n";
}
car dans ce cas le fetch_array ne sert à rien si ce n'est qu'à ralentir le script.
a +
webdeb
Messages postés488Date d'inscriptionsamedi 5 avril 2003StatutMembreDernière intervention31 mars 20094 2 janv. 2005 à 12:52
Source intéressante dans son contexte mais quelques points négatifs :
-> Shorts tags (ca a été dit)
-> Préfère mysql_fetch_assoc à mysql_fetch_array
-> Ecris tes requêtes SQL avec les mots spécifiques en majucusules (SELECT, WHERE...)
Voilà !
++
fg85
Messages postés370Date d'inscriptiondimanche 28 mars 2004StatutMembreDernière intervention13 avril 2007 27 déc. 2004 à 15:59
Mouarf c'était pas le peine de faire une source pour ça ;-)
Malgré quelque fonction intérrésante que je m'enpresse de modifier/utiliser .
---------------------------
http://fg.logiciel.free.fr
cs_Anthomicro
Messages postés9433Date d'inscriptionmardi 9 octobre 2001StatutMembreDernière intervention13 avril 20078 27 déc. 2004 à 14:48
et quelques quotes simples pour ce qui est du pinaillage mdr, mais les multiples echo seraient à remplacer par un seul echo avec des quotes simples (j'ai pas eu le courage de le refaire désolé)
a +
coucou747
Messages postés12303Date d'inscriptionmardi 10 février 2004StatutMembreDernière intervention30 juillet 201244 27 déc. 2004 à 13:36
short tags...
au moins :
<? ceci n'est pas portable, alors que <?php ceci l'est...
_sebf
Messages postés42Date d'inscriptionjeudi 1 avril 2004StatutMembreDernière intervention 7 octobre 2006 27 déc. 2004 à 13:19
Peux tu expliquer oùu sont les différences et pourquoi ?
Merci.
cs_Anthomicro
Messages postés9433Date d'inscriptionmardi 9 octobre 2001StatutMembreDernière intervention13 avril 20078 27 déc. 2004 à 12:56
Salut ;-)
remplaces ton code par ça :
<?php
// **********************************************
// Variables à Définir
// **********************************************
$nombre_de_post_a_afficher=5;
// ********************************
// Connexion à la base Mysql
// ********************************
mysql_connect('server','login','password');
mysql_select_db('nom_de_la_base');
// **********************************************
// Récupération du nombre de post totale
// **********************************************
$id=mysql_query('select topic_id from z_forum_topics where forum_id!=11');
$nombre_de_post_total=mysql_num_rows($id);
// **********************************************
// Affichage de l'entête de la page Xml
// **********************************************
header('Content-Type: text/xml');
echo "<?xml version="1.0" encoding="ISO-8859-1"?>\n\n";
echo "<!DOCTYPE rss PUBLIC "-//Netscape Communications//DTD RSS 0.91//EN"\n";
echo " "http://my.netscape.com/publish/formats/rss-0.91.dtd">\n\n";
echo "<rss version= "0.91">\n\n";
// **********************************************
// Affichage de la catégorie
// **********************************************
echo "<channel>\n";
echo "<title>Le Forum du monde TCPIP avec FrameIP.com</title>\n";
echo "<link>http://www.frameip.com/</link>\n";
echo "<description>FrameIP, un forum pour les spécialistes IP - Les 5 derniers posts</description>\n";
echo "<language>fr</language>\n\n";
echo "\n";
echo "<title>FrameIP</title>\n";
echo " http://www.frameip.com/logos/logo_30.jpg \n";
echo "<link>http://www.frameip.com</link>\n";
echo "<description>FrameIP, un forum pour les spécialistes IP. - TcpIP - Voip - Toip - Vpn - Ipv6</description>\n";
echo "<width>142</width>\n";
echo "<height>56</height>\n";
echo "\n\n";
// **********************************************
// Récupération des Posts
// **********************************************
$id =mysql_query("select topic_title,topic_id from z_forum_topics where forum_id!=11 ORDER BY topic_id desc");
// **********************************************
// Affichage de l'entête de la page Xml
// **********************************************
echo "</channel>\n\n";
echo "</rss>";
9 avril 2006 à 14:15
9 avril 2006 à 13:15
Bon, sinon, phpbb c'est pas super optimisé...
9 avril 2006 à 13:13
9 avril 2006 à 12:35
22 août 2005 à 00:37
22 août 2005 à 00:35
6 févr. 2005 à 16:07
a+
5 janv. 2005 à 21:42
Merci à vous
_SebF
2 janv. 2005 à 16:31
J'aimes pas trop les trucs tout faits...
Si qqn veut, pour ajouter un module à phpbb, je vais tenter de faire un réseau de neurones en php pour censurer les messages...
si c'est trop lent, je le ferais en C et php ne fera que l'apeler grace à la commande system...
Si qqn est volontaire, ou si qqn à de la doc...
2 janv. 2005 à 14:50
$id=mysql_query("select topic_title,topic_id from z_forum_topics where forum_id!=11 ORDER BY topic_id desc");
à remplacer par
$id=mysql_query("SELECT topic_title,topic_id FROM z_forum_topics WHERE forum_id!=11 ORDER BY topic_id DESC LIMIT ".$nombre_de_post_a_afficher);
Ensuite
for ($i=1;$i<=$nombre_de_post_a_afficher;$i++)
{
$tempo=mysql_fetch_row($id);
echo "\n";
echo "<title>$tempo[0]</title>\n";
echo "<link>http://www.frameip.com/forum/viewtopic.php?t=$tempo[1]</link>\n";
echo "\n\n";
}
à remplacer par
while($tempo=mysql_fetch_row($id))
{
echo "\n";
echo "<title>".$tempo[0]."</title>\n";
echo "<link>http://www.frameip.com/forum/viewtopic.php?t=".$tempo[1]."</link>\n";
echo "\n\n";
}
et encore...
a +
2 janv. 2005 à 14:33
2 janv. 2005 à 13:33
vraiment bien au niveau optimisation, non.
2 janv. 2005 à 13:26
C'est vraiment bien comme forum ?
2 janv. 2005 à 13:02
for ($i=1;$i<=$nombre_de_post_a_afficher;$i++)
{
$tempo=mysql_fetch_array($id);
echo "\n";
echo "<title>$tempo[0]</title>\n";
echo "<link>http://www.frameip.com/forum/viewtopic.php?t=$tempo[1]</link>\n";
echo "\n\n";
}
à remplacer par ça :
for ($i=1;$i<=$nombre_de_post_a_afficher;$i++)
{
$tempo=mysql_fetch_row($id);
echo "\n";
echo "<title>$tempo[0]</title>\n";
echo "<link>http://www.frameip.com/forum/viewtopic.php?t=$tempo[1]</link>\n";
echo "\n\n";
}
car dans ce cas le fetch_array ne sert à rien si ce n'est qu'à ralentir le script.
a +
2 janv. 2005 à 12:52
-> Shorts tags (ca a été dit)
-> Préfère mysql_fetch_assoc à mysql_fetch_array
-> Ecris tes requêtes SQL avec les mots spécifiques en majucusules (SELECT, WHERE...)
Voilà !
++
27 déc. 2004 à 15:59
Malgré quelque fonction intérrésante que je m'enpresse de modifier/utiliser .
---------------------------
http://fg.logiciel.free.fr
27 déc. 2004 à 14:48
a +
27 déc. 2004 à 13:36
au moins :
<? ceci n'est pas portable, alors que <?php ceci l'est...
27 déc. 2004 à 13:19
Merci.
27 déc. 2004 à 12:56
remplaces ton code par ça :
<?php
// **********************************************
// Variables à Définir
// **********************************************
$nombre_de_post_a_afficher=5;
// ********************************
// Connexion à la base Mysql
// ********************************
mysql_connect('server','login','password');
mysql_select_db('nom_de_la_base');
// **********************************************
// Récupération du nombre de post totale
// **********************************************
$id=mysql_query('select topic_id from z_forum_topics where forum_id!=11');
$nombre_de_post_total=mysql_num_rows($id);
// **********************************************
// Affichage de l'entête de la page Xml
// **********************************************
header('Content-Type: text/xml');
echo "<?xml version="1.0" encoding="ISO-8859-1"?>\n\n";
echo "<!DOCTYPE rss PUBLIC "-//Netscape Communications//DTD RSS 0.91//EN"\n";
echo " "http://my.netscape.com/publish/formats/rss-0.91.dtd">\n\n";
echo "<rss version= "0.91">\n\n";
// **********************************************
// Affichage de la catégorie
// **********************************************
echo "<channel>\n";
echo "<title>Le Forum du monde TCPIP avec FrameIP.com</title>\n";
echo "<link>http://www.frameip.com/</link>\n";
echo "<description>FrameIP, un forum pour les spécialistes IP - Les 5 derniers posts</description>\n";
echo "<language>fr</language>\n\n";
echo "\n";
echo "<title>FrameIP</title>\n";
echo " http://www.frameip.com/logos/logo_30.jpg \n";
echo "<link>http://www.frameip.com</link>\n";
echo "<description>FrameIP, un forum pour les spécialistes IP. - TcpIP - Voip - Toip - Vpn - Ipv6</description>\n";
echo "<width>142</width>\n";
echo "<height>56</height>\n";
echo "\n\n";
// **********************************************
// Récupération des Posts
// **********************************************
$id =mysql_query("select topic_title,topic_id from z_forum_topics where forum_id!=11 ORDER BY topic_id desc");
// **********************************************
// Affichage des Posts
// **********************************************
for ($i=1;$i<=$nombre_de_post_a_afficher;$i++)
{
$tempo=mysql_fetch_array($id);
echo "\n";
echo "<title>$tempo[0]</title>\n";
echo "<link>http://www.frameip.com/forum/viewtopic.php?t=$tempo[1]</link>\n";
echo "\n\n";
}
// **********************************************
// Affichage de l'entête de la page Xml
// **********************************************
echo "</channel>\n\n";
echo "</rss>";
?>
Tu peux également optimiser les echos
a +