samirpaul
Messages postés33Date d'inscriptionsamedi 3 juin 2006StatutMembreDernière intervention14 août 2006
-
12 août 2006 à 16:31
daweb
Messages postés33Date d'inscriptionmardi 3 octobre 2006StatutMembreDernière intervention18 décembre 2006
-
7 oct. 2006 à 18:20
Cette discussion concerne un article du site. Pour la consulter dans son contexte d'origine, cliquez sur le lien ci-dessous.
kankrelune
Messages postés1293Date d'inscriptionmardi 9 novembre 2004StatutMembreDernière intervention21 mai 2015 18 août 2006 à 15:19
Normalement ++$i est légèrement plus rapide que $i++ après je sais pas si c'est valable pour une boucle... .. .
Pour samirpaul... mieux vaut des commentaires (constructifs) et pas de note que le contraire... faut perdre les réflexes d'écolier... .. . ;o)
@ tchaOo°
le_m3ellem
Messages postés6Date d'inscriptionmardi 15 août 2006StatutMembreDernière intervention 8 octobre 2006 15 août 2006 à 18:11
vraiment excellent graphisme
malalam
Messages postés10839Date d'inscriptionlundi 24 février 2003StatutMembreDernière intervention 2 mars 201025 15 août 2006 à 14:32
On t'a clairement expliqué ce qui n'allait pas. Tu t'en fiches et tu veux être noté en l'état, c'est ton problème.
coucou747
Messages postés12303Date d'inscriptionmardi 10 février 2004StatutMembreDernière intervention30 juillet 201244 15 août 2006 à 01:02
lorcequ'un code marche, il n'est pas forcément propre... (cf windows...) bref...
bon, pour les histoires de ++$i ou $i++, faudrait bencher, mais parfois, certains compilateurs font plus vite la comparaison à 0 (en c/cpp) qu'une comparaison d'inferiorité par rapport à autre chose, donc on fait :
for ($i=...;$i<0;--$i){};
ou
for ($i=...;$i<0;$i--){};
maintenant, pour ce qui est du fait que ça se fasse avant ou après un éventuel appel... ça ne change rien (enfin, je penses)
malalam
Messages postés10839Date d'inscriptionlundi 24 février 2003StatutMembreDernière intervention 2 mars 201025 14 août 2006 à 15:12
Tu veux une note ? soit...je pensais attendre tes corrections avant de noter. mais si tu insistes...ma note pour ce code en l'état : 2/10.
Les modifications, on te les as expliquées. Le pourquoi aussi.
samirpaul
Messages postés33Date d'inscriptionsamedi 3 juin 2006StatutMembreDernière intervention14 août 2006 14 août 2006 à 14:33
Et en plus y a que du bla bla...
j'attends des notes ;)
..............................
samirpaul
Messages postés33Date d'inscriptionsamedi 3 juin 2006StatutMembreDernière intervention14 août 2006 14 août 2006 à 10:35
Ok !
Mais moi je sais pas ce qui ne vas pas avec ce code ; mais en tout cas ça marche parfaitement !
alors pourquoi des tonnes de corrections ? est-ce pour me faire craindre la programmation ?
malalam
Messages postés10839Date d'inscriptionlundi 24 février 2003StatutMembreDernière intervention 2 mars 201025 14 août 2006 à 08:05
hello,
là il faudrait que quelqu'un me confirme, mais moi j'ai appris à écrire une boucle comme ça "$i++" et non "++$i". Y a-t-il une règle ?
=> nan, y a pas de règle.
Ici, ça n'a pas d'implication. Enfin tu me diras, j'ai toujours écrit $i++ dans une boucle, et il faudrait peut-être tester.
En tous cas, un petit rappel :
<?php
$a = 1;
$b = $a++;
echo $b; // affiche 1
echo $a; // affiche 2
$c = ++$a;
echo $c; // affiche 3
echo $a; // affiche 3
?>
Sur le code, j'ajoute en vrac :
- que ce type de code est vu et revu...
- qu'utiliser mysql_fetch_array () sans l'option MYSQL_ASSOC ou autre, est inutile. Là, tu bouffes des ressources, parce que mysql_fetch_array () renvoie 1 tableau "double" : indexé associativement (clefs que tu utilises), et indexé numériquement.
- mise en page par tableau, bon...bof.
- cellpadding et cellspacing, entre autres attributs de mise en page, sont dépréciés, au profit des css (voir border-spacing, par exemple, pour un tableau).
- certaines parties de ton code sont répétées. L'intérêt de créer une fonction c'est aussi de pouvoir un peu modulariser...(moduler?).
- tous les serveurs ne sont pas en magic_quotes à On...
- une balise script ne s'écrit pas comme ça. (j'ai la flemme de faire toutes les corrections, désolé).
- SELECT * est à éviter. On nomme les champs que l'on veut récupérer.
- le html est décidément vraiment moche : tu utilises un tas de balises et d'attributs dépréciés.
je me rends compte que certaines parties de mon commentaire sont redondantes avec le commentaires de Kiki2sirom, désolé :-)
Bref, pour moi, à ne pas utiliser; désolé SamirPaul, mais il y a des codes similaires bien mieux codés, tu devrais faire un tour d'horizon pour améliorer ta façon de coder.
kiki2sirom
Messages postés153Date d'inscriptionmardi 17 août 2004StatutMembreDernière intervention23 décembre 2010 13 août 2006 à 15:17
samirpaul
Messages postés33Date d'inscriptionsamedi 3 juin 2006StatutMembreDernière intervention14 août 2006 13 août 2006 à 14:31
Bonjour !
merci pour tes corrections mais une chose que je comprends pas c'est : qu'est ce que c'est q'un doctype et à quoi ça sert ? :(
tnx
kiki2sirom
Messages postés153Date d'inscriptionmardi 17 août 2004StatutMembreDernière intervention23 décembre 2010 12 août 2006 à 23:47
j'ai regardé le code, j'ai pas pu tester encore...
plusieurs choses malgré tout, parfois importantes :
* le poster.php ne contient pas de php (?!?!?), appelle le poster.html !!! idem pour le index.php ->index.html !!
* il faut éviter de fermer puis rouvrir php systématiquement quand il n'y a pas de HTML !! (exemple aleatoire.php, ligne 35-36)
* là il faudrait que quelqu'un me confirme, mais moi j'ai appris à écrire une boucle comme ça "$i++" et non "++$i". Y a-t-il une règle ?
* mysql_connect('localhost', 'root', '');
mysql_select_db('ideetek');
à mettre dans un fichier de connection, et mettre un include après sur chaque php si nécessaire (imagine que tu veuilles par exemple sécuriser ton serveur MySQL et que tu mettes donc un mot de passe ou que tu changes le nom de ta BDD, il faudrait que tu le changes sur CHAQUE page, alors qu'avec un include, 1 SEULE fois)
* il est passé où le DOCTYPE ????
* <script language="Javascript"> à remplacer par <script type="text/javascript"> en fait l'attribut type est obligatoire pour les tags <script> et <style> (j'ai du déjà le dire au moins 20 fois depuis...!!!!)
* une fonction pour un addslashes et un htmlentities, je suis sceptique sur l'optimisation du code là-dessus (des spécialistes d'optimisation pourrait nous en dire plus ??)
* après une idée personnelle mais bon :
tu fais souvent ça j'ai remarqué, ça sert pas à grand chose puisque tu ne réutilises pas par exemple le '$totalDesMessages' autre part dans la page
pourquoi ne pas écrire plutôt (plus rapide) :
$nombreDePages = ceil($donnees['nb_messages'] / $nombreDeMessagesParPage);
* il existe aussi les fonctions en javascript !! plutôt que de faire le test sur les champs non renseignés de lancer un "<meta http-equiv="refresh" content="0;url=poster.php?action=poster">"
je suis désolé mais moi pareil que pour la boucle, j'ai appris à faire des submit et à tester en javascript le remplissage des variables, et non de faire ça, m'enfin pfffffffffffffff...
De plus, une bonne partie du code s'est déjà vu sur une autre de tes sources ?? C'est ptet' pas trop la peine de reposter !!!
Je crois que c'est tout, si quelqu'un voit autre chose, qu'il n'hésite pas !!
Je testerai lundi la source, damn !! c'est le WE quand même ;-)
cdt
kiki
samirpaul
Messages postés33Date d'inscriptionsamedi 3 juin 2006StatutMembreDernière intervention14 août 2006 12 août 2006 à 16:31
Coucou ! j'attends encore vos commentaires et vos notes !
7 oct. 2006 à 18:20
18 août 2006 à 15:19
Pour samirpaul... mieux vaut des commentaires (constructifs) et pas de note que le contraire... faut perdre les réflexes d'écolier... .. . ;o)
@ tchaOo°
15 août 2006 à 18:11
15 août 2006 à 14:32
15 août 2006 à 01:02
bon, pour les histoires de ++$i ou $i++, faudrait bencher, mais parfois, certains compilateurs font plus vite la comparaison à 0 (en c/cpp) qu'une comparaison d'inferiorité par rapport à autre chose, donc on fait :
for ($i=...;$i<0;--$i){};
ou
for ($i=...;$i<0;$i--){};
maintenant, pour ce qui est du fait que ça se fasse avant ou après un éventuel appel... ça ne change rien (enfin, je penses)
14 août 2006 à 15:12
Les modifications, on te les as expliquées. Le pourquoi aussi.
14 août 2006 à 14:33
j'attends des notes ;)
..............................
14 août 2006 à 10:35
Mais moi je sais pas ce qui ne vas pas avec ce code ; mais en tout cas ça marche parfaitement !
alors pourquoi des tonnes de corrections ? est-ce pour me faire craindre la programmation ?
14 août 2006 à 08:05
là il faudrait que quelqu'un me confirme, mais moi j'ai appris à écrire une boucle comme ça "$i++" et non "++$i". Y a-t-il une règle ?
=> nan, y a pas de règle.
Ici, ça n'a pas d'implication. Enfin tu me diras, j'ai toujours écrit $i++ dans une boucle, et il faudrait peut-être tester.
En tous cas, un petit rappel :
<?php
$a = 1;
$b = $a++;
echo $b; // affiche 1
echo $a; // affiche 2
$c = ++$a;
echo $c; // affiche 3
echo $a; // affiche 3
?>
Sur le code, j'ajoute en vrac :
- que ce type de code est vu et revu...
- qu'utiliser mysql_fetch_array () sans l'option MYSQL_ASSOC ou autre, est inutile. Là, tu bouffes des ressources, parce que mysql_fetch_array () renvoie 1 tableau "double" : indexé associativement (clefs que tu utilises), et indexé numériquement.
- mise en page par tableau, bon...bof.
- cellpadding et cellspacing, entre autres attributs de mise en page, sont dépréciés, au profit des css (voir border-spacing, par exemple, pour un tableau).
- certaines parties de ton code sont répétées. L'intérêt de créer une fonction c'est aussi de pouvoir un peu modulariser...(moduler?).
- tous les serveurs ne sont pas en magic_quotes à On...
- une balise script ne s'écrit pas comme ça. (j'ai la flemme de faire toutes les corrections, désolé).
- SELECT * est à éviter. On nomme les champs que l'on veut récupérer.
- le html est décidément vraiment moche : tu utilises un tas de balises et d'attributs dépréciés.
je me rends compte que certaines parties de mon commentaire sont redondantes avec le commentaires de Kiki2sirom, désolé :-)
Bref, pour moi, à ne pas utiliser; désolé SamirPaul, mais il y a des codes similaires bien mieux codés, tu devrais faire un tour d'horizon pour améliorer ta façon de coder.
13 août 2006 à 15:17
http://perso.orange.fr/coin.des.experts/reponses/faq9_64.html
cdt
kiki
13 août 2006 à 14:31
merci pour tes corrections mais une chose que je comprends pas c'est : qu'est ce que c'est q'un doctype et à quoi ça sert ? :(
tnx
12 août 2006 à 23:47
plusieurs choses malgré tout, parfois importantes :
* le poster.php ne contient pas de php (?!?!?), appelle le poster.html !!! idem pour le index.php ->index.html !!
* il faut éviter de fermer puis rouvrir php systématiquement quand il n'y a pas de HTML !! (exemple aleatoire.php, ligne 35-36)
* là il faudrait que quelqu'un me confirme, mais moi j'ai appris à écrire une boucle comme ça "$i++" et non "++$i". Y a-t-il une règle ?
* mysql_connect('localhost', 'root', '');
mysql_select_db('ideetek');
à mettre dans un fichier de connection, et mettre un include après sur chaque php si nécessaire (imagine que tu veuilles par exemple sécuriser ton serveur MySQL et que tu mettes donc un mot de passe ou que tu changes le nom de ta BDD, il faudrait que tu le changes sur CHAQUE page, alors qu'avec un include, 1 SEULE fois)
* il est passé où le DOCTYPE ????
* <script language="Javascript"> à remplacer par <script type="text/javascript"> en fait l'attribut type est obligatoire pour les tags <script> et <style> (j'ai du déjà le dire au moins 20 fois depuis...!!!!)
* une fonction pour un addslashes et un htmlentities, je suis sceptique sur l'optimisation du code là-dessus (des spécialistes d'optimisation pourrait nous en dire plus ??)
* après une idée personnelle mais bon :
tu fais souvent ça j'ai remarqué, ça sert pas à grand chose puisque tu ne réutilises pas par exemple le '$totalDesMessages' autre part dans la page
$totalDesMessages = $donnees['nb_messages'];
$nombreDePages = ceil($totalDesMessages / $nombreDeMessagesParPage);
pourquoi ne pas écrire plutôt (plus rapide) :
$nombreDePages = ceil($donnees['nb_messages'] / $nombreDeMessagesParPage);
* il existe aussi les fonctions en javascript !! plutôt que de faire le test sur les champs non renseignés de lancer un "<meta http-equiv="refresh" content="0;url=poster.php?action=poster">"
je suis désolé mais moi pareil que pour la boucle, j'ai appris à faire des submit et à tester en javascript le remplissage des variables, et non de faire ça, m'enfin pfffffffffffffff...
De plus, une bonne partie du code s'est déjà vu sur une autre de tes sources ?? C'est ptet' pas trop la peine de reposter !!!
Je crois que c'est tout, si quelqu'un voit autre chose, qu'il n'hésite pas !!
Je testerai lundi la source, damn !! c'est le WE quand même ;-)
cdt
kiki
12 août 2006 à 16:31