CGI + Get + Accent

CGI + Get + Accent - Perl - Programmation

Marsh Posté le 10-12-2009 à 13:31:25    

Salutation,
 
Je dispose d'un CGI en perl sous Windows qui doit renvoyer un fichier demandé par le client.
J'ai alors choisi la méthode Get ($ARGV[0] du CGI) pour récupérer le chemin.
 
Tout fonctionne sauf lorsque le chemin possède des caractères spéciaux... Dans ce cas, le cgi ne trouve pas le fichier.
 
J'ai bien sûr essayé divers modules (Encode, utf8, local) mais sans succès.
 
Comment pourrais-je procéder pour avoir le bon chemin ?
Quelles autres possibilités seraient envisageable pour contourner le problème ?
 
 
Cordialement.  :)

Reply

Marsh Posté le 10-12-2009 à 13:31:25   

Reply

Marsh Posté le 10-12-2009 à 21:18:42    

Bon, déja je pense que c'est URI::Escape dont tu as besoin.
 
Ensuite, il y a le problème des backslash sous windows non ? (je ne sais pas ca fait près de 10 ans que je n'ai pas vu un windows)
 
Et enfin, un gros ATTENTION !
Si c'est le client qui choisi le chemin du fichier... c'est la place ouverte aux grosses failles !!! (par ex avec des /../.. )


---------------
La vie c'est comme une boite de chocolats, on ne sait jamais sur quoi on va tomber. (Forrest Gump)
Reply

Marsh Posté le 10-12-2009 à 22:24:04    

Ok merci, j'essaierais demain.
 
Pour les backslash, pas de problème apparemment.
Concernant la sécurité, pas de soucis, le serveur vérifiera. :)

Reply

Marsh Posté le 11-12-2009 à 18:32:44    

J'ai trouvé la solution :
 
il fallait encoder en CP850 ou un truc du genre ........
 
voila j'ai la haine :)

Reply

Marsh Posté le 11-12-2009 à 19:09:12    

ultime alex a écrit :

Ok merci, j'essaierais demain.
 
Pour les backslash, pas de problème apparemment.
Concernant la sécurité, pas de soucis, le serveur vérifiera. :)


 
mouais.... enfin "le serveur vérifiera"...  
quand on sait comment fonctionne (pas) la gestion des droits sous windows... t'as intérêt à limiter ca derrière... enfin c'est mon conseil.
 
Le mieux à mon avis c'est quelques regexp pour interdire tous caracteres sauf ...
et bien sur certains caracteres en double d'affilié, comme le point...


---------------
La vie c'est comme une boite de chocolats, on ne sait jamais sur quoi on va tomber. (Forrest Gump)
Reply

Marsh Posté le 11-12-2009 à 19:19:11    

Non mais pour faire court:
 
C'est un projet de stage à faire en binôme, il me reste une semaine mais c'est la semaine de partielle, et mon "binôme" n'a pour l'instant rien apporté au projet... Donc les questions de sécurités, c'est pas encore une priorité :D

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed