Redirection web

Fermé
phiphi77 - 19 juin 2008 à 10:43
Nabla's Messages postés 18149 Date d'inscription mercredi 4 juin 2008 Statut Contributeur Dernière intervention 28 avril 2014 - 22 juin 2008 à 15:00
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
A voir également:

21 réponses

Nabla's Messages postés 18149 Date d'inscription mercredi 4 juin 2008 Statut Contributeur Dernière intervention 28 avril 2014 3 219
19 juin 2008 à 10:48
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
phiphidu77 Messages postés 14 Date d'inscription jeudi 19 juin 2008 Statut Membre Dernière intervention 19 juin 2008
19 juin 2008 à 11:25
merci mais je ne suis pas un pro dans mon formulaire php pourrais tu me donner un exemple stp
0
Nabla's Messages postés 18149 Date d'inscription mercredi 4 juin 2008 Statut Contributeur Dernière intervention 28 avril 2014 3 219 > phiphidu77 Messages postés 14 Date d'inscription jeudi 19 juin 2008 Statut Membre Dernière intervention 19 juin 2008
19 juin 2008 à 11:32
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
phiphidu77 Messages postés 14 Date d'inscription jeudi 19 juin 2008 Statut Membre Dernière intervention 19 juin 2008 > Nabla's Messages postés 18149 Date d'inscription mercredi 4 juin 2008 Statut Contributeur Dernière intervention 28 avril 2014
19 juin 2008 à 11:41
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
Nabla's Messages postés 18149 Date d'inscription mercredi 4 juin 2008 Statut Contributeur Dernière intervention 28 avril 2014 3 219
19 juin 2008 à 13:29
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
phiphidu77 Messages postés 14 Date d'inscription jeudi 19 juin 2008 Statut Membre Dernière intervention 19 juin 2008
19 juin 2008 à 13:35
as tu un tel stp merci
0
Nabla's Messages postés 18149 Date d'inscription mercredi 4 juin 2008 Statut Contributeur Dernière intervention 28 avril 2014 3 219 > phiphidu77 Messages postés 14 Date d'inscription jeudi 19 juin 2008 Statut Membre Dernière intervention 19 juin 2008
19 juin 2008 à 13:44
si tu cliques sur mon pseudo, tu verra que me telephoner sur mon portable va te couter cher ....
0
phiphidu77 Messages postés 14 Date d'inscription jeudi 19 juin 2008 Statut Membre Dernière intervention 19 juin 2008
19 juin 2008 à 13:50
je ne connais pas le prix d'une communication pour le danemark lol
0
Nabla's Messages postés 18149 Date d'inscription mercredi 4 juin 2008 Statut Contributeur Dernière intervention 28 avril 2014 3 219
19 juin 2008 à 13:52
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
phiphidu77 Messages postés 14 Date d'inscription jeudi 19 juin 2008 Statut Membre Dernière intervention 19 juin 2008
19 juin 2008 à 14:00
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

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Nabla's Messages postés 18149 Date d'inscription mercredi 4 juin 2008 Statut Contributeur Dernière intervention 28 avril 2014 3 219
19 juin 2008 à 14:03
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
phiphidu77 Messages postés 14 Date d'inscription jeudi 19 juin 2008 Statut Membre Dernière intervention 19 juin 2008
19 juin 2008 à 14:26
j'ai supprimé la ligne 9, rien à faire
0
Nabla's Messages postés 18149 Date d'inscription mercredi 4 juin 2008 Statut Contributeur Dernière intervention 28 avril 2014 3 219
19 juin 2008 à 14:28
es ce qu il t affiche qqch a l ecran avant ca ???
0
phiphidu77 Messages postés 14 Date d'inscription jeudi 19 juin 2008 Statut Membre Dernière intervention 19 juin 2008
19 juin 2008 à 14:31
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
Nabla's Messages postés 18149 Date d'inscription mercredi 4 juin 2008 Statut Contributeur Dernière intervention 28 avril 2014 3 219
19 juin 2008 à 14:37
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
phiphidu77 Messages postés 14 Date d'inscription jeudi 19 juin 2008 Statut Membre Dernière intervention 19 juin 2008
19 juin 2008 à 14:38
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
Nabla's Messages postés 18149 Date d'inscription mercredi 4 juin 2008 Statut Contributeur Dernière intervention 28 avril 2014 3 219
19 juin 2008 à 14:41
cette reponse etait dans tout mes messages...
derniere ligne grisee...
en gros, ca: https://www.google.fr/search?hl=fr&q=php+pdf&meta=&gws_rd=ssl
0
phiphidu77 Messages postés 14 Date d'inscription jeudi 19 juin 2008 Statut Membre Dernière intervention 19 juin 2008
19 juin 2008 à 14:42
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
Nabla's Messages postés 18149 Date d'inscription mercredi 4 juin 2008 Statut Contributeur Dernière intervention 28 avril 2014 3 219
19 juin 2008 à 14:50
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
phiphidu77 Messages postés 14 Date d'inscription jeudi 19 juin 2008 Statut Membre Dernière intervention 19 juin 2008
19 juin 2008 à 15:00
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
phiphidu77 Messages postés 14 Date d'inscription jeudi 19 juin 2008 Statut Membre Dernière intervention 19 juin 2008
19 juin 2008 à 15:02
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
phiphidu77 Messages postés 14 Date d'inscription jeudi 19 juin 2008 Statut Membre Dernière intervention 19 juin 2008
19 juin 2008 à 15:09
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
Nabla's Messages postés 18149 Date d'inscription mercredi 4 juin 2008 Statut Contributeur Dernière intervention 28 avril 2014 3 219
19 juin 2008 à 15:13
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
phiphidu77 Messages postés 14 Date d'inscription jeudi 19 juin 2008 Statut Membre Dernière intervention 19 juin 2008
19 juin 2008 à 16:15
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
Nabla's Messages postés 18149 Date d'inscription mercredi 4 juin 2008 Statut Contributeur Dernière intervention 28 avril 2014 3 219
19 juin 2008 à 16:18
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
phiphidu77 Messages postés 14 Date d'inscription jeudi 19 juin 2008 Statut Membre Dernière intervention 19 juin 2008
19 juin 2008 à 16:24
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