begin process at 2012 05 29 22:59:04
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Javascript / DHTML / Ajax

 > 

JavaScript et le navigateur

 > 

Autre

 > 

Récupération de document.location dans une variable pour une verification


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

Récupération de document.location dans une variable pour une verification

mercredi 18 novembre 2009 à 14:07:36 | Récupération de document.location dans une variable pour une verification

surfman38

Bonjour à tous,

Pour un besoin pro je dois faire un petit bout de javascript...

L'objectif étant de différencier si le site web consulté a été enregistré en tant que page web sur le disque dur ou bien s'il est consulté directement depuis le serveur.

document.location me retourne le chemin absolu, c'est ce qu'il faut car maintenantant si j'accède à mon site par son hebergeur j'aurais une URL de type : http://www.monsite.com, et si la personne a enregistré l'index du site sur son disque dur, nous aurons file://C:\chemindufichier.html

donc la suite est simple, on recherche dans la chaine si le mot http est présent et s'il ne l'est pas on affiche un message : "l'index du site est sur votre disque dur" et on stop le chargement de la page

J'ai donc fait ceci, sauf que ça marche pas...

var chaine = document.location
var expression = new RegExp("http","g");
if (chaine.search(expression)) {
document.write("Ce fichier a été chargé depuis HTTP");
stop();
}

Si je remplace document.location par "http://monsite.com", ça fonctionne.
Si je fais un document.write(chaine);, mon résultat est bien http://monsite.com, mais il ne trouve pas le mot http...

J'ai comme l'impression qu'il faut convertir document.location en texte ? (je suis débutant je ne comprends peut être pas comment fonctionne javascript correctement)

Une idée?
mercredi 18 novembre 2009 à 14:52:09 | Re : Récupération de document.location dans une variable pour une verification

surfman38

Je viens de modifier légèrement mon script :

var texte = document.location
if (texte.search(/http/i) != "0")
{
document.write("L'index se trouve sur votre disque dur ?!");
stop();
}

Cette fois ci, ça fonctionne depuis l'hebergeur, mais pas depuis le disque dur, c'est à dire :

je remplace document.location par "file://blablabl"; il m'éjecte ce qui est normale, et inversement document.location me retourne mon URL avec http et execute le reste du code.

Par contre quand on enregistre la page sur le disque, ça ne fonctionne absolument pas, pourtant si je fais un document.write(texte); il m'affiche bien file:/// mais le reste du code ne s'execute pas.

Pourtant javascript fonctionne bien sur le poste client, et non sur le serveur, je comprends plus rien...
mercredi 18 novembre 2009 à 14:59:31 | Re : Récupération de document.location dans une variable pour une verification

Zobibol

Membre Club
Bonjour,
une petite question : Le fait de différencier le serveur du local va servir à quoi ?
Sans oublier qu'il est fort simple de faire croire qu'on est sur le net, des logiciels comme wamp, xamp le font très bien et du coup automatiquement, l'ouverture de la page se faisant via http://localhost/maPage.html, le script pensera qu'on est sur le web alors que pas du tout.
Sinon, une autre solution (mais qui ne corrige pas le problème précédant):
Code Javascript :
<script>
var chaine = document.location.toString();
if (chaine.indexOf ("http") != -1) {
document.write("Ce fichier a été chargé depuis HTTP");
stop();
} 
else{
	document.write("Local");
}
</script>

Mais qui fonctionne tout de même...

[o-_-o]


Cette discussion est classée dans : site, chaine, http, document, location


Répondre à ce message

Sujets en rapport avec ce message

utilisation de document.location.reload() sous Firefox [ par josymarc ] J'ai les commandes javascript suivantes dans le head: function ouvre_sitemin(url){ fenetre=window.open(url,"fen_popup" utilisation de document.location.reload() sous Firefox [ par josymarc ] J'ai les commandes javascript suivantes dans le head: function ouvre_sitemin(url){ fenetre=window.open(url,"fen_popup"); fenetre.focus(); } function utilisation de document.location.reload() sous Firefox [ par josymarc ] J'ai les commandes javascript suivantes dans le head: function ouvre_sitemin(url){ fenetre=window.open(url,"fen_popup"); fenetre.focus(); } function Récupération de l'URL d'une frame [ par Migs ] Voilà j'ai un gros problème et j'ai eu beau chercher partout, je n'ai rien trouvé qui fonctionne:Voici les scripts que j'ai essayé, mainFrame étant la Bloquer des redirections [ par thanae19 ] Bonjour à tous, Pour le site dont je m'occuppe j'ai certains iframes dont un qui contient +/- chaque semaine la sélection du site pour lequel on à fl Problème de script dans mon menu [ par JABE ] Bonsoir,J'ai essayé de créer un menu pour mon site à partir du modèle suivant: http://css.alsacreations.com/modelesmenus/vd2.htm seulement j'ai p GROS problème reload et location.href [ par lawraC ] Bonjour, j'utilise un jeu de cadre en asp et javascript.La frame A est un formulaire permettant d'enregistrer des informations dans une base concernan xmlhttprequest ok sous ff mais pas ie [ par malik7934 ] Hello, Je deviens dingue! Ca marche sous mozilla, mais sous internet explorer... ça me dit "document.getElementById(...) a la valeur NULL ou n'est pa Succession de "if" qui bloque [ par atchoumix ] Bonjour, je m'explique: j'ai fait un formulaire avec verifications en php qui a chaque erreur ajoute un numero (relatif au champ de saisie) dans une c menu [ par loubaba ] slt tt le mondevoila je suis en train de cree un site sur ma region et j'ai besoin des menus que j'ai trouver sur ce site:http://www.isaip.orget si qq


Nos sponsors


Sondage...

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

A découvrir



 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,250 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales