Précédent   Forum des professionnels en informatique > PHP > PHP & SGBD > PHP & MySQL
PHP & MySQL Forum d'entraide sur les fonctions MySQL avec PHP. Avant de poster -> FAQ MySQL, Cours MySQL et Sources MySQL. Pour les questions concernant le moteur MySQL plutôt que les fonctions PHP, merci d'utiliser le forum MySQL.
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
Vieux 29/01/2010, 00h10   #1
Invité de passage
 
Inscription : janvier 2008
Messages : 22
Détails du profil
Informations forums :
Inscription : janvier 2008
Messages : 22
Points : 3
Points : 3
Par défaut afficher données formulaire

Bonjour,

J'ai un petit problème qui commence à me rendre dingue.

j'envoie des variable via un formulaire tout ce qu'il y a de plus normal.

je récupère donc les variables dans un fichier php



Code :
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
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
<?php require_once('./admin/connexion.php'); 
session_start(); 
 
 if(isset($_POST['email'])){ // on vérifie la présence des variables de formulaire (si le formulaire a été envoyé)
	if(empty($_POST['mdp'])){ 
		header("Location:adhesion.php?erreur=empty");
	}
	else if($_POST['mdp'] == $_POST['confirmmdp']){ // on vérifie si le mot de passe et le mot de passe confirmé ont la même valeur
		// on passe toutes les variables $POST en variables
		 $email = $_POST['email'];
		$mdp = md5($_POST['mdp']); 
		$nom = $_POST['nom'];
		$prenom = $_POST['prenom'];  
 
		// on fait l'INSERT dans la base de données
		$add_user = sprintf("INSERT INTO abonne (email, mdp, nom, prenom) VALUES ('$email', '$mdp', '$nom', '$prenom')");
  		mysql_select_db($database_dbprotect, $dbprotect);
  		$result = mysql_query($add_user, $dbprotect) or die(mysql_error());
		header("Location:inscription.php?add=ok"); // redirection si création réussie
 
 	}
	else{
		header("Location:adhesion.php?erreur=pass"); // redirection si le pass1 est différent du pass2
	}
 
}
 
 
?>
 
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
 
</head>
 
<body>
 
 
	<div id="conteneur">
		<?php 
     include ("menu_gauche.php");
    ?>
 
		<div id="centre">
			<div id="top"></div>
			<div id="cadre">
				<div class="centrage">
 
 
         <h1>Votre inscription n'est pas terminée</h1>
            <?  echo $email; ?>
 
 
 
        </div>
			</div>
			<div id="footer"></div>
		</div>
 
		<?php 
     include ("menu_droite.php");
    ?>	
 
	</div>
</body>
</html>

je récupère les données en POST (j'ai également essayé en GET)

Code :
1
2
3
4
    $email = $_POST['email'];
		$mdp = md5($_POST['mdp']); 
		$nom = $_POST['nom'];
		$prenom = $_POST['prenom'];

et j'affiche en faisant un echo a la ligne

Le problème est que mon echo n'affiche rien alors que les données récupérées sont bien ajouter dans ma table de BDD.

Voyez-vous d'où cela peut venir??? c'est à n'y rien comprendre !!!
Merci,
Mathieu
matt7575 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 29/01/2010, 00h28   #2
Expert Confirmé Sénior
 
Inscription : juin 2002
Messages : 6 164
Détails du profil
Informations forums :
Inscription : juin 2002
Messages : 6 164
Points : 6 404
Points : 6 404
Normal : quand votre variable est définie vous faites une redirection dans tous vos tests sinon elle n'est pas définie puisque réalisé dans une condition.

Conseils :
  • Mettre fin au script après une redirection (exit)
  • Développer avec tous les niveaux d'erreur activés (avec E_NOTICE vous devriez voir que votre variable n'existe pas)

Mais il y a éventuellement des subtilités supplémentaires : register_globals à on et short_open_tag à off.
__________________
Posez vos questions techniques sur le forum, pas en privé (je n'y répondrai pas).

[Général] "Ça ne marche pas" n'est pas une réponse acceptable.
[PHP] Développez avec error_reporting à E_ALL (minimum).
julp est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 29/01/2010, 06h57   #3
Expert Confirmé
 
Avatar de RunCodePhp
 
Inscription : janvier 2010
Messages : 2 238
Détails du profil
Informations personnelles :
Localisation : Réunion

Informations forums :
Inscription : janvier 2010
Messages : 2 238
Points : 2 591
Points : 2 591
Salut

Effectivement, tu fais une redirection avec un header() une fois reçu et insérer le mail, donc si au retour tu souhaite afficher un message de retour avec l'email, le minimum serait de transmettre ce mail :
Code :
header("Location:inscription.php?add=ok&email=".$email);
Tu pourras le récupérer avec $_GET['email'].
Ca me semble très moyen comme technique cependant.

Ce genre de truc s'appuient très souvent sur les sessions, (genre $_SESSION['id_user']) qui après permet de récupérer les données d'un user dans la Bdd, comme l'adresse email si l'application en a besoin.
C'est ton cas car tu as un session_start(), donc regarde de ce coté là.
__________________
Win XP | WampServer 2.2 | Apache 2.2.21 | Php 5.3.8 | MySQL 5.5.16
Si debugger, c'est supprimer des bugs, alors programmer ne peut être que les ajouter [Edsger Dijkstra]
RunCodePhp est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +1. Il est actuellement 20h54.


 
 
 
 
Partenaires

Hébergement Web