2010-02-17 4 views
0

Quelle est la meilleure façon d'ouvrir un flux d'URL dans codeigniter? Je suppose que je ne peux pas mettre l'URL dans une entrée de téléchargement de fichier, alors devrais-je utiliser une entrée de texte normale et ensuite valider que l'URL n'est pas malveillante? Si oui, quels tests de validation dois-je effectuer sur la chaîne entrée par l'utilisateur? Est-ce que la vérification de l'extension du fichier suffirait ou est-ce que cela peut facilement être manipulé?ouvrir un flux d'URL dans codeigniter

Répondre

2
  1. Utilisez un <input type="text" /> pour permettre aux utilisateurs de fournir des URL
  2. Vérifiez qu'il est une URL valide en utilisant des expressions régulières (et ignorer l'extension)
    • par exemple preg_match('|^http(s)?://[a-z0-9-]+(.[a-z0-9-]+)*(:[0-9]+)?(/.*)?$|i', $url);
  3. Envisager de valider l'alimentation avec un validateur d'alimentation (notez que de nombreux aliments legit peuvent ne pas être « valide »)
  4. Essayez d'accéder à et l'analyser
+0

C'est génial - merci. Encore une chose cependant ... Je pense que mon utilisation du mot «feed» était trompeuse car c'est en fait un fichier google calics auquel je veux accéder, pas un flux rss. Une fois que j'ai vérifié la chaîne d'URL par rapport à une regex, existe-t-il d'autres façons de valider le fichier avant de l'ouvrir? – musoNic80

+0

Vous ne pouvez pas faire grand-chose sans accéder à l'URL. Vous pouvez vérifier le type MIME pour "texte/calendrier", mais je ne considérerais pas cela comme une bonne pratique (ou très fiable). Je voudrais également regarder dans ICS/iCal validateurs/parseurs (ical4j); peut-être pourriez-vous porter quelque chose sur PHP, ou l'appeler depuis PHP. – Dolph

Questions connexes