Précédent   Forum des professionnels en informatique > Webmasters - Développement Web > JavaScript
JavaScript Forum programmation JavaScript. Lire Cours JavaScript, FAQ JavaScript et Sources JavaScript
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
Vieux 04/07/2009, 13h56   #1
Invité régulier
 
Date d'inscription: mars 2009
Messages: 14
Par défaut Copie des données de Form1 en Form2 de deux applications Web indépendantes ?!

Salut tout le monde,

J'ai un besoin particulier mais je ne suis pas sûre si ça peut être satisfait ou pas:
En fait, j'ai un formulaire relative à une application web de vente en ligne.
Le produit vendu en ligne est soumis à une assurance dont ses informations sont remplies dans un deuxième formulaire se trouvant dans une autre application web.
La majorité des champs dans le premier formulaire (nom, prénom, adresse, email etc ...) sont répétés dans le deuxième formulaire.

Le truc désiré consiste à remplir les champs du deuxième formulaire à partir de ceux du premier formulaire sachant que j'ai accés total pour la première application web et j'ai le droit de modifier même son code source, alors que pour la deuxième application je n'ai aucun privilège juste consultation de la page web via URL.
NB: les deux applications web sont totalement indépendantes.

Pour simplifier l'image:
- Ancien scénario:
1- Dans l'application de vente en ligne, remplir le formulaire.
2- Valider les données saisies
3- Ensuite, Ouvrir la page d'assurance de la deuxième application web, remplir le deuxième formulaire (qui contient presque les même champs du premier form) et valider.

- Scénario désiré:
1- Dans l'application de vente en ligne, remplir le formulaire.
2- Valider les données saisies et juste après la validation il y aura affichage (pop up) de la page d'assurance contenant les champs en commun remplis à partir des données saisies dans le premier formulaire de vente.

Est ce que c'est possible avec JavaScript?
Sinon, y a t il d'autres alternatives?

j'attends vos contributions et merci bien d'avance ....
SofianeDH est déconnecté   Envoyer un message privé Réponse avec citation
Vieux 04/07/2009, 14h38   #2
Rédacteur/Modérateur
 
Avatar de emmanuel.remy
 
Nom : Emmanuel REMY
Date d'inscription: novembre 2005
Localisation: Grand Perron des Encombres
Âge: 41
Messages: 2 466
Par défaut

Salut,

A partir du moment où tu n'as pas accès aux sources de l'application 2, cela reste certainement possible uniquement SI les deux application appartiennent au même domaine internet/intranet,car cela va nécessiter de manipuler ce second formulaire. En bref si c'est la même url de base.
Est ce le cas ?

ERE
__________________
Quand une tête pense seule, elle devient folle.
emmanuel.remy est déconnecté   Envoyer un message privé Réponse avec citation
Vieux 04/07/2009, 14h56   #3
Invité régulier
 
Date d'inscription: mars 2009
Messages: 14
Par défaut

Merci bien Emmanuel pour votre intervention rapide,

Honnêtement, actuellement, je n'ai pas une réponse sûre si les deux applications appartiennent au même domaine internet/intranet ou non, Mais certainement je vais vérifier.

Et si on suppose qu'elles appartiennent au même domaine, comment l'échange des données entre les deux formulaires peut il avoir lieu?
Juste à noter que l'application web de vente dont j'ai accès à son code source est en asp.
SofianeDH est déconnecté   Envoyer un message privé Réponse avec citation
Vieux 04/07/2009, 14h59   #4
Rédacteur/Modérateur
 
Avatar de emmanuel.remy
 
Nom : Emmanuel REMY
Date d'inscription: novembre 2005
Localisation: Grand Perron des Encombres
Âge: 41
Messages: 2 466
Par défaut

Salut,

A vérifier, mais si tes deux applis sont le même domaine, tu peux accéder au DOM de la seconde par simple javascript, en récupérant une variable qui correspond à sa fenêtre (ou à son document). Ou si tu veux en appliquant le principe de modification des données d'un frame à partir d'un autre.

ERE
__________________
Quand une tête pense seule, elle devient folle.
emmanuel.remy est déconnecté   Envoyer un message privé Réponse avec citation
Vieux 06/07/2009, 12h18   #5
Invité régulier
 
Date d'inscription: mars 2009
Messages: 14
Par défaut

Salut Emmanuel,

Personnellement j'ai une connaissance basique de JavaScript .... STP, est ce que tu peux illustrer la solution que tu viens de proposer à travers un simple exemple de deux pages web, chacune contient un formulaire de deux champs ?

et merci infiniment Emmanuel ...
SofianeDH est déconnecté   Envoyer un message privé Réponse avec citation
Vieux 06/07/2009, 15h15   #6
Rédacteur/Modérateur
 
Avatar de emmanuel.remy
 
Nom : Emmanuel REMY
Date d'inscription: novembre 2005
Localisation: Grand Perron des Encombres
Âge: 41
Messages: 2 466
Par défaut

Tu peux regarder ici et ici, tout est expliqué pour faire dialoguer 2 frames.

ERE
__________________
Quand une tête pense seule, elle devient folle.
emmanuel.remy est déconnecté   Envoyer un message privé Réponse avec citation
Vieux 06/07/2009, 17h25   #7
Invité régulier
 
Date d'inscription: mars 2009
Messages: 14
Par défaut

Salut Emmanuel,

merci pour les liens ... Malgré que pour le moment j'essaie de me concentrer sur la première solution que tu as proposé qui consiste à récupérer une variable qui représente la page d'assurance.

Alors, j'ai réussi à manipuler un exmeple simple dont voici son code:

---- Page Appelante: openNewWindow.asp ----
Code :
<html>
<head>
<script >
function openPage(valeur)
    {
        var obj = window.open('form2.asp');
        pausecomp(5000);
        var t = obj.document.getElementById('10');
        t.value = valeur;
    }
function pausecomp(millis)
{
    var date = new Date();
    var curDate = null;
 
    do { curDate = new Date(); } 
    while(curDate-date < millis);
}
 
</script>
</head>
<body<
<FORM> 
<input type="text" size="24" value="" name="Texte1" id="Text1" />
<INPUT type="button" value="New Window!" onClick="openPage(Texte1.value)"> 
</FORM>
</body>
</html>
 

---- Page Appelée: form2.asp ----
Code :
<html>
<head>
<title></title>
</head>
<body>
<form name="payment" method="post">
<p>Valeur du 1er form:
<input type="text" size="24" value="" name="ertt" id="10" />
</p>
</form>
</body>
</html>
La page appelante openNewWindow.asp contient un champs de texte et un bouton.
Quand on clique sur le bouton, on fait appel à la page form2.asp qui contient un champs texte dont sa valeur doit être égale à celle du champs texte de openNewWindow.asp.

Ceci a été testé entre deux pages web sur la même machine. Et c'est bon il y a eu transfert de données entre les deux pages.

Mais quand, j'ai essayé de faire le même test mais en copiant la page form2.asp sur un serveur web tournant sur une deuxième machine j'obtiens l'erreur "Accès refusé".

Y a t il une idée pourquoi j'obtiens ce message, malgré que les deux machines (celle qui contient openNewWindow.asp et l'autre qui contient form2.asp) sont sur le même réseau? Y a t il un astuce de configuration à faire pour résoudre ce problème?

Dernière modification par SofianeDH ; 07/07/2009 à 10h26.
SofianeDH est déconnecté   Envoyer un message privé Réponse avec citation
Vieux 06/07/2009, 19h16   #8
Rédacteur/Modérateur
 
Avatar de emmanuel.remy
 
Nom : Emmanuel REMY
Date d'inscription: novembre 2005
Localisation: Grand Perron des Encombres
Âge: 41
Messages: 2 466
Par défaut

Salut,

Tes machines sont sur le même réseau mais n'ont pas la même IP. C'est donc considéré comme une faille de sécurité et refusé (imagine que tu tu connectes sur le site de ta banque, qu'il ait été piraté et que tu effectues un virement en postant sans le savoir les infos vers un site pirate....ce sera refusé car l'IP de ta banque est différente de l'IP du pirate -> c'est de la théorie...).

Il faut que les domaines consultés soient les mêmes.

ERE
__________________
Quand une tête pense seule, elle devient folle.
emmanuel.remy est déconnecté   Envoyer un message privé Réponse avec citation
Vieux 07/07/2009, 11h01   #9
Invité régulier
 
Date d'inscription: mars 2009
Messages: 14
Par défaut

Salut Emmanuel,

STP, comment je peux vérifier si les domaines des deux machines sont les mêmes?

Voici quelques détails pour l'environnement de test:
- les adresses IP des deux machines sont attribuées par DHCP
- l'une 10.13.13.35 et l'autre 10.13.13.12
- le domaine des deux machines est: NomEntreprise.Local

mon but est d'arriver à faire tourner l'exemple avec deux machines distinctes pour que je puisse transmettre un mini rapport à mon boss pour prendre décision de continuer le travail sur cette demande du client ou pas... car ça devient plus urgent jour après jour ...!
SofianeDH est déconnecté   Envoyer un message privé Réponse avec citation
Vieux 07/07/2009, 11h38   #10
Rédacteur/Modérateur
 
Avatar de emmanuel.remy
 
Nom : Emmanuel REMY
Date d'inscription: novembre 2005
Localisation: Grand Perron des Encombres
Âge: 41
Messages: 2 466
Par défaut

Salut,

Soit tu baisses la sécurité des navigateur pour l'espace intranet, soit je pense (à vérifier) qu'en mettant des urls du type machine1.NomEntreprise.Local/ et machine2.NomEntreprise.Local/ cela devrait passer car on reste sur le même domaine.
Ne connaissant pas la configuration de ton réseau c'est difficile de prévoir exactement le comportement), mais un test rapide de ton côté sera de toute façon plus efficace que d'exposer de longues théories !

ERE
__________________
Quand une tête pense seule, elle devient folle.
emmanuel.remy est déconnecté   Envoyer un message privé Réponse avec citation
Vieux 07/07/2009, 13h33   #11
Invité régulier
 
Date d'inscription: mars 2009
Messages: 14
Par défaut

Salut,

- Pour le niveau de sécurité des navigateurs, je l'ai changé pour qu'il soit le plus faible possible.
- Pour les URLs, j'ai essayé de remplacer:
Code :
window.open('form2.asp');
par:
Code :
window.open('//NomMachine.NomDomaine/form2.asp');
Aussi, j'ai essayé de changer les règles de sécurité sur la deuxième machine (hôte de form2.asp) surtout celles relatifs au fichier form2.asp en particulier (comme autorisation d'accès en écriture, autorisation d'accès à la source du script)

Mais toujours c'est l'echec ... le navigateur m'affiche l'erreur "Impossible d'afficher la page" plus le message "Accès refusé" ....
SofianeDH est déconnecté   Envoyer un message privé Réponse avec citation
Vieux 07/07/2009, 14h32   #12
Rédacteur/Modérateur
 
Avatar de emmanuel.remy
 
Nom : Emmanuel REMY
Date d'inscription: novembre 2005
Localisation: Grand Perron des Encombres
Âge: 41
Messages: 2 466
Par défaut

plutôt
Code :
window.open('http://NomMachine.NomDomaine/form2.asp');
ERE
__________________
Quand une tête pense seule, elle devient folle.
emmanuel.remy est déconnecté   Envoyer un message privé Réponse avec citation
Vieux 07/07/2009, 15h23   #13
Invité régulier
 
Date d'inscription: mars 2009
Messages: 14
Par défaut

C'est idem cher Emmanuel, même en ajoutant "http:" ...

même quand j'ai remplacé "NomMachine" par le nom de ma machine, et "NomDomaine" par le domaine auquel ma machine appartient toujours les deux messages d'erreur sont présents ...
Alors que ça supposé fonctionner quand les deux page sont sur la même machine ...

Bon, ... il parait que le problème est purement technique (peut être notion réseaux informatique)... et je dois penser comment réagir même en abandonnant tout si la solution sera couteuse
SofianeDH est déconnecté   Envoyer un message privé Réponse avec citation
Vieux 07/07/2009, 21h11   #14
Rédacteur/Modérateur
 
Avatar de emmanuel.remy
 
Nom : Emmanuel REMY
Date d'inscription: novembre 2005
Localisation: Grand Perron des Encombres
Âge: 41
Messages: 2 466
Par défaut

Re,

Es tu certain que ce message est un message du navigateur et pas un message de ton server IIS ? Ne serait ce pas plus simplement un droit d'accès au fichier ou au directory ?

ERE
__________________
Quand une tête pense seule, elle devient folle.
emmanuel.remy est déconnecté   Envoyer un message privé Réponse avec citation
NEWS JAVASCRIPTF.A.Q JSTUTORIELS JSSOURCES JSLIVRES JS

Réponse Proposer ce sujet en actualité

Précédent   Forum des professionnels en informatique > Webmasters - Développement Web > JavaScript



Outils de la discussion

Règles de messages
Vous ne pouvez pas créer de nouvelles discussions
Vous ne pouvez pas envoyer des réponses
Vous ne pouvez pas envoyer des pièces jointes
Vous ne pouvez pas modifier vos messages

Les balises BB sont activées : oui
Les smileys sont activés : oui
La balise [IMG] est activée : oui
Le code HTML peut être employé : non
Trackbacks are non
Pingbacks are non
Refbacks are non



Fuseau horaire GMT +1. Il est actuellement 16h04.


Vos questions techniques : forum d'entraide JavaScript - Publiez vos articles, tutoriels et cours
et rejoignez-nous dans l'équipe de rédaction du club d'entraide des développeurs francophones
Nous contacter - Hébergement - Participez - Copyright © 2000-2010 www.developpez.com - Legal informations.