Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1357 connectés 

  FORUM HardWare.fr
  Programmation
  PHP

  redirection après envoi de données

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

redirection après envoi de données

n°1391853
oli1987
Posté le 20-06-2006 à 23:31:52  profilanswer
 

Bonsoir,
 
Je n'ai plus qu'une chose à mettre au point, mais je ne m'en sors pas !
 
Il s'agit d'une redirection après l'inscription à une Newsletter
Mon formulaire d'inscription comprend :

Code :
  1. <FORM name="formnews" method="POST" <b>action="<?php echo $editFormAction ; ?>"</b>>


Cette variable est définie plus haut par le code suivant :

Code :
  1. $editFormAction = $_SERVER['PHP_SELF'];
  2. if (isset($_SERVER['QUERY_STRING'])) {
  3.   $editFormAction .= "?" . htmlentities($_SERVER['QUERY_STRING']);
  4. }
  5. if ((isset($_POST["MM_insert"])) && ($_POST["MM_insert"] == "formnews" )) {
  6.   $insertSQL = sprintf("INSERT INTO newsletter (date, pseudo, email) VALUES (now(), %s, %s)",
  7.                        GetSQLValueString($_POST['requiredNom'], "text" ),
  8.                        GetSQLValueString($_POST['requiredEmail'], "text" ),
  9.                        GetSQLValueString($_POST['date'], "text" ));
  10.   mysql_select_db($database_newsletter, $newsletter);
  11.   $Result1 = mysql_query($insertSQL) or die(mysql_error());
  12.   $insertGoTo = "http://bcml.no-ip.org/Newsletter/index.php?rub=2";
  13. if (isset($_SERVER['QUERY_STRING'])) {
  14.     $insertGoTo .= (strpos($insertGoTo, '?')) ? "&" : "?";
  15.     $insertGoTo .= $_SERVER['QUERY_STRING'];
  16.   }
  17.   header(sprintf("Location: %s", $insertGoTo));


 
Et lorsque l'internaute clique sur "Envoyer", il n'est pas redirigé vers index.php?rub=2, mais vers la meme page que sur laquelle se trouve le formulaire !!!
 
Je ne vois pas d'où vient le problème, d'autant plus que les données saisies sont bien envoyées dans ma table !!!
 
Merci à ceux qui pourront m'aider !

mood
Publicité
Posté le 20-06-2006 à 23:31:52  profilanswer
 

n°1391890
mIRROR
Chevreuillobolchévik
Posté le 21-06-2006 à 07:34:12  profilanswer
 

Code :
  1. $editFormAction = $_SERVER['PHP_SELF'];


oui quelle enigme je me demande d ou vient le probleme

 

sinon c est quoi ca MM_insert ?
dreamweaver qui fait du php ? :D

n°1391945
oli1987
Posté le 21-06-2006 à 10:05:05  profilanswer
 

oui, exactement ! Dreamweaver !
Quelle partie du code dois je modifier ou spprimer ??

n°1391948
mIRROR
Chevreuillobolchévik
Posté le 21-06-2006 à 10:09:46  profilanswer
 

si ton formulaire doit toujours envoyer sur la meme page bah

 
Code :
  1. <FORM name="formnews" method="POST" <b>action="<?php echo $editFormAction ; ?>"</b>>
 

devient

 
Code :
  1. <form name="formnews" method="POST" action="http://bcml.no-ip.org/Newsletter/index.php?rub=2">


enfin j ai pas l impression de t aider si tu comprends rien a ton code  :sweat:
deja que je laisserais jamais DW faire mon html mais la php ca me fait carrement peur

n°1391949
oli1987
Posté le 21-06-2006 à 10:11:35  profilanswer
 

j'ai déjà essayé comme cela ! la direction est bonne, mais il n'y a pas d'envoie d'infos !

n°1391950
mIRROR
Chevreuillobolchévik
Posté le 21-06-2006 à 10:16:50  profilanswer
 

bah désolé mais debugger du code généré automatiquement c est vraiment une plaie :sweat:
visiblement ton code est fait pour que les données soient envoyées sur la page courante
donc si tu veux que ton bouzin marche il faudra surement remettre une partie de ce code sur la page index
 
mais vraiment tu pourrais coder ca toi meme c est vraiment pas compliqué  
 
faire confiance a DW :cry:

n°1391954
Glock21
Yark !
Posté le 21-06-2006 à 10:31:36  profilanswer
 

+1 ! Et en plus, si tes infos sont un peu sensibles, c'est plus que pas bien du tout. Mais bon, juste pour newsletter, c'est pas trop grave...
 


---------------
Je donne souvent l'air d'être ailleurs, mais en faite, je ne suis nulle part...
n°1391966
oli1987
Posté le 21-06-2006 à 10:41:44  profilanswer
 

Donc, sur la page de mon formuylaire, l'action renvoie à la page suivante.
 
Et là, mon code n'a pas l'air correct :
 

Code :
  1. <?php
  2. mysql_connect("localhost", "bcml", "bcml" ) or die("Impossible de se connecter :  " . mysql_error());
  3. mysql_select_db("bcml" );
  4. //requete qui ajoute un utilisateur à la table "utilisateurs"  
  5. $result=mysql_query("INSERT INTO newsletter (pseudo, email, date)
  6.               VALUES ("$_POST['Nom']","$_POST['Email']","$_POST['date']" )" );
  7. ?>
  8. <font face="verdana" size="2">Inscription bien enregistrée</font>
  9. <?php
  10. mysql_close();
  11. ?>


 
Help me please

n°1391967
zapan666
Tout est relatif
Posté le 21-06-2006 à 10:44:39  profilanswer
 

exit apres le header ?


---------------
my flick r - Just Tab it !
n°1391973
oli1987
Posté le 21-06-2006 à 10:50:59  profilanswer
 

Comme ça ? marche pas non plus :s
 

Code :
  1. <?php
  2. mysql_connect("localhost", "bcml", "bcml" ) or die("Impossible de se connecter :  " . mysql_error());
  3. mysql_select_db("bcml" );
  4. //requete qui ajoute un utilisateur à la table "utilisateurs"  
  5. $result = mysql_query("INSERT INTO newsletter (pseudo, email, date)
  6.               VALUES ("$_POST['Nom']","$_POST['Email']","$_POST['date']" )" );
  7.    
  8. ?>
  9. <p><font face="verdana" size="2">Inscription bien enregistrée</font></p>
  10. <?php
  11. header("Location: http://bcml.no-ip.org/index.php" );
  12. exit;
  13. mysql_close();
  14. ?>


Message édité par oli1987 le 21-06-2006 à 10:56:44
mood
Publicité
Posté le 21-06-2006 à 10:50:59  profilanswer
 

n°1391987
oli1987
Posté le 21-06-2006 à 11:20:30  profilanswer
 

quelqu'un peut me dire pourquoi l'envoi de données foire ???

n°1392023
zapan666
Tout est relatif
Posté le 21-06-2006 à 12:03:05  profilanswer
 

1) ferme ta connexion SQL avant le header ca ne fait pas de mal
2) aucune sortie avant le header (genre les <p>...)


---------------
my flick r - Just Tab it !
n°1392037
oli1987
Posté le 21-06-2006 à 12:15:48  profilanswer
 

tjrs la meme chose
 
essaye pr voir le résultat :
 
http://bcml.no-ip.org/Newsletter/
 
Le code de cette page là est simplement le formulaire :
 

Code :
  1. <?php
  2. mysql_connect("localhost", "***", "***" ) or die("Impossible de se connecter :  " . mysql_error());
  3. mysql_select_db("bcml" );
  4. $result = mysql_query("SELECT * FROM newsletter" );
  5. $numberins = mysql_num_rows($result);
  6. ?>
  7. <p align="center"><span style="font-size: 8pt"><font face="verdana">Nombre d'inscrits : <?php echo $numberins; ?>.</font></span></p>
  8. <table align='center' border='0' bordercolor='#ffffff' width='300'>
  9. <tr>
  10. <td>
  11. <FORM name="formnews" method="POST" action="http://bcml.no-ip.org/Newsletter/index.php?rub=2">
  12. <table align='center' border='0' width='320'>
  13.           <tr>
  14.             <td align="left" width="120" colspan="3" height="25"><font face="Arial" color="#000000"><b>
  15.             <span style="font-size: 8pt">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
  16.             Votre nom</span></b></font></td>
  17.             <td width="200" colspan="3" height="43"><font size="2" face="Verdana" color="#C5C5C5"><u><b>
  18.         <input type="hidden" name="date" value="date()"><input type="text" name="Nom" size="23" style="font-size: 10 pt"></b></u>            </td>
  19.           </tr>
  20.    <tr>
  21.             <td align="left" width="120" colspan="3" height="25"><font face="Arial" color="#000000"><b>
  22.             <span style="font-size: 8pt">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
  23.             Votre email</span></b></font></td>
  24.             <td width="200" colspan="3" height="43"><font size="2" face="Verdana" color="#C5C5C5"><u><b>
  25.         <input type="text" name="Email" size="23" style="font-size: 10 pt"></b></u></font></td>
  26.           </tr>
  27.   <tr>
  28.       <td height="25" colspan="6" width="300">
  29.       <p align="center"><input type="submit" value="Inscription"></td>
  30.          </tr>
  31. </table>
  32. <input type="hidden" name="MM_insert" value="formnews">
  33. </FORM>
  34. </td>
  35. </tr>
  36. </table>
  37. <?php
  38. mysql_close();
  39. ?>

n°1392048
zapan666
Tout est relatif
Posté le 21-06-2006 à 12:21:45  profilanswer
 

dans index.php il y a bien le header + exit ?  
et dans le header avec une url relative ca marche ?
il y a bien aucune sortie avant le header ?
recupere tu bien tes donnees dans index.php ?
va t'il jusqu'a la requete d'insertion ?
 
bref... debug [:petrus75]


---------------
my flick r - Just Tab it !
n°1392052
oli1987
Posté le 21-06-2006 à 12:24:26  profilanswer
 

mon index.php est composé de plusieurs includes  

Code :
  1. <?php require "rubrique.php"; ?>
  2. <html>
  3. <head>
  4. <title><?php echo "$title"; ?></title>
  5. <META NAME="Author" CONTENT="<?php echo $author; ?>" />
  6. <SCRIPT language=javascript>
  7. function OuvrirPopup(page,nom,option) {
  8.   window.open(page,nom,option);
  9. }
  10. </SCRIPT>
  11. </head>
  12. <body background="../Images/backgroundcarre.jpg">
  13. <table valign="top" align="center" border="1" cellpadding="0" cellspacing="0" bordercolor="#000000" width="920">
  14.     <tr>
  15. <td>
  16.   <table valign="top" border="0" cellpadding="0" cellspacing="0" style="border-collapse: collapse" bordercolor="#111111" width="920" height="620" background="../Images/background1.jpg">
  17.     <tr>
  18.       <td height="35" colspan="4" width="920"><?php include("../connection.php" ); ?></td>
  19.     </tr>
  20.     <tr>
  21.       <td height="33" colspan="4" width="920">&nbsp;</td>
  22.     </tr>
  23.     <tr>
  24.       <td valign="top" height="40" colspan="4" width="920"><?php include("../fastnews.php" ); ?></td>
  25.     </tr>
  26.     <tr>
  27.       <td height="5" colspan="4" width="920"><font size="1">&nbsp;&nbsp; </font></td>
  28.     </tr>
  29.     <tr>
  30.       <td background="http://bcml.no-ip.org/Images/bgroundmenu2gauche.jpg" valign="top" height="365" width="210"><?php include("../menu.php" ); ?></td>
  31.       <td background="http://bcml.no-ip.org/Images/bgroundmenu1center.jpg"rowspan="2" valign="top" height="485" width="518"><?php include $page; ?></td>
  32.       <td background="http://bcml.no-ip.org/Images/bgroundmenu3droit.jpg"rowspan="2" valign="top" height="485" width="192"><?php include("../rightcolumn.php" ); ?></td>
  33.     </tr>
  34.     <tr>
  35.       <td background="http://bcml.no-ip.org/Images/bgroundmenu2gauche.jpg" valign="bottom" colspan="1" width="210"><?php include("../menu2.php" ); ?></td>
  36.     </tr>
  37.   </table>
  38.   <table border="0" cellpadding="0" cellspacing="0" width="920">
  39.     <tr>
  40.       <td background="../Images/backgroundbottom.jpg" height="35" width="100%"><p align="center"><font face="verdana" size="2" color="#ffffff"><b>Contact webmaster</b> : <a href="mailto:webmaster@bcml.be?subject=BCML.BE">webmaster@bcml.be</a></font></p></td>
  41.     </tr>
  42.   </table>
  43. </td>
  44. </tr> 
  45. </table> 
  46. </body>
  47. </html>


 
le header doit se situer dans index.php?rub=2, et là il y est.
ca ne marche pas avec une url relative

n°1392071
zapan666
Tout est relatif
Posté le 21-06-2006 à 12:45:33  profilanswer
 

le header est bien dans rubrique.php ?
Tu as repondu a toutes les questions que je t'ai pose ?


---------------
my flick r - Just Tab it !
n°1392072
oli1987
Posté le 21-06-2006 à 12:47:14  profilanswer
 

pq le header doit il se trouver dans rubrique.php ???
il y a bien aucune sortie avant le header ?  comment je vérifie ???
recupere tu bien tes donnees dans index.php ? je récupère les données saisies dans index.php?rub=1 dans index.php?rub=2
va t'il jusqu'a la requete d'insertion ? comment je vérifie ???
 

n°1392075
zapan666
Tout est relatif
Posté le 21-06-2006 à 12:52:19  profilanswer
 

oli1987 a écrit :

pq le header doit il se trouver dans rubrique.php ???
il y a bien aucune sortie avant le header ?  comment je vérifie ???
recupere tu bien tes donnees dans index.php ? je récupère les données saisies dans index.php?rub=1 dans index.php?rub=2
va t'il jusqu'a la requete d'insertion ? comment je vérifie ???


1) parce que si il est ailleurs vu la structure de ton bousin, bah il y aura un affichage html avamt
http://uk2.php.net/manual/fr/function.header.php

