Redirection web

phiphi77 -  
Nabla's Messages postés 18201 Date d'inscription   Statut Contributeur Dernière intervention   -
Bonjour,
1ere question
je souhaite apres un formulaire faire une redirection vers une page du site, ca ne marche pas je suis débutant et j'ai du faire une erreur, voici le code en php :
<?php
$nom = "envoi nom:\t$envoi_nom\n";
$prenom = "envoi prenom:\t$envoi_prenom\n";
$adresse = "envoi adresse:\t$envoi_adresse\n";
$ville = "envoi ville:\t$envoi_ville\n";
$teldom = "envoi teldom:\t$envoi_teldom\n";
$telport = "envoi telport:\t$envoi_telport\n";
$email = "envoi email:\t$envoi_email\n";
$temps = "envoi temps:\t$envoi_temps\n";
$infos = "envoi infos:\t$envoi_infos\n";
$msg= "$nom, $prenom, $adresse, $ville, $teldom, $telport, $email, $temps, $infos";
$recipient = "contact@monsite.com";
$subject = "demande de concept";
$mailheaders = "De: monsite.com <> \n";
$mailheaders .= "Repondre à: $envoi_email\n\n";
mail($recipient, $subject, $msg, $mailheaders);
echo "<HTML><HEAD>";
echo "<TITLE>Form envoi</TITLE>";
echo "</HEAD><BODY>";
echo "<H1 align=center>Merci, $envoi_nom</H1>";
echo "<P align=center>";
echo "Votre demande a été prise en compte.</P>";
echo "<P align=center>";
echo "<a href="http:www.monsite.com/mapage.html"><input type="button" value="Accéder à la partie réservée"></a></P>";
echo "</BODY></HTML>";
?>
</body>
</html>
2eme question
lorsque je fais appel à ma page php pour traiter le formulaire, est il possible d'éviter l'ouverture d'une page balnche ou de la page ou je dis merci, en appyant sur le bouton envoyer les informations du formulaire, y a t'il un moyen de l'envoyer via post et de rediriger direct?
3eme question
comment puis je transformer une page web formulaire en fichier pdf

merci pour vos réponses
Configuration: Windows Vista
Internet Explorer 7.0

21 réponses

  • 1
  • 2
  1. Nabla's Messages postés 18201 Date d'inscription   Statut Contributeur Dernière intervention   3 228
     
    je te conseille une redirection par header:
    https://www.google.fr/search?hl=fr&q=header+redirection&btnG=Rechercher&meta=&gws_rd=ssl

    le header doit etre envoyé AVANT TOUTE AUTRE DONNEES QUE TU ENVOIE PAR ECHO

    sinon tu peux faire en javascript:
    https://www.google.fr/search?hl=fr&q=redirection+javascript&meta=&gws_rd=ssl
    0
    1. phiphidu77 Messages postés 14 Date d'inscription   Statut Membre Dernière intervention  
       
      merci mais je ne suis pas un pro dans mon formulaire php pourrais tu me donner un exemple stp
      0
      1. Nabla's Messages postés 18201 Date d'inscription   Statut Contributeur Dernière intervention   3 228 > phiphidu77 Messages postés 14 Date d'inscription   Statut Membre Dernière intervention  
         
        tu degages tes echo, et a la place tu met
        $url="manouvellepage.php";
        header("Request-URI: $url");
        header("Content-Location: $url");
        header("Location: $url",301);
        0
      2. phiphidu77 Messages postés 14 Date d'inscription   Statut Membre Dernière intervention   > Nabla's Messages postés 18201 Date d'inscription   Statut Contributeur Dernière intervention  
         
        donc je fais :
        <?php
        $nom = "envoi nom:\t$envoi_nom\n";
        $prenom = "envoi prenom:\t$envoi_prenom\n";
        $adresse = "envoi adresse:\t$envoi_adresse\n";
        $ville = "envoi ville:\t$envoi_ville\n";
        $teldom = "envoi teldom:\t$envoi_teldom\n";
        $telport = "envoi telport:\t$envoi_telport\n";
        $email = "envoi email:\t$envoi_email\n";
        $temps = "envoi temps:\t$envoi_temps\n";
        $infos = "envoi infos:\t$envoi_infos\n";
        $msg= "$nom, $prenom, $adresse, $ville, $teldom, $telport, $email, $temps, $infos";
        $recipient = "contact@monsite.com";
        $subject = "demande de concept";
        $mailheaders = "De: monsite.com <> \n";
        $mailheaders .= "Repondre à: $envoi_email\n\n";
        mail($recipient, $subject, $msg, $mailheaders);
        $url="manouvellepage.html";
        header("Request-URI: $url");
        header("Content-Location: $url");
        header("Location: $url",301);
        ?>

        ca ne marche pas !!! je dois être un idiot lol
        0
  2. Nabla's Messages postés 18201 Date d'inscription   Statut Contributeur Dernière intervention   3 228
     
    j a pas testé le code que je t ai donné, car e suis au boulot...
    dis moi ce qui se passe, quel message d erreur ...
    0
    1. phiphidu77 Messages postés 14 Date d'inscription   Statut Membre Dernière intervention  
       
      as tu un tel stp merci
      0
      1. Nabla's Messages postés 18201 Date d'inscription   Statut Contributeur Dernière intervention   3 228 > phiphidu77 Messages postés 14 Date d'inscription   Statut Membre Dernière intervention  
         
        si tu cliques sur mon pseudo, tu verra que me telephoner sur mon portable va te couter cher ....
        0
  3. phiphidu77 Messages postés 14 Date d'inscription   Statut Membre Dernière intervention  
     
    je ne connais pas le prix d'une communication pour le danemark lol
    0
  4. Nabla's Messages postés 18201 Date d'inscription   Statut Contributeur Dernière intervention   3 228
     
    europe zone1... je connais pas otn operateur. depuis chez sfr, c est 55 cts je croi, amsi mieu vaut resoudre ton pb par le net, c est ggratuit, les autres pourront en profiter et nous aider
    0
    1. phiphidu77 Messages postés 14 Date d'inscription   Statut Membre Dernière intervention  
       
      voila ce qu'il affiche comme message d'erreur
      Warning: Cannot modify header information - headers already sent by (output started at /var/www/data/lri/4/4/J/2/44J258RP/faire_envoiform.php:9) in /var/www/data/lri/4/4/J/2/44J258RP/faire_envoiform.php on line 27

      Warning: Cannot modify header information - headers already sent by (output started at /var/www/data/lri/4/4/J/2/44J258RP/faire_envoiform.php:9) in /var/www/data/lri/4/4/J/2/44J258RP/faire_envoiform.php on line 28

      Warning: Cannot modify header information - headers already sent by (output started at /var/www/data/lri/4/4/J/2/44J258RP/faire_envoiform.php:9) in /var/www/data/lri/4/4/J/2/44J258RP/faire_envoiform.php on line 29
      0
  5. Vous n’avez pas trouvé la réponse que vous recherchez ?

    Posez votre question
  6. Nabla's Messages postés 18201 Date d'inscription   Statut Contributeur Dernière intervention   3 228
     
    je t ai dit en post 1 que tu devais mettre cette fonction avant tout affichage! et ligne 9 tu as un affichage qui se fait... ca veut aussi dire pas de code HTML avant, et meme pas un espace ou un saut de ligne en debut de fichier avant les balises php
    0
  7. phiphidu77 Messages postés 14 Date d'inscription   Statut Membre Dernière intervention  
     
    j'ai supprimé la ligne 9, rien à faire
    0
  8. Nabla's Messages postés 18201 Date d'inscription   Statut Contributeur Dernière intervention   3 228
     
    es ce qu il t affiche qqch a l ecran avant ca ???
    0
  9. phiphidu77 Messages postés 14 Date d'inscription   Statut Membre Dernière intervention  
     
    voici ce qui reste
    <?php
    $nom = "envoi nom:\t$envoi_nom\n";
    $prenom = "envoi prenom:\t$envoi_prenom\n";
    $adresse = "envoi adresse:\t$envoi_adresse\n";
    $ville = "envoi ville:\t$envoi_ville\n";
    $teldom = "envoi teldom:\t$envoi_teldom\n";
    $telport = "envoi telport:\t$envoi_telport\n";
    $email = "envoi email:\t$envoi_email\n";
    $temps = "envoi temps:\t$envoi_temps\n";
    $infos = "envoi infos:\t$envoi_infos\n";
    $msg= "$nom, $prenom, $adresse, $ville, $teldom, $telport, $email, $temps, $infos";
    $recipient = "contact@monsite.com";
    $subject = "demande de concept";
    $mailheaders = "De: monsite.com <> \n";
    $mailheaders .= "Repondre à: $envoi_email\n\n";
    mail($recipient, $subject, $msg, $mailheaders);
    $url="manouvellepage.html";
    header("Request-URI: $url");
    header("Content-Location: $url");
    header("Location: $url",301);
    ?>

    bien je remplace ma nouvelle page par la mienne mais rien
    0
  10. Nabla's Messages postés 18201 Date d'inscription   Statut Contributeur Dernière intervention   3 228
     
    desolé mais ta ligne 9 est toujours la, a priori c est :

    $temps = "envoi temps:\t$envoi_temps\n";

    d ailleurm jai limpression que tu utilises les variables superglobales.... c est pas conseillé, et c est meme desactivé par defaut sur les nouvelles versions de php...
    $envoi_temps ca vient du formulaire ca ? si oui, tu dois faire $_POST[envoi_temps]
    0
  11. phiphidu77 Messages postés 14 Date d'inscription   Statut Membre Dernière intervention  
     
    ok ca marche as tu une solution pour ma 3eme question car la 2eme se trouve résolu d'office

    merci pour ton intervention supersympa, j'en ai appris un peu plus aujourd'hui
    0
  12. phiphidu77 Messages postés 14 Date d'inscription   Statut Membre Dernière intervention  
     
    non ligne etait avant il y avait du html j'ai tout supprimé et ca marche, qu'appelles tu valeur superglobale, c'est quoi la difference entre
    $nom = "envoi nom:\t$envoi_nom\n";
    et
    $nom = "$_POST[envoi_nom]"
    mon formulaire marche comme il est maintenant si il y ades améliorations je suis preneur

    en tout cas merci
    0
  13. Nabla's Messages postés 18201 Date d'inscription   Statut Contributeur Dernière intervention   3 228
     
    en gros, la difference, entre
    $envoi_nom
    et
    $_POST[envoi_nom]

    c est que dans la 2 eme, tu sait d ou vien ta valeur... du formulaire! et par methode post, pas GET ...

    je prend un autre exemple, la session...
    imagine que tu utilisees le champ $_SESSION['login'] pour savoir si qqcn est connecté, en utilisant la fonction isset....
    et ben il suffit qu a la fin de l url je mette ?login=hacker et je serai loggé...
    alors que si tu fais isset($_SESSSION['login']), tu es sur de ne pas te gourrer et de pas controller n importe quel login, en l occurence celui de isset($_GET['login']). GET et POST sont fourni par le client: variables non sur!. Session est sur le serveur: sur
    0
  14. phiphidu77 Messages postés 14 Date d'inscription   Statut Membre Dernière intervention  
     
    QUE PENSES TU DE CELA QUI NE MARCHE PAS NON PLUS
    <?php
    $nom=$_POST['nom'] ;
    $mdp=$_POST['mdp'] ;
    $url="dossier.html";
    if ($nom=="DOSSIER")
    if ($mdp=="1A2B6543")
    {
    header("Request-URI: $url");
    header("Content-Location: $url");
    header("Location: $url",301);
    }
    else{
    echo "<HTML><HEAD>";
    echo "<TITLE>pagesecurise</TITLE></HEAD><BODY>";
    echo "<H1 align=center>Accés refusé</H1>";
    echo "<P align=center>";
    echo "<INPUT TYPE ="button" Value = "retour" onclick = "self.history.back();"></P>";
    echo "</BODY></HTML>";
    }
    ?>
    0
  15. phiphidu77 Messages postés 14 Date d'inscription   Statut Membre Dernière intervention  
     
    CA ME DONNE CELA EN EREUR
    Parse error: syntax error, unexpected T_STRING, expecting ',' or ';' in /var/www/data/lri/4/4/J/2/44J258RP/pagesecurise.php on line 17
    0
  16. phiphidu77 Messages postés 14 Date d'inscription   Statut Membre Dernière intervention  
     
    j'ai trouvé
    voilà
    <?php
    $nom=$_POST['nom'] ;
    $mdp=$_POST['mdp'] ;
    if ($nom=="DOSSIER")
    if ($mdp=="1A2B6543")
    {
    $url="dossier.html";
    header("Request-URI: $url");
    header("Content-Location: $url");
    header("Location: $url",301);
    }
    else{
    $url="acces.html";
    header("Request-URI: $url");
    header("Content-Location: $url");
    header("Location: $url",301);
    }
    ?>

    par contre je voudrais faire afficher que c'est pas le bon code?
    0
  17. Nabla's Messages postés 18201 Date d'inscription   Statut Contributeur Dernière intervention   3 228
     
    a ce moment la, le code devient

    <?php
    $nom=$_POST['nom'] ;
    $mdp=$_POST['mdp'] ;
    if ($nom=="DOSSIER")
    if ($mdp=="1A2B6543")
    {
    $url="dossier.html";
    header("Request-URI: $url");
    header("Content-Location: $url");
    header("Location: $url",301);
    }
    else{
    echo "degage ou je vais te casser les dents";
    }
    ?>
    0
  18. phiphidu77 Messages postés 14 Date d'inscription   Statut Membre Dernière intervention  
     
    merci mais dans ce cas je ne paux pas faire une redirection sur le else vars la page d'acces car j'ai mis un echo?
    0
  19. Nabla's Messages postés 18201 Date d'inscription   Statut Contributeur Dernière intervention   3 228
     
    en effet... c est pour te dire qu a la place tu peux mettre du code HTML aussi ;)
    apres c est toi qui gère ton affaire
    0
  20. phiphidu77 Messages postés 14 Date d'inscription   Statut Membre Dernière intervention  
     
    merci mais dans le cas présent je voudrais les 2 est ce possible rediriger et mettre un message comme quoi le code est faux
    0
  • 1
  • 2