1605Fermer1607
flankerLe 30/03/2016 à 09:37
Nil (./1603) :
Euh en PHP, ça fait longtemps que les injections SQL sont éliminées (ça date de quand, déjà, PDO ?!).Pour le reste, ça dépend beaucoup de ton infrastructure serveur (si tu utilises un proxy front-end et de l'url rewriting, tu n'as jamais accès au code) et de ta façon de développer, c'est vrai. Mais c'est aussi ce qui permet la souplesse de la chose (avec un Tomcat, par exemple, tu évites aussi beaucoup de failles, mais tu n'as pas la même souplesse de déploiement).
Arvi89 (./1604) :
Bah deja tu compares des framework a un langage, si tu prends RoR et Django, prend Symfony ou Laravel pour PHP (entre bien d'autres), ce n'est deja plus la meme chose.
Et effectivement, PDO est la depuis un bon bout de temps.
Quand on utilise un framework, oui, je suis d'accord avec vous. Mais PHP est censé être autosuffisant pour faire du web (c'est quand même un langage qui est fait pour !) et la plupart des gens, si ce n'est tous, commencent par faire du PHP brut. Combien de sites faits en PHP "pur", sans framework généraliste ? Il suffit de voir des sites comme Wordpress, ou PhpBB qui sont toujours faits "à la main", avec le lots de failles qui vont avec.

Quand tu prends un autre langage, tu n'auras pas tellement le choix et tu prendras un framework (sauf peut-être avec perl avec lequel tu feras un peu de cgi).
C'est ce que je disais plus haut : avec PHP, le comportement par défaut (faire sans framework et tout faire à la main) est mauvais et conduit à avoir des failles. Avec les autres langages "classiques", le comportement par défaut est beaucoup plus sain, dans la mesure où de toute façon tu ne peux pas vraiment faire autrement.