IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage PHP Discussion :

[PHP-JS] Passage de variables POST à un autre serveur


Sujet :

Langage PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Décembre 2003
    Messages
    44
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2003
    Messages : 44
    Par défaut [PHP-JS] Passage de variables POST à un autre serveur
    Bonjour,

    je voudrais passer des variables d'un script php situé sur un serveur
    vers un script php situé sur un autre serveur par la méthode post
    (la methode get et la méthode des url longues avec "?" me conviennent
    pas car elle ne permettent pas de faire passer de longs textes)
    Il me faut un bouton post qui se clique automatiquement et qui
    n'apparait pas si possible.
    Comment faire ?
    j'ai essayé <input submit="yes"> mais sans succès
    est-on obligé d'utiliser le javascript?

    merci de votre aide

  2. #2
    Membre émérite
    Inscrit en
    Mai 2002
    Messages
    673
    Détails du profil
    Informations forums :
    Inscription : Mai 2002
    Messages : 673
    Par défaut
    Autant que je sache, il y a 2 ou 3 méthodes alternatives en PHP...
    1) Je suppose (et je ne sais pas comment on fait) que c'est faisable avec un header()
    2) on peut faire ça avec la lib CURL, qui n'est pas forcement dispo chez tous les hébergeurs
    3) on peut utiliser une lib PHP tel que snoopy qui remplit très bien ce role, quoique un peu lourd pour passer juste une variables (c'est un browser php)

    Puis bien sur, il y a le javascript (beurk)

  3. #3
    Membre émérite
    Profil pro
    Inscrit en
    Août 2005
    Messages
    514
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2005
    Messages : 514
    Par défaut
    Bonsoir,
    y a quelques années, j'avais dû récupérer une page générée après avoir remplie un formulaire sur un serveur distant et j'avais codé ce script :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    <?php
     
      $_P = array('button' => 'afficher', 'message' => 'coucou');
     
      $site = 'www.domain.tld';
     
      $script = 'scripts/fichier.php';
     
      $donnees = '';
     
      foreach ($_P as $cle => $val) $donnees .= $cle.'='.$val.'&';
     
      $x = strlen($donnees)-1;
     
      $donnees = substr($donnees, 0, $x)
     
      $message  = "POST http://$site/$script HTTP/1.0\r\n";
      $message .= 'Content-type: application/x-www-form-urlencoded'."\r\n";
      $message .= 'Content-length: '.$x."\r\n";
      $message .= "\r\n";
      $message .= $donnees."\r\n";
     
      $fd = fsockopen($site, 80);
     
      fputs($fd, $message);
     
      $code = '';
     
      while (!feof($fd)) $code .= fgets($fd);  
     
      fclose($fd);
     
      echo $code;
     
    ?>
    Je ne sais pas s'il marche encore (pas envie de tester), mais à l'époque c'était passé comme une lettre à la poste.

    Cordialement,
    DaRiaN.

    PS: faites attention à la version du protocole HTTP du serveur de destination (1.0 ou 1.1), première assigniation de la variable $message.

  4. #4
    Membre émérite
    Inscrit en
    Mai 2002
    Messages
    673
    Détails du profil
    Informations forums :
    Inscription : Mai 2002
    Messages : 673
    Par défaut
    Citation Envoyé par DaRiaN Voir le message
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
      $message  = "POST http://$site/$script HTTP/1.0\r\n";
      $message .= 'Content-type: application/x-www-form-urlencoded'."\r\n";
      $message .= 'Content-length: '.$x."\r\n";
      $message .= "\r\n";
      $message .= $donnees."\r\n";
    Je serais assez tenté de penser qu'en mettant ça en header(), ça devrait faire l'affaire !

  5. #5
    Membre émérite
    Profil pro
    Inscrit en
    Août 2005
    Messages
    514
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2005
    Messages : 514
    Par défaut
    Je crois que j'avais essayé, mais cela fait tellement longtemps... si vous êtes curieux, pourquoi ne pas tester par vous même?

  6. #6
    Membre averti
    Profil pro
    Inscrit en
    Décembre 2003
    Messages
    44
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2003
    Messages : 44
    Par défaut autre sens
    Merci Darian mais c'est dans l'autre sens que je veux envoyer des données.
    J'arrive depuis longtemps à recevoir des données en ouvrant une
    socket et en récupérant un fichier xml d'un serveur distant.
    Ce que je veux faire c'est le contraire, je veux envoyer des données
    automatiquement par un script, actionner le script distant pour que ces
    données soient inclues dans la base distante puis récupérer la main
    sur mon script pour lui faire exécuter autre chose.
    Ca, je n'y arrive pas, je n'arrive pas à faire de "post" automatique,
    post qui n'affiche pas de bouton mais s'exécute automatiquement.
    je veux éviter d'utiliser le javascript ou tout autre langage côté client
    bien évidemment car ça ne produit que des problèmes.

    merci de votre aide.

Discussions similaires

  1. [PHP-JS] Passage de variable de php à javascript
    Par jbr_85 dans le forum Langage
    Réponses: 9
    Dernier message: 02/03/2006, 17h19
  2. [PHP-JS] Passage de variable dans un mailto javascript
    Par arsenik7 dans le forum Langage
    Réponses: 26
    Dernier message: 18/01/2006, 10h45
  3. [PHP-JS] Passage de variable php/Js
    Par dark_vidor dans le forum Langage
    Réponses: 14
    Dernier message: 09/12/2005, 22h31
  4. [PHP-JS] passage de variable de javascript à php
    Par msieurx dans le forum Langage
    Réponses: 5
    Dernier message: 30/10/2005, 20h42
  5. [PHP-JS] passage de variable php a javascript
    Par limpins dans le forum Général JavaScript
    Réponses: 1
    Dernier message: 05/07/2005, 11h54

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo