Salut et bonne année à tous !

Un effet de ma curiosité :

qu'elle est l'utilité d'extensions telles que .css .js .inc pour du code placé en fichiers externes ?

Parce que je me suis rendu compte que si on utilise systématiquement .txt, celà fonctionne tout aussi bien.

voilà Smiley smile
Je me posais la même question hier.
Par exemple, j'ai un fichier index.php qui inclus juste les pages (index.php?page=toto) toto doit-être en quel extension ?
Par habitude je met .inc (en faîte j'ai vu ça dans un cours d'ElMoustiko) mais je me suis souvent posais la question, j'ai aussi remarqué que n'importe quel extension fonctionné (même un .blablabla). Smiley confus
Administrateur
Quand on travaille à plusieurs ou quand on reprend un projet 6 mois après ...
Autant utiliser une "norme" (implicite, fondée sur l'habitude)
Mais tu peux aussi bien utiliser un préfixe histoire que ce soit classé dans l'ordre alphabétique ou ce qui te chante. Simplement tu seras moins bien compris si c'est ta notation à toi tout seul Smiley smile

Enfin human readable quoi Smiley jap
Administrateur
clb56 a écrit :

sauf que je n'aurais vraiment pas pensé que l'on pouvait mettre .blablabla Smiley eek

à+

Il fut un temps où les noms de fichiers ne pouvaient pas excéder 8 caractères et dont l'extension ne pouvaient pas faire plus de 3 caractères (d'où le ".htm" longtemps préféré au ".html").
A présent, la limite est de 32 caractères me semble-t-il, dont autant de caractères que l'on veut pour l'extension.
Salut à tous Smiley smile

Les extensions ont encore une utilité côté serveur.

Par défaut apache 1 et 2 sont configurés pour reconnaitre certains type mime (exemple: text/css) en fonction des extensions.
Pour les extensions inconnues, ça dépend des modules présent dans le serveur apache, mais en général une brève analyse du début de fichier sera exécuté pour déterminer ce que c'est et sous quel type mime l'envoyer.
(l'équivalent de la commande "file" en shell *nix)

Pour inclure un fichier css, on met en général dans le code type="text/css" . C'est pour forcer l'interprétation du type mime côté client en cas de mauvaise configuration côté serveur. Ça permet aussi d'appeler des feuilles de styles en truc.txt par exemple Smiley cligne

Là ou les extensions sont nettement plus critiques (à partir du moment ou ce système de type mime n'est pas actif), c'est pour le PHP.

Gaylord.P, je te recommande la plus grande attention quand à la protection de tes fichiers .inc.
Si tu ne les protège pas par un .htaccess en Deny, ces ficheirs pourront être téléchargés, à partir du moment ou on connait leur URL, s'ils sont dans l'aborescence de ton site web.

En effet PHP intepretera le .inc comme du php parce que tu feras

<?php include ('lib/fichier.inc'); ?>


Par contre Apache, ne connaissant pas par défaut la fonction de ce fichier, enverra sans sourciller ce fichier au navigateur en tant que text/plain.

Je ne suis pas en train de dire que ton code php est plein de failles ou tellment laid qu'il ne faut pas le montrer à quiconque hein Smiley lol .
L'exemple typique est un fichier "config.inc" à la racine ou dans "config/config.inc", qui contient les mots de passe SQL, entre autres..

Voilou.. j'espère ne pas avoir été trop cryptique Smiley smile
Ah d'ac, je ne savais pas, merci de l'info, heursement mes mots de passe sont dans un .php.
Alors que faut-il utilisé pour inclure des pages genre index.php?page=toto ; sachant que dans toto il peut avoir aussi bien du PHP que du Html ou autre... ?
Merci d'avance.
Administrateur
Raphael a écrit :

Il fut un temps où les noms de fichiers ne pouvaient pas excéder 8 caractères et dont l'extension ne pouvaient pas faire plus de 3 caractères (d'où le ".htm" longtemps préféré au ".html").
A présent, la limite est de 32 caractères me semble-t-il, dont autant de caractères que l'on veut pour l'extension.

32 sur le web? avec Apache? les CD gravés et iso-9660? WinXP c'est 255 je crois et Linux/Unix alors là ... (255 aussi?)
Il faudrait avant tout que tu ne fasses plus d'include à partir de nom de fichiers passés dans l'adresse : c'est une faille Php connue, et tu as même à présent un ver qui s'amuse avec ce genre de failles.

Gaylord.P a écrit :
Ah d'ac, je ne savais pas, merci de l'info, heursement mes mots de passe sont dans un .php.
Alors que faut-il utilisé pour inclure des pages genre index.php?page=toto ; sachant que dans toto il peut avoir aussi bien du PHP que du Html ou autre... ?
Merci d'avance.
Raphael a écrit :

Il fut un temps où les noms de fichiers ne pouvaient pas excéder 8 caractères et dont l'extension ne pouvaient pas faire plus de 3 caractères (d'où le ".htm" longtemps préféré au ".html").
A présent, la limite est de 32 caractères me semble-t-il, dont autant de caractères que l'on veut pour l'extension.



Euhhhh... ça c'etait sous MS-DOS/Win3.x... sur les systèmes UNIX (par exemple) la limite a toujours été de 32 ou 256 caractères pour autant que je sache.