Modérateur
Bonjour,

On peut. Après ça dépend ce qu'on a disposition pour le faire (javascript ? php ?).

Amicalement,
Modérateur
Bonjour,

Et l'identifiant et le mot de passe, tu les récupères où ? parce qu'il faut toujours garder à l'esprit que le code js est visible par tout le monde.

Amicalement,
Modérateur
Et l'eau,

autocomplete="on" sur ton <form> et ensuite dans ton formulaire, tu fais un <select> des urls cibles.
??
Je ne comprend rien.

Mais ce que je cherche, c'est juste le contenu de l'URL de redirection.
Merci !
Modérateur
Bonjour,

Je dois dire que j'ai beaucoup de mal avec tes questions qui imaginent tous les trucs les plus bancales qu'on puisse imaginer. Smiley biggrin

En javascript, pour récupérer l'url, c'est :
var url=document.location.href;


Et ensuite, pour mettre ça dans un input text, c'est par exemple, si l'input a pour id un truc du genre "theInput" :
document.getElementById("theInput").value=url;


Mais bon, tout ça n'a aucune chance d'être une bonne solution. Smiley biggrin

Amicalement,
Modifié par parsimonhi (02 Nov 2020 - 18:34)
Oui, ça ne doit pas être beaucoup demandé.
@parsimonhi ce n'est pas vraiment ça. J'aimerai (si c'est possible) avoir la forme d'URL pour remplir les input.
Un truc un peu comme http://site.com/login&id="jean"&mdp="1234" (qui ne fonctionne pas).
Merci beaucoup !

PS : dites-moi si c'est impossible
Modifié par js_html (02 Nov 2020 - 20:39)
Modérateur
Bonjour,
js_html a écrit :
Oui, ça ne doit pas être beaucoup demandé.
@parsimonhi ce n'est pas vraiment ça. J'aimerai (si c'est possible) avoir la forme d'URL pour remplir les input.
Un truc un peu comme http://site.com/login&id="jean"&mdp="1234" (qui ne fonctionne pas).


Bah, il me semble que c'est bien ce que document.location.href contient (y a pas les guillemets, mais c'est normal qu'il n'y ait pas les guillemets) !

Amicalement,
Soit je ne me suis pas bien expliqué soit je ne comprends pas votre réponse.

J'aimerai que lorsque l'on lance un URL (ce que je cherche, c'est l'URL en question), il remplisse directement des champs input.

Par exemple, dans https://jsfiddle.net/exercices/ntgwhfqv/ quel serait l'URL pour que ces champs se remplissent directement ?
(Je ne sais pas si c'est possible ni si c'est possible sur jsfiddle mais ce ne sera pas sue jsfiddle)

Merci !
Modifié par js_html (02 Nov 2020 - 19:23)
Modérateur
Bonjour,

Tu ne comprends pas ma réponse ! Smiley lol Smiley lol Smiley lol

Est-ce que tu as essayé par exemple d'afficher dans une page le contenu de document.location.href ?

Amicalement,
Modifié par parsimonhi (02 Nov 2020 - 19:31)
Alors le contenu, c'est "http://site.com/login&id=%22jean%22&mdp=%221234%22".
Mais ça, ça ne remplit pas car ce n'est pas &id="X" qui remplit.

De base, on a ça :
upload/1604344092-81417-debut.png

J'aimerai savoir, que faut-il écrire ici à la place de ????????????????????? pour obtenir l'image 3 sans autre intervention que le chargement de la page avec la nouvelle URL ? upload/1604344192-81417-url.png
----------------------------
upload/1604344267-81417-aprnsurl.png

N'ai-je pas compris votre réponse ou n'avais-je pas bien expliqué ?
Est-ce possible ?
Comment ?
Merci !
Modérateur
Bonjour,

Avec jsfiddle, on ne peut faire le test (en tout cas je ne sais pas faire). Car on ne peut pas ajouter ce qui suit le ? dans une url. Il faut que tu testes ça sur ton serveur.

On va donc supposer sur pour ton serveur tu écris une page dont l'url sera http://site.com/?id=jean&mdp=1234

Il ne faut pas mettre de guillemets normalement (sinon, il faudra les retirer).

J'ai détaillé le code. Mais on pourrait faire beaucoup plus court avec des expressions régulières. Ce serait compliqué, alors que le code que j'ai mis ci-dessous est plus facile à comprendre.

Dans cette page, on suppose que le code html sera :
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <meta http-equiv="X-UA-Compatible" content="ie=edge">
    <title>Remplir des inputs avec les data de l'url</title>
</head>
<body>
<input type="text" id="id" placeholder="id">
<input type="text" id="mdp" placeholder="mdp">
<script>
var id,mdp,url,q,a,b,data,value,k;
// on récupère l'url
url=document.location.href;
alert(url);
// on extrait la partie située après le ?
q=url.split("?")[1];
// on sépare les données de l'url (id et mdp dans notre cas)
a=q.split("&");
// pour chaque donnée, on récupère la valeur
// et on la met dans l'input correspondant
for(k=0;k<a.length;k++)
{
	b=a[k].split("=");
	data=b[0];
	value=b[1];
	document.getElementById(data).value=value;
}
</script>
</body>
</html>

Amicalement,
Modifié par parsimonhi (02 Nov 2020 - 21:23)
@parsimonhi Merci beaucoup !
J'aimerai savoir en plus (pour 1 autre cas) s'il est possible de faire ça sans code ? (pour sur un site qui ne m'appartient pas)
Merci !
Modérateur
Bonjour,
js_html a écrit :

J'aimerai savoir en plus (pour 1 autre cas) s'il est possible de faire ça sans code ? (pour sur un site qui ne m'appartient pas)
Merci !

Tu veux dire que tu regardes la page droit dans les yeux et que les inputs se remplissent tous seuls ?

Amicalement,
parsimonhi a écrit :
Tu veux dire que tu regardes la page droit dans les yeux et que les inputs se remplissent tous seuls ?


Oui, en gros ! Smiley lol
Non, je voulais juste demande s'il y avait un truc de base du navigateur ! Smiley lol
Modérateur
Bonjour,
js_html a écrit :
Non, je voulais juste demande s'il y avait un truc de base du navigateur ! Smiley lol

Il n'y a rien de base dans les navigateurs pour faire ça. Par contre il existe des outils qu'on appelle des SSO (single-sign-on) qui savent faire ça (dans certaines circonstances).

Amicalement,
D'accord merci donc :
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <meta http-equiv="X-UA-Compatible" content="ie=edge">
    <title>Remplir des inputs avec les data de l'url</title>
</head>
<body>
<input type="text" id="id" placeholder="id">
<input type="text" id="mdp" placeholder="mdp">
<script>
var id,mdp,url,q,a,b,data,value,k;
// on récupère l'url
url=document.location.href;
alert(url);
// on extrait la partie située après le ?
q=url.split("?")[1];
// on sépare les données de l'url (id et mdp dans notre cas)
a=q.split("&");
// pour chaque donnée, on récupère la valeur
// et on la met dans l'input correspondant
for(k=0;k<a.length;k++)
{
	b=a[k].split("=");
	data=b[0];
	value=b[1];
	document.getElementById(data).value=value;
}
</script>
</body>
</html>
Meilleure solution