Je veux juste valider url, pour les deux formats folowing http://www.XYZ.com et www.XYZ.com Je veux que ce script de validation en Javascript et PHP aussi. Merci d'avance.Valider l'URL avec javascript et php
Répondre
Regex comme un champion.
Vous pouvez écrire vous-même, voici un exemple rapide:
(https?://)?.+$
Un peu googler m'a trouvé quelque chose d'un peu plus particulier, en termes de manière plus stricte validation:
^(https?://)?(([0-9a-z_!'().&=$%-]:)?[0-9a-z_!'().&=$%-]@)?(([0-9]{1,3}\.){3}[0-9]{1,3}|([0-9a-z_!'()-]\.)([0-9a-z][0-9a-z-]{0,61})?[0-9a-z]\.[a-z]{2,6})(:[0-9]{1,4})?((/?)|(/[0-9a-z_!*'().;?:@&=$,%#-])/?)$
Source: http://www.geekzilla.co.uk/view2D3B0109-C1B2-4B4E-BFFD-E8088CBC85FD.htm (Évidemment, testez la regex copiée et collée, comme vous le feriez avec n'importe quel code copié)
Si vous ne connaissez pas ho w utiliser des expressions rationnelles en PHP, il est aussi simple que:
$valid = preg_match($pattern, $urlOrStringToValidate);
où $ pattern = "/(https?://)?.+/" ou quelque chose comme ça, entre/et/
Javascript a une méthode d'objet appelée match sur le type String.
var urlString = "http://www.XYZ.com";
var isValidURL = urlString.match(/(https?:\/\/)?.+/);
Vous feriez mieux d'utiliser une expression régulière pour cela. Quelque chose comme ceci:
^((ht|f)tp(s?)\:\/\/|~/|/)?([\w]+:\[email protected])?([a-zA-Z]{1}([\w\-]+\.)+([\w]{2,5}))(:[\d]{1,5})?((/?\w+/)+|/?)(\w+\.[\w]{3,4})?((\?\w+=\w+)?(&\w+=\w+)*)?
Vous pouvez utiliser des expressions régulières en PHP utilisant la fonction preg_match
et JavaScript en utilisant la fonction match()
.
E.g (Javascript).
function validateUrl(url)
{
var pattern = '^((ht|f)tp(s?)\:\/\/|~/|/)?([\w]+:\[email protected])?([a-zA-Z]{1}([\w\-]+\.)+([\w]{2,5}))(:[\d]{1,5})?((/?\w+/)+|/?)(\w+\.[\w]{3,4})?((\?\w+=\w+)?(&\w+=\w+)*)?';
if(url.match(pattern))
{
return true;
}
else
{
return false;
}
}
la condition ci-dessus sera validée pour les deux être état bas? www.xyz.com et http://www.xyz.com – Avinash
Je le crois bien. Je n'ai pas testé correctement l'expression. Vous avez juste besoin de Google autour pour celui qui convient à vos besoins et appliquer cela. Soit cela, ou écrire votre propre expression qui correspond exactement à vos besoins. –
Utilisez Jquery validator.
- 1. cookie avec php et javascript
- 2. Capture d'écran avec PHP et/ou Javascript?
- 3. AJAX téléchargement avec PHP et Javascript
- 4. Comment valider un javascript?
- 5. Javascript avec PHP
- 6. Comment puis-je valider une phrase en utilisant PHP et JavaScript?
- 7. Valider plusieurs courriels séparés par des virgules avec javascript
- 8. Valider les emails avec Bash
- 9. Comment valider une valeur Datetime en javascript?
- 10. Comment valider les menus déroulants en PHP?
- 11. Javascript/jQuery et regex
- 12. Valider l'URL en PHP en utilisant ereg
- 13. javascript et php à la volée calendrier
- 14. Compteur de temps avec JavaScript ou PHP
- 15. Comment lire le cookie Javascript avec PHP
- 16. problème d'exécution de fichier php avec javascript
- 17. Graphiques PHP/Javascript rapides et faciles
- 18. XVal, JQuery Valider, et Ajax oh mon!
- 19. jQuery valider plugin avec event.preventDefault()
- 20. Comment valider XHTML avec nokogiri?
- 21. Comment valider la valeur de la devise en utilisant JavaScript?
- 22. Problème avec Sys.UI.DataView et javascript
- 23. valider fonction dans cakephp
- 24. Performance avec php et mysql
- 25. dropdown avec php et ajax
- 26. Problème avec AJAX et PHP
- 27. Jquery Valider
- 28. Comment valider un contrôle multiline asp: textbox en utilisant des validateurs personnalisés et JavaScript?
- 29. php crawl - javascript enabled
- 30. de json_decode de Php et la compatibilité javascript de Firefox
Une autre chose que j'ai oublié de mentionner, les expressions rationnelles va juste valider la bonne forme des urls. Vous pouvez voir si ces URL sont valides en faisant des choses comme envoyer une requête AJAX à l'url (Jquery: $ .ajax ({url: urlToTest, erreur: function() {alert ("URL non valide");}}) De même, vous pouvez soit boucler soit faire un gethostbyname (http://us2.php.net/manual/fr/function.gethostbyname.php) pour tester MAIS mon expérience de test de la validité réelle d'une URL a Dites un serveur prend trop de temps pour répondre à l'ajax échoue, ou le nom d'hôte est une adresse IP ... vraiment une douleur à gérer – Ben
la condition ci-dessus va valider à la fois ci-dessous condition? www.xyz.com et http://www.xyz.com – Avinash
http://squarefree.com/shell/shell.html – Alsciende