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 :

Envoyer des données par la méthode POST [Débutant(e)]


Sujet :

Langage PHP

  1. #1
    Membre actif Avatar de sorry60
    Profil pro
    Inscrit en
    Octobre 2003
    Messages
    802
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2003
    Messages : 802
    Points : 253
    Points
    253
    Par défaut Envoyer des données par la méthode POST
    Bonjour,

    J'aimerais envoyer des données d'une page php à une autre en utilisant la méthode post.
    Je l'avais deja fait, et ça marchait tres bien, avec la methode GET, mais pour essayer un peu POST j'aimerais changer.

    index.php envoie la donnée a à traitement.php, par le biais d'un formulaire (ça c'est bon je sais le faire)
    traitement.php la receptionne à l'aide d'un $_POST['a'], donc ici aussi c'est bon
    ensuite traitement.php modifie a
    et pour finir traitement.php renvoie a à index.php, et c'est là que je coince...

    Avec GET je faisais :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    header("Location: index.php?a=$var");
    Mais ce n'est plus possible avec POST.

    Voilà j'espere que vous pourrez me donner un ptit coup de main
    Merci

    Sorry
    Si je pleure encore qu'un jour tu me reviennes,
    C'est que sans toi je suis comme un Roi sans sa Reine.

  2. #2
    Membre expert

    Profil pro
    imposteur
    Inscrit en
    Avril 2003
    Messages
    3 308
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : imposteur

    Informations forums :
    Inscription : Avril 2003
    Messages : 3 308
    Points : 3 377
    Points
    3 377
    Par défaut
    Je pense que pour le dernier renvoi, ça sera forcément un GET (je sais pas comment on fait un POST sans formulaire, en fait).

    Par contre si tu veux masquer les infos dans la ligne de requête, je te conseillerais de passer tout ce qui t'intéresse en variables de session.

  3. #3
    Membre actif Avatar de sorry60
    Profil pro
    Inscrit en
    Octobre 2003
    Messages
    802
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2003
    Messages : 802
    Points : 253
    Points
    253
    Par défaut
    non il n'y a aucun soucis niveau securité, tout est en local

    Ok je reste avec GET pour le renvoi.
    Merci pour ta reponse
    Si je pleure encore qu'un jour tu me reviennes,
    C'est que sans toi je suis comme un Roi sans sa Reine.

  4. #4
    Membre confirmé
    Profil pro
    Inscrit en
    Février 2004
    Messages
    496
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Février 2004
    Messages : 496
    Points : 585
    Points
    585
    Par défaut
    Salut,

    tu peux faire un POST mais ce sera avec du javascript. Après tous tes traitements tu fais "tonformulaire.submit()" et tu les récupèreras avec $_POST['xxx'].

  5. #5
    Membre averti Avatar de Amine_sas
    Profil pro
    Étudiant
    Inscrit en
    Juin 2005
    Messages
    245
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juin 2005
    Messages : 245
    Points : 307
    Points
    307
    Par défaut
    essaye de declarer ton formulaire:

    <form action="traitement.php" method="post">

    et recevoir les donnees par:

    $_POST["ma_var"];

    maintenant la variable est reconnue dans le script traitement.php mais pas dans index.php.
    pour la renvoyer vers index.php, tu doit:
    -soit l'enregistrer de nouveau dans un formulaire, et ca necessite bien sur un clique sur un bouton "submit" pour l'envoyer.
    exemple:
    <input type="hidden" name="ma_var" value="<?echo $_POST['ma_var'];?>" >
    ...
    -soit l'envoyer par un lien:

    <a href="index.php?ma_var=<? echo $_POST['ma_var']; ?> index </a>

    et la recevoir ensuite par GET.

    -soit l'enregistrer dans une session.
    "Un remboursement des programmes défectueux serait envisageable mais toute l'industrie du logiciel ferait faillite la première année." Andrew Tanenbaum.

  6. #6
    Membre éclairé
    Avatar de kankrelune
    Profil pro
    Inscrit en
    Décembre 2005
    Messages
    763
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2005
    Messages : 763
    Points : 858
    Points
    858
    Par défaut
    L'envoi de variable POST ne peut pas se faire aussi simplement que via la méthode GET... il faut utiliser les sockets... .. .

    @ tchaOo°

  7. #7
    Membre actif Avatar de riesseg
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    415
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2006
    Messages : 415
    Points : 251
    Points
    251
    Par défaut
    jcrois pas qu'elle veuille s'amuser a balancer ces requetes POST par les ports kankrelune...
    Ou alors j'ai rien comprit...

    et pour finir traitement.php renvoie a à index.php, et c'est là que je coince...
    Si je ne m'abuse, php permet le renvoie de valeur par fonction nan ?
    Dans traitement.php tu fais une fonction ( ou peut etre directement, je sais pas) qui te retourne ta valeur.

    De memoire, ca doit etre qqch comme:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
    function SuperFonction($var)
    {
      ... /* traitement */
      return $var;
    }
     
    et dans index.php ca ressemblerai a 
     
    $variable = SuperFonction($a);
    pis voila...

    Mais peut etre que je melange un peu avec d'autres langages ^^
    n'oubliez pas la balise

Discussions similaires

  1. envoyer des données par rapport à une checkbox
    Par dudu134 dans le forum Langage
    Réponses: 2
    Dernier message: 18/05/2007, 18h57
  2. Envoyer des données par post sans formulaire
    Par webrider dans le forum Langage
    Réponses: 12
    Dernier message: 31/03/2007, 20h11
  3. Envoyer des données par TCP/IP
    Par slimdre dans le forum C++
    Réponses: 4
    Dernier message: 18/03/2007, 19h28
  4. envoyer des données par mail
    Par zorba49 dans le forum Général JavaScript
    Réponses: 3
    Dernier message: 16/12/2005, 12h00
  5. envoyer des données par l'intermédiaire d'un bouton
    Par mathilde50 dans le forum Access
    Réponses: 26
    Dernier message: 28/10/2004, 17h49

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