Citation :


 N'oubliez jamais que header() doit être appelée avant que le moindre contenu ne soit envoyé, soit par des lignes HTML habituelles dans le fichier, soit par des affichges PHP. Une erreur très classique est de lire un fichier avec include() ou require(), et de laisser des espaces ou des lignes vides, qui génèreront un affichage avant que la fonction header()  ne soit appelée. Le même problème existe avec les fichiers PHP/HTML standards.


2) bah faut pas qu'il y est de echo d'html avant etc (cf 1))
3) bah ouais mais tu recois bien les valeurs ? (je pose deux fois la meme question...)
4) un petit echo avant ? verification dans la base si les donnees sont bien dans le INSERT ?   :D utilise ton imagination pour suivre le decourlement de tes scripts.
 


---------------
my flick r - Just Tab it !

Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  PHP

  redirection après envoi de données

 

Sujets relatifs
récuperer les données de la fonction data arrivalVBA /SQL => BASE ACCESS Comment supprimer des données ?
Pb recuperation de donnéesGarder les variables POST après une redirection header
DatagramPacket & DatagramSocket recupération des donnéesBase de données lycos
[CREATION] Base de données en PHP sans MySQL (PHP4 - test en cours)probleme envoi mail avec php
[VBscript] Envoi de mailredirection après envoi de données
Plus de sujets relatifs à : redirection après envoi de données


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR