2010-05-28 3 views
0

J'ai un formulaire Web sur un serveur IIS (sans PHP). J'ai un script PHP sur un serveur LAMP. Mon tableau _POST var arrive à vide sur le serveur LAMP. Mon soupçon est que je ne peux pas passer des vars POST d'un serveur à l'autre mais j'aimerais que cela soit confirmé. Est-ce que quelqu'un connaît la réponse à cela? Si c'est le cas, je sais que je dois utiliser les variables _GET dans la chaîne de requête de l'URL ou définir un cookie (ce que je peux faire parce que les deux serveurs sont configurés avec le nom de domaine).Pouvez-vous passer des variables _POST d'un serveur à un autre?

Merci pour votre aide.

Répondre

0

J'overthought ma première réponse. Pourquoi ne changez-vous pas simplement l'attribut action url sur la balise <form> à l'adresse de script PHP que vous voulez collecter et traiter le formulaire?

par exemple aller de:

<form method="post"> 
    <input ...> 
</form> 

à:

<form method="post" action="http://other.server.ext/my-php-script.php"> 
    <input ...> 
</form> 
+0

C'est une option. J'ai déjà écrit la validation de formulaire dans ASP sur le serveur IIS et plutôt que de faire des allers-retours entre serveurs avec validation et post-traitement, etc., j'ai décidé de changer ma réponse en redirection vers une chaîne de requête contenant le contenu du formulaire (Ce n'est pas beaucoup de données et de ports tout à fait joliment que j'ai déjà commencé ce chemin). Merci pour votre aide si Oli! Je suppose que la réponse à ma question initiale est que vous pouvez passer _POST vars entre les serveurs. J'ai juste eu quelque chose entre les serveurs ... –

0

Nous allons vous recevoir le message dans IIS et utiliser ASP (.NET) pour effectuer un POST à ​​votre serveur PHP qui vous permettra ensuite d'accéder aux données. Si vous faites le tour de la chaîne de requête, gardez à l'esprit que de grandes quantités de données ne le feront pas toujours.

+0

Intéressant ... En fait, mon action de formulaire Web va à un script ASP pour la validation brève de formulaire, puis réponse réoriente à mon script PHP . Maintenant, plus je pense à ce sujet, je parie que la redirection de réponse est en train de saccager mes vars POST. –

0

Vous pouvez utiliser ASP/ASP.NET ou tout ce que vous avez installé sur le serveur IIS pour appeler l'autre serveur. Ce que vous pouvez faire dépend du cadre que vous utilisez, mais il devrait être possible d'envoyer un POST.

Pour une explication ASP.NET, voir ceci: http://odetocode.com/articles/162.aspx

+0

Savez-vous comment obtenir les vars POST à ​​l'autre serveur en ASP (en utilisant la redirection de réponse)? –

+0

Vous ne pouvez pas. Pour "transférer" POST, vous avez besoin de votre premier serveur pour envoyer une requête à votre serveur secondaire et vous ne pouvez pas le faire avec 'response.redirect()' (car cela indique simplement au navigateur de l'utilisateur d'aller sur un autre serveur et ne fait rien avec les données) – Oli

Questions connexes