Neo_Ryu
Messages postés21Date d'inscriptionmercredi 14 janvier 2004StatutMembreDernière intervention 6 juin 2011 13 janv. 2010 à 15:22
Afin d'aider les personnes qui désirerai sécuriser un peu mieux leur textarea par exemple, je recommande cette ligne de code :
nl2br(htmlentities($_POST['description']))
htmlentities va permettre de ne pas interpreter les balises html afind e les laisser telles qu'elle comme du texte ;
nl2br va interpréter le retour de chariot (touche entrée pour passer une ligne en gros) par un
qui sera lui compatible.
Tu peux éventuellement améliorer ta source en éliminant les lettres entre < et > puis appliquer le filtre, enfin a réfléchir ^^
cs_keket
Messages postés91Date d'inscriptionlundi 25 juillet 2005StatutMembreDernière intervention18 mai 2010 8 déc. 2009 à 08:31
Bonjour, je reviens sur cette source horrible que j'avais pondus. La version v2 devrait voir le jour bientôt car je viens seulement de constater que j'avais oublier cette dernière. Désoler pour le retard. Cordialement
abdelaziz_info
Messages postés120Date d'inscriptionlundi 19 juillet 2004StatutMembreDernière intervention12 janvier 2017 25 févr. 2008 à 02:11
Bonjour à tous :
Sauf ceux qui aiment ce qu’ils font qui attendent avec impatience la résulta de leur travail, ne t’inquiètes pas (coucou747) tu as souvent des très bonnes idées que j’apprécie bien ….
En plus le premier code que j’ai testé en arrivant sur (phpcs) été le tien, et ça fonctionnait parfaitement ; je ne l’ai pas noté mais je vais immédiatement le faire, et je te merci.
Pour ce code en cotés technique et théorique les experts ont dit leurs mots, mais du coté pratique ce code fonctionne et ne déclanche aucune alerte d’erreur sauf les espaces qui remplacent les balises :
Avec ($balise," ",$txt) avec ça ($balise,"",$txt) le texte est plus correcte.
Merci à tous et bon courage.
coucou747
Messages postés12303Date d'inscriptionmardi 10 février 2004StatutMembreDernière intervention30 juillet 201244 19 févr. 2008 à 17:40
j'ai aucune idee de comment dire ca... il y a plein de fois ou sur le net, je posais une question, et on me disait des trucs genre :
"mais rtfm sale noob"
ou genre
"debrouille toi seul ou avec google"
alors comment dire a un mec qu'il a fait un truc pas terrible et qu'il devrait se documenter ? Si ce n'est : lister les erreurs pour qu'il puisse poser des questions et chercher sur google plus facilement ?
je croyais ma facon de commenter les sources et repondre au forum, plus courtoise et plus utile...
ne faire que lister les erreurs et proposer des ameliorations sans m'impliquer, sans dire ce que j'en pense vraiment, je croyais que c'etait la solution la plus "politiquement correcte" de m'adresser aux auteurs de sources...
mettre un tu peux plait
mettre un tu aurais du, tu dois, tu ne dois pas, ne plait pas...
je ne comprends pas vraiment pourquoi quand je dis que le code ici ne DOIT PAS etre utilise, ca choque, alors que quand qqn dit qu'on ne doit pas diviser par 0 en math, ca ne derange personne...
sur ce, je ne commente pas pour etre aime, sinon, j'ajouterais plein de <3 :) ^^ partout, et personne n'en aurait rien a faire...
par contre, quand je vois une source `debutant`, j'aimerais qu'on me laisse tranquile quand j'essaie de lui expliquer comment il doit coder pour poster ses prochaines en `initie`, voir updater la source vers `initie`, si il la travaille correctement...
c'est pas en crachant a la figure des gens qu'on en obtient quelquechose, j'en suis certain, mais je n'ai jamais(ou rarement) crache a la figure des gens, sur CS, a partir d'une simple source (j'ai fait d'autres erreurs, j'en conviens), j'ai critique le code qu'ils avaient soumis a la critique.... je liste les defauts de la source, pas de l'auteur....
si tu vas voir un skyblog au hazard, tu verras des trucs genre : "wesh T tro bo" ca c'est pas qqch de constructif, ici, les commentaires n'ont pas ce role... quand on poste, c'est pas dans le but de lire :
"super cool, c'est tout ce que je cherchais"
parce-que ce qu'un inconu cherche, on s'en fout quand on poste...
on poste pour partager, certe, mais pas seulement pour partager un code, pour partager une methode, un algo, etc... On poste aussi pour s'ameliorer, et c'est pour ca qu'un commentaire genre "a la ligne 42 t'as une faille de securite" poste sans courtoisie, de facon brute, sera TOUJOURS plus utile que "trop cool comme code !"
alors je pourrais faire comme les admins CS : ajouter "cordialement" a la fin de mes commentaires, mais j'ai aucune envie de m'impliquer dedans... je liste les defauts, si il ameliore, je note, sinon, je quitte, et quand qqn revient plusieurs mois apres, si il dit genre "trop bien" alors que la source est toujours aussi mauvaise, je mets "1/10" pour que personne ne se leure... je mets rarement 1/10 comme ca, des les premiers jours, pour le plaisir de mettre 1/10... Et j'en ai marre de me faire insulter sur CS aussi, donc si je sors un "cordialement", ou autre formules (pompeuses) du genre, ca risque de se retourner contre moi, a un autre moment...
Sur ce, c'est toujours un plaisir de voir que mes critiques sont lues, que mes propositions d'ameliorations servent a quelquechose, et j'attend avec impatience la V2 de ce code (non pas pour l'utiliser, mais pour voir si mes critiques (bien que parfois brutales) sont utiles ou pas)
codefalse
Messages postés1123Date d'inscriptionmardi 8 janvier 2002StatutModérateurDernière intervention21 avril 20091 19 févr. 2008 à 17:05
Utiliser une variable globale, c'est déjà mieux, mais c'est quand meme déconseillé (moin que l'inclusion dans la fonction, jte rassure ;)).
En fait, tout ce que tu veux que ta fonction utilise, fait lui passer en paramètre. Si j'ai rien loupé, ton fichier globales.inc.php ou ta variable globale contient un tableau de balises que tu veux garder c'est ca ? Si oui passe lui en deuxième paramètre un tableau contenant la liste des éléments que tu veux garder et hop ! :)
cs_keket
Messages postés91Date d'inscriptionlundi 25 juillet 2005StatutMembreDernière intervention18 mai 2010 19 févr. 2008 à 15:48
salut, par manque de temps, j'ai pas pu changer mon script, mais je le ferais plus tard.
j'ai réussi a changer mon include dans mon code par une variable globale, sa fait plus bo :p. A +. Et merci Malalam ;)
malalam
Messages postés10839Date d'inscriptionlundi 24 février 2003StatutMembreDernière intervention 2 mars 201025 19 févr. 2008 à 09:37
@cload => je suis d'accord avec toi, et je suis bien conscient que Coucou s'emporte parfois un peu trop. Et je sais qu'il le sait aussi. EZt qu'il entendra ce message :-)
cload
Messages postés8Date d'inscriptionjeudi 29 janvier 2004StatutMembreDernière intervention19 février 2008 19 févr. 2008 à 08:14
Désolé pour mon ambiguité Malalam, je parlais de coucou.Et je suis assez d'accord avec ton commentaire.
Mais, avec sa réaction, je vois que le 747 sais aussi mettre de l'eau dans le vin (au figuré, bien sur). Il fait partie des plus brillants de coudesource mais sa façon rebrousse-poil finit par... rebrousser le poil.
On a tous débuté. Et on n'a pas persévéré parce que des caïds nous écrasaient, mais nous encourageaient.
Mes excuses aux modérateurs semblant mis en cause (Malalam, Codefalse...) : j'apprécie toujours vos commentaires qui sont toujours mesurés. Ma demande est de calmer certains débordements. Cela ne retire rien aux qualités de ceux qui les émettent et j'ai beaucoup appris grace à coucou747. Mais de bonnes limites dans la comm ne peuvent pas faire de mal.
codefalse
Messages postés1123Date d'inscriptionmardi 8 janvier 2002StatutModérateurDernière intervention21 avril 20091 18 févr. 2008 à 20:45
Codes-Source a la mauvaise réputation d'être un site qui critique toutes les sources, avec toujours de mauvais avis, sec, méchant parfois même insultant. Je comprends que quand on passe 1 jour, 1 semaine, 1 mois sur un truc dont on est fière, que l'on veux le partager, et qu'en échange on obtient des "tu peux faire ça en une ligne", "ton code est assez moche", et parfois pire, genre juste un "c'est nul !".
La chose importante, c'est que le commentaire est pour la plupart du temps expliqué, c'est ca qu'il faut retenir !
Malalam à déjà résumé les grandes lignes, je vais pas le répeter. Je tiendrai juste à dire que quand je laisse une source qui devrait être supprimée, je met généralement une remarque à l'auteur de la source comme quoi s'il ne fait pas d'efforts pour l'améliorer, il se verra sa source supprimée.
Car c'est ca qui est important ! Que vous ayez posté un code de x lignes qu'une fonction toute faite fait déjà et que vous ne cherchez pas à la rendre meilleure, je ne vois pas l'utilité de la laisser. Maintenant si vous montrez l'importance que vous y attachez, alors elle aura tout son mérite à y rester !
Courage et perseverez !
(Surtout vous, Malalam et Coucou, vous avez tant à apprendre ! ;) :p) )
malalam
Messages postés10839Date d'inscriptionlundi 24 février 2003StatutMembreDernière intervention 2 mars 201025 18 févr. 2008 à 20:02
@cload =>
que n'aimes-tu pas ? Mon "tact", ou "l'explosion de gueule" de Coucou ?
Une chose est certaine : il est difficile de répéter 1000 fois les mêmes choses en gardant son calme, malheureusement.
Certes, parfois, et selon les caractères..."on" y va un peu trop fort.
Il n'empêche, quand on poste un code sur phpcs, c'est sans doute qu'on est "actif" sur phpcs, même si notre activité consiste à lire les commentaires et post. Et à ce compte là, il me semblerait normal de tâcher de ne pas faire les mêmes bêtises qui ont été maintes fois décriées. Sinon, forcément, on s'expose à être aussi décrié.
Pour être franc, j'ai hésité à supprimer ce code, avec simplement ma remarque en commentaire pour l'auteur. Mais ce code est une réponse (mauvaise certes pour les raisons cités, mais une réponse quand même) à une problématique fréquente. Mon espoir donc est que quelqu'un ayant le même problème tombe sur ce code, LISE les commentaires et les utilise à bon escient. Là où je me leurre bien évidemment c'est que la plupart du temps, ce quelqu'un va tomber sur ce code, ne tenir aucun compte des commentaires et l'appliquer tel quel.
Et ce même quelqu'un , un jour, postera sur phpcs un code présentant les mêmes erreurs, et...forcément, il sera critiqué.
Et ça, ça me gêne...parce que si je virais tous les codes "mal codés" de phpcs, ce quelqu'un serait bien obligé -sans même le savoir- de n'avoir que de bons exemples sous les yeux.
La critique n'est jamais agréable. Mais personne n'a jamais dit que l'apprentissage était un chemin facile et bordé de jolies petites fleurs, sous un ciel magnifique et un soleil radieux. SAUF quand on tâche vraiment d'appliquer les conseils -avisés tant qu'à faire- de personnes plus expérimentées.
Certains codes de débutants sont bien accueillis, d'autres moins. A qui doit en incomber la faute, réellement?
De plus, keket a bien réagi je trouve. Ce que j'aimerais maintenant, c'est qu'il propose une alternative mieux foutue à son code, de manière à bien montrer la "good practise". Mais sans supprimer la "bad practise" parce ce que sinon son code se résumerait soit à une fonction php existante, soit à une simple expression régulière...ça n'aurait pas grand intérêt ici (plutôt sur codyx.org).
coucou747
Messages postés12303Date d'inscriptionmardi 10 février 2004StatutMembreDernière intervention30 juillet 201244 18 févr. 2008 à 19:33
lister les problemes d'une soure, c'est pas la meme chose qu'exploser la gueule de qqn...
j'aurais du dire quoi ? un truc genre :
"j'ai le regret de t'annoncer que la balise <? n'est pas activee sur mon serveur, tu devrais utiliser <?php pour la compatibilite, ce qui me permettrait d'utiliser avec joie ton formidable script, apres avoir change tes balises en equivalent ``a la norme``."
cload
Messages postés8Date d'inscriptionjeudi 29 janvier 2004StatutMembreDernière intervention19 février 2008 18 févr. 2008 à 19:01
Pauvre keket ! Voilà bien l'art de casser. Malalam donne des infos avec tact. Coucou explose la gueule de tous les trous du q qui, bien que classant humblement leur script en débutant, ont l'audace de ne rien apprendre au vieux loup du regex dans le plus que parfait.
Plus personne ne va oser proposer de code à ce rythme !
Il n'y a pas de modérateur ici ?
cs_keket
Messages postés91Date d'inscriptionlundi 25 juillet 2005StatutMembreDernière intervention18 mai 2010 15 févr. 2008 à 19:05
lol, désolé, je le savais pas. Jdemandais juste de laide pour le faire sur le fofo, mais personne n'a réussi a me donner une réponse, je me suis débrouiller comme je pouvais ^^.
coucou747
Messages postés12303Date d'inscriptionmardi 10 février 2004StatutMembreDernière intervention30 juillet 201244 15 févr. 2008 à 11:29
ton code est assez moche pour certains trucs (un include dans une fonction, un vieux html, etc...), ton code est en vieux php4 (php6 va sortir bientot), on aurait pu s'attendre a voir une truc genre "classe traitement de html & BBcode" mais non, ton code ne fait "que" supprimer des balises non desirees, et il le fait mal :
de plus, une fonction standard le faisait deja....
cs_Amnesiak
Messages postés2Date d'inscriptionlundi 21 octobre 2002StatutMembreDernière intervention15 février 2008 15 févr. 2008 à 08:38
Et oui, strip_tags() et son paramètre "liste blanche" t'auraient épargné tout ce travail ;-)
codefalse
Messages postés1123Date d'inscriptionmardi 8 janvier 2002StatutModérateurDernière intervention21 avril 20091 14 févr. 2008 à 23:31
En effet, une seule ligne te permet cela avec les expressions régulieres ! :p
Perdu ! Tout ce temps de gaché !
Sinon, "Code a simplifier peut être", euh oui :
# ?><script>alert('tototo');</script><?
;)
webdeb
Messages postés488Date d'inscriptionsamedi 5 avril 2003StatutMembreDernière intervention31 mars 20094 14 févr. 2008 à 23:28
+1 avec Malalam...
malalam
Messages postés10839Date d'inscriptionlundi 24 février 2003StatutMembreDernière intervention 2 mars 201025 14 févr. 2008 à 16:26
13 janv. 2010 à 15:22
nl2br(htmlentities($_POST['description']))
htmlentities va permettre de ne pas interpreter les balises html afind e les laisser telles qu'elle comme du texte ;
nl2br va interpréter le retour de chariot (touche entrée pour passer une ligne en gros) par un
qui sera lui compatible.
Tu peux éventuellement améliorer ta source en éliminant les lettres entre < et > puis appliquer le filtre, enfin a réfléchir ^^
8 déc. 2009 à 08:31
25 févr. 2008 à 02:11
Sauf ceux qui aiment ce qu’ils font qui attendent avec impatience la résulta de leur travail, ne t’inquiètes pas (coucou747) tu as souvent des très bonnes idées que j’apprécie bien ….
En plus le premier code que j’ai testé en arrivant sur (phpcs) été le tien, et ça fonctionnait parfaitement ; je ne l’ai pas noté mais je vais immédiatement le faire, et je te merci.
Pour ce code en cotés technique et théorique les experts ont dit leurs mots, mais du coté pratique ce code fonctionne et ne déclanche aucune alerte d’erreur sauf les espaces qui remplacent les balises :
Avec ($balise," ",$txt) avec ça ($balise,"",$txt) le texte est plus correcte.
Merci à tous et bon courage.
19 févr. 2008 à 17:40
"mais rtfm sale noob"
ou genre
"debrouille toi seul ou avec google"
alors comment dire a un mec qu'il a fait un truc pas terrible et qu'il devrait se documenter ? Si ce n'est : lister les erreurs pour qu'il puisse poser des questions et chercher sur google plus facilement ?
je croyais ma facon de commenter les sources et repondre au forum, plus courtoise et plus utile...
ne faire que lister les erreurs et proposer des ameliorations sans m'impliquer, sans dire ce que j'en pense vraiment, je croyais que c'etait la solution la plus "politiquement correcte" de m'adresser aux auteurs de sources...
mettre un tu peux plait
mettre un tu aurais du, tu dois, tu ne dois pas, ne plait pas...
je ne comprends pas vraiment pourquoi quand je dis que le code ici ne DOIT PAS etre utilise, ca choque, alors que quand qqn dit qu'on ne doit pas diviser par 0 en math, ca ne derange personne...
sur ce, je ne commente pas pour etre aime, sinon, j'ajouterais plein de <3 :) ^^ partout, et personne n'en aurait rien a faire...
par contre, quand je vois une source `debutant`, j'aimerais qu'on me laisse tranquile quand j'essaie de lui expliquer comment il doit coder pour poster ses prochaines en `initie`, voir updater la source vers `initie`, si il la travaille correctement...
c'est pas en crachant a la figure des gens qu'on en obtient quelquechose, j'en suis certain, mais je n'ai jamais(ou rarement) crache a la figure des gens, sur CS, a partir d'une simple source (j'ai fait d'autres erreurs, j'en conviens), j'ai critique le code qu'ils avaient soumis a la critique.... je liste les defauts de la source, pas de l'auteur....
si tu vas voir un skyblog au hazard, tu verras des trucs genre : "wesh T tro bo" ca c'est pas qqch de constructif, ici, les commentaires n'ont pas ce role... quand on poste, c'est pas dans le but de lire :
"super cool, c'est tout ce que je cherchais"
parce-que ce qu'un inconu cherche, on s'en fout quand on poste...
on poste pour partager, certe, mais pas seulement pour partager un code, pour partager une methode, un algo, etc... On poste aussi pour s'ameliorer, et c'est pour ca qu'un commentaire genre "a la ligne 42 t'as une faille de securite" poste sans courtoisie, de facon brute, sera TOUJOURS plus utile que "trop cool comme code !"
alors je pourrais faire comme les admins CS : ajouter "cordialement" a la fin de mes commentaires, mais j'ai aucune envie de m'impliquer dedans... je liste les defauts, si il ameliore, je note, sinon, je quitte, et quand qqn revient plusieurs mois apres, si il dit genre "trop bien" alors que la source est toujours aussi mauvaise, je mets "1/10" pour que personne ne se leure... je mets rarement 1/10 comme ca, des les premiers jours, pour le plaisir de mettre 1/10... Et j'en ai marre de me faire insulter sur CS aussi, donc si je sors un "cordialement", ou autre formules (pompeuses) du genre, ca risque de se retourner contre moi, a un autre moment...
Sur ce, c'est toujours un plaisir de voir que mes critiques sont lues, que mes propositions d'ameliorations servent a quelquechose, et j'attend avec impatience la V2 de ce code (non pas pour l'utiliser, mais pour voir si mes critiques (bien que parfois brutales) sont utiles ou pas)
19 févr. 2008 à 17:05
En fait, tout ce que tu veux que ta fonction utilise, fait lui passer en paramètre. Si j'ai rien loupé, ton fichier globales.inc.php ou ta variable globale contient un tableau de balises que tu veux garder c'est ca ? Si oui passe lui en deuxième paramètre un tableau contenant la liste des éléments que tu veux garder et hop ! :)
19 févr. 2008 à 15:48
j'ai réussi a changer mon include dans mon code par une variable globale, sa fait plus bo :p. A +. Et merci Malalam ;)
19 févr. 2008 à 09:37
19 févr. 2008 à 08:14
Mais, avec sa réaction, je vois que le 747 sais aussi mettre de l'eau dans le vin (au figuré, bien sur). Il fait partie des plus brillants de coudesource mais sa façon rebrousse-poil finit par... rebrousser le poil.
On a tous débuté. Et on n'a pas persévéré parce que des caïds nous écrasaient, mais nous encourageaient.
Mes excuses aux modérateurs semblant mis en cause (Malalam, Codefalse...) : j'apprécie toujours vos commentaires qui sont toujours mesurés. Ma demande est de calmer certains débordements. Cela ne retire rien aux qualités de ceux qui les émettent et j'ai beaucoup appris grace à coucou747. Mais de bonnes limites dans la comm ne peuvent pas faire de mal.
18 févr. 2008 à 20:45
La chose importante, c'est que le commentaire est pour la plupart du temps expliqué, c'est ca qu'il faut retenir !
Malalam à déjà résumé les grandes lignes, je vais pas le répeter. Je tiendrai juste à dire que quand je laisse une source qui devrait être supprimée, je met généralement une remarque à l'auteur de la source comme quoi s'il ne fait pas d'efforts pour l'améliorer, il se verra sa source supprimée.
Car c'est ca qui est important ! Que vous ayez posté un code de x lignes qu'une fonction toute faite fait déjà et que vous ne cherchez pas à la rendre meilleure, je ne vois pas l'utilité de la laisser. Maintenant si vous montrez l'importance que vous y attachez, alors elle aura tout son mérite à y rester !
Courage et perseverez !
(Surtout vous, Malalam et Coucou, vous avez tant à apprendre ! ;) :p) )
18 févr. 2008 à 20:02
que n'aimes-tu pas ? Mon "tact", ou "l'explosion de gueule" de Coucou ?
Une chose est certaine : il est difficile de répéter 1000 fois les mêmes choses en gardant son calme, malheureusement.
Certes, parfois, et selon les caractères..."on" y va un peu trop fort.
Il n'empêche, quand on poste un code sur phpcs, c'est sans doute qu'on est "actif" sur phpcs, même si notre activité consiste à lire les commentaires et post. Et à ce compte là, il me semblerait normal de tâcher de ne pas faire les mêmes bêtises qui ont été maintes fois décriées. Sinon, forcément, on s'expose à être aussi décrié.
Pour être franc, j'ai hésité à supprimer ce code, avec simplement ma remarque en commentaire pour l'auteur. Mais ce code est une réponse (mauvaise certes pour les raisons cités, mais une réponse quand même) à une problématique fréquente. Mon espoir donc est que quelqu'un ayant le même problème tombe sur ce code, LISE les commentaires et les utilise à bon escient. Là où je me leurre bien évidemment c'est que la plupart du temps, ce quelqu'un va tomber sur ce code, ne tenir aucun compte des commentaires et l'appliquer tel quel.
Et ce même quelqu'un , un jour, postera sur phpcs un code présentant les mêmes erreurs, et...forcément, il sera critiqué.
Et ça, ça me gêne...parce que si je virais tous les codes "mal codés" de phpcs, ce quelqu'un serait bien obligé -sans même le savoir- de n'avoir que de bons exemples sous les yeux.
La critique n'est jamais agréable. Mais personne n'a jamais dit que l'apprentissage était un chemin facile et bordé de jolies petites fleurs, sous un ciel magnifique et un soleil radieux. SAUF quand on tâche vraiment d'appliquer les conseils -avisés tant qu'à faire- de personnes plus expérimentées.
Certains codes de débutants sont bien accueillis, d'autres moins. A qui doit en incomber la faute, réellement?
De plus, keket a bien réagi je trouve. Ce que j'aimerais maintenant, c'est qu'il propose une alternative mieux foutue à son code, de manière à bien montrer la "good practise". Mais sans supprimer la "bad practise" parce ce que sinon son code se résumerait soit à une fonction php existante, soit à une simple expression régulière...ça n'aurait pas grand intérêt ici (plutôt sur codyx.org).
18 févr. 2008 à 19:33
j'aurais du dire quoi ? un truc genre :
"j'ai le regret de t'annoncer que la balise <? n'est pas activee sur mon serveur, tu devrais utiliser <?php pour la compatibilite, ce qui me permettrait d'utiliser avec joie ton formidable script, apres avoir change tes balises en equivalent ``a la norme``."
18 févr. 2008 à 19:01
Plus personne ne va oser proposer de code à ce rythme !
Il n'y a pas de modérateur ici ?
15 févr. 2008 à 19:05
15 févr. 2008 à 11:29
de plus, une fonction standard le faisait deja....
15 févr. 2008 à 08:38
14 févr. 2008 à 23:31
Perdu ! Tout ce temps de gaché !
Sinon, "Code a simplifier peut être", euh oui :
# ?><script>alert('tototo');</script><?
;)
14 févr. 2008 à 23:28
14 févr. 2008 à 16:26
tu peux faire ça en une ligne avec :
- une expression régulière
- http://www.php.net/manual/fr/function.strip-tags.php