begin process at 2012 05 28 17:15:51
  Trouver un code source :
 
dans
 
Accueil > Forum > 

PHP

 > 

Divers

 > 

Aide & documentation

 > 

besoin d'aide pour organiser le code


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

besoin d'aide pour organiser le code

dimanche 10 avril 2011 à 23:43:45 | besoin d'aide pour organiser le code

ravid87

Bonsoir,

voila j'ai fait un code en php pour valider un formulaire d'inscription mais il ne fonctionne pas, je c'est que je m'y suis pris mal, mais je n'arrive pas à comprendre comment organisé le code pour qu'il fasse se que je li demande, voilà le code :
Code PHP :
<?php 

//check et validation du MAIL.
if(isset($_POST['inscr_mail']) and filter_var($_POST['inscr_mail'], FILTER_VALIDATE_EMAIL)) // si le mail d'inscription est reçu en POST sur la page
	{ 

$mail = $_POST['inscr_mail'];//debut de verification du mail, attribution du POST à une variable

$valeur_checkmail = $bdd->prepare('SELECT user_mail FROM user WHERE user_mail = ?') or die(print_r($bdd->errorInfo()));
$valeur_checkmail->execute(array($mail));
$valeur_checkmail_count= $valeur_checkmail->rowCount(array($mail));// check si doublon

			if (!$valeur_checkmail_count == 0) 
				{// si doublon positif on renvoi un message d'erreur
				echo '<p style="color:#669; font-weight:bolder" align="center"> le mail existe déjà </p><br/>'; 
				
			}
			else //mail ok
				{
				$mail = $_POST['inscr_mail'];
				$valeur_mail = true;
				return $mail;	
		    }
	}
//fin du check et validation du MAIL.

//insertion du PASS.
if(isset($_POST['inscr_pass'])) // si le mail d'inscription est réçu en POST sur la page
	{ 
		$pass = $_POST['inscr_log'];
		$valeur_pass = true;
		return $pass;
	}
//fin de l'insertion PASS.

//check et insertion du TELEPHONE.
if(isset($_POST['inscr_phone'])) // si le TELEPHONE d'inscription est réçu en POST sur la page
	{ 

$phone = $_POST['inscr_phone'];//debut de verification du TELEPHONE, attribution du POST à une variable

$valeur_checkphone = $bdd->prepare('SELECT user_phone FROM user WHERE user_phone = ? WHERE user_mail = '.$mail.'') or die(print_r($bdd->errorInfo()));
$valeur_checkphone->execute(array($phone));
$valeur_checkphone_count= $valeur_checkphone->rowCount(array($phone));// check si doublon

			if (!$valeur_checkphone_count == 0) 
				{// si doublon positif on renvoi un message d'erreur
				echo '<p style="color:#669; font-weight:bolder" align="center"> le numéro de téléphone existe déjà </p><br/>'; 
				
			 }
			else //inscription du TELEPHONE dans la base
				{
				$phone = $_POST['inscr_phone'];
				$valeur_phone = true;
				return $phone;
			}
	}
//fin du check et validation du numéro de TELEPHONE.	

//insertion du de la localisation.
if(isset($_POST['inscr_loc'])) // si la localisation est réçu en POST sur la page
	{ 
		$loc = $_POST['inscr_loc'];//debut d'insertion dde la localisation, attribution du POST à une variable
		$valeur_loc = true;
		return $loc;
	}
//fin de la validation de la localisation.

//insertion dans la base
if($valeur_mail = true and $valeur_pass = true or $valeur_phone = true or $valeur_loc = true) 
	{

		$valeur_inscr = $bdd->prepare('INSERT INTO user(user_mail, user_pass, user_phone, user_loc) VALUES(:mail, :pass, :phone, :loc)') or die(print_r($bdd->errorInfo()));
		$valeur_inscr->execute(array('mail' => $mail,
								     'pass' => $pass,
									 'phone' => $phone,
									 'loc' => $loc,
									));
		echo ' Bienvenue nouveau membre';
	}

?>


voilà en espérant que vous pourrez m'aider.
lundi 11 avril 2011 à 00:19:04 | Re : besoin d'aide pour organiser le code

ravid87

enfaite c bon j'ai réorganiser mon code, plus de message d'erreur, par contre, rien ne s&#8217;écrit dans ma base

voila le code
Code PHP :
<?php

//check et validation du MAIL.
if(isset($_POST['inscr_mail']) and filter_var($_POST['inscr_mail'], FILTER_VALIDATE_EMAIL)) // si le mail d'inscription est reçu en POST sur la page
	{ 

$mail = $_POST['inscr_mail'];//debut de verification du mail, attribution du POST à une variable

$valeur_checkmail = $bdd->prepare('SELECT user_mail FROM user WHERE user_mail = ?') or die(print_r($bdd->errorInfo()));
$valeur_checkmail->execute(array($mail));
$valeur_checkmail_count= $valeur_checkmail->rowCount(array($mail));// check si doublon

			if (!$valeur_checkmail_count == 0) 
				{// si doublon positif on renvoi un message d'erreur
				echo '<p style="color:#669; font-weight:bolder" align="center"> le mail existe déjà </p><br/>'; 
				
			}
			else //mail ok
				{
				//validation du PASS.
				if(isset($_POST['inscr_pass'])) // si le pass est réçu en POST sur la page
					{ 
						$pass = $_POST['inscr_log'];
						$valeur_pass = true;
						
						if(isset($_POST['inscr_phone'])) // si le TELEPHONE d'inscription est réçu en POST sur la page
						{ 
							$phone = $_POST['inscr_phone'];//debut de verification du TELEPHONE, attribution du POST à une variable
							$valeur_checkphone = $bdd->prepare('SELECT user_phone FROM user WHERE user_phone = ?') or die(print_r($bdd->errorInfo()));
							$valeur_checkphone->execute(array($phone));
							$valeur_checkphone_count= $valeur_checkphone->rowCount(array($phone));// check si doublon

							if (!$valeur_checkphone_count == 0) 
							{// si doublon positif on renvoi un message d'erreur
								echo '<p style="color:#669; font-weight:bolder" align="center"> le numéro de téléphone existe déjà </p><br/>'; 
							 }
							else //telephone ok
							{
								$phone = $_POST['inscr_phone'];
								$valeur_phone = true;
								
								//validationde la localisation.
								if(isset($_POST['inscr_loc'])) // si la localisation est réçu en POST sur la page
									{ 
										$loc = $_POST['inscr_loc'];//attribution du POST à une variable
										$valeur_loc = true;
										
										//insertion dans la base
										if($valeur_mail = true , $valeur_pass = true , $valeur_phone = true , $valeur_loc = true) 
											{
												$valeur_inscr = $bdd->prepare('INSERT INTO user(user_mail, user_pass, user_phone, user_loc) VALUES(:mail, :pass, :phone, :loc)') or die(print_r($bdd->errorInfo()));
												$valeur_inscr->execute(array('mail' => $mail,
																			 'pass' => $pass,
																			 'phone' => $phone,
																			 'loc' => $loc,
																			));
												echo ' Bienvenue nouveau membre';
											}
										//fin insertion dans la base
									}
								//fin de la validation de la localisation.
								
							}
						}
						//fin du check et validation du numéro de TELEPHONE.
						
					}
				}//fin de validation du PASS.	
	}
//fin du check et validation du MAIL.

?>

lundi 11 avril 2011 à 00:19:57 | Re : besoin d'aide pour organiser le code

ravid87

correction : if($valeur_mail = true and $valeur_pass = true and $valeur_phone = true and $valeur_loc = true)
lundi 11 avril 2011 à 08:25:33 | Re : besoin d'aide pour organiser le code

syndrael

Je n'ai hélas pas le temps de regarder le code d'un point de vue algorithmique mais il y a pas mal de bons reflexes en développement:
1. Les commentaires, c'est si rare dans le code de la plupart des gens
2. Requetes préparées, bonne notion même si dans ce cas ce n'est pas vraiment nécessaire, mais c'est un bon point.
Quant à

if($valeur_mail = true and $valeur_pass = true and $valeur_phone = true and $valeur_loc = true)


transforme tes '=' en '=='..
Je verrai si je peux repasser voir ton code et t'aider, mais j'ai hélas peu de temps.
Bonne continuation..
S.
lundi 11 avril 2011 à 16:17:53 | Re : besoin d'aide pour organiser le code

ravid87

voila j'ai essayé ça et ma base n'est toujours incrémenter des données

Code PHP :
//check et validation du MAIL.
if(isset($_POST['inscr_mail']) and filter_var($_POST['inscr_mail'], FILTER_VALIDATE_EMAIL)) // si le mail d'inscription est reçu en POST sur la page
	{ 

$mail = $_POST['inscr_mail'];//debut de verification du mail, attribution du POST à une variable

$valeur_checkmail = $bdd->prepare('SELECT user_mail FROM user WHERE user_mail = ?') or die(print_r($bdd->errorInfo()));
$valeur_checkmail->execute(array($mail));
$valeur_checkmail_count= $valeur_checkmail->rowCount(array($mail));// check si doublon

			if (!$valeur_checkmail_count == 0) 
				{// si doublon positif on renvoi un message d'erreur
				echo '<p style="color:#669; font-weight:bolder" align="center"> le mail existe déjà </p><br/>'; 
				
			}
			else //mail ok
				{
				//validation du PASS.
				if(isset($_POST['inscr_pass'])) // si le pass est réçu en POST sur la page
					{ 
						$pass = $_POST['inscr_log'];
						$valeur_pass = true;
						
						if(isset($_POST['inscr_phone'])) // si le TELEPHONE d'inscription est réçu en POST sur la page
						{ 
							$phone = $_POST['inscr_phone'];//debut de verification du TELEPHONE, attribution du POST à une variable
							$valeur_checkphone = $bdd->prepare('SELECT user_phone FROM user WHERE user_phone = ?') or die(print_r($bdd->errorInfo()));
							$valeur_checkphone->execute(array($phone));
							$valeur_checkphone_count= $valeur_checkphone->rowCount(array($phone));// check si doublon

							if (!$valeur_checkphone_count == 0) 
							{// si doublon positif on renvoi un message d'erreur
								echo '<p style="color:#669; font-weight:bolder" align="center"> le numéro de téléphone existe déjà </p><br/>'; 
							 }
							else //telephone ok
							{
								$phone = $_POST['inscr_phone'];
								$valeur_phone = true;
								
								//validationde la localisation.
								if(isset($_POST['inscr_loc'])) // si la localisation est réçu en POST sur la page
									{ 
										$loc = $_POST['inscr_loc'];//attribution du POST à une variable
										$valeur_loc = true;
										
										//insertion dans la base
										if($valeur_mail = true and $valeur_pass == true or $valeur_phone == true or $valeur_loc == true) {
											try{
												$valeur_inscr = $bdd->prepare('INSERT INTO user(user_mail, user_pass, user_phone, user_loc) VALUES(:mail, :pass, :phone, :loc)');
												$valeur_inscr->execute(array('mail' => $mail,
																			 'pass' => $pass,
																			 'phone' => $phone,
																			 'loc' => $loc,
																				));
											echo ' Bienvenue nouveau membre';
											
											}//fn du try
											
											catch (Exception $con_e) {
												
												die('Erreur : '.$con_e->getMessage());
												 }//fin du catch
											
											} 
										//fin insertion dans la base
									}
								//fin de la validation de la localisation.
								
							}
						}
						//fin du check et validation du numéro de TELEPHONE.
						
					}
				}//fin de validation du PASS.	
	}
//fin du check et validation du MAIL.
lundi 11 avril 2011 à 16:37:40 | Re : besoin d'aide pour organiser le code

ravid87

elle est ou la fonction "edit" pour les post?

j'ai fait quelque modification encore :

Code PHP :
<?php 

//check et validation du MAIL.
if(isset($_POST['inscr_mail']) and filter_var($_POST['inscr_mail'], FILTER_VALIDATE_EMAIL)) // si le mail d'inscription est reçu en POST sur la page
	{ 

$mail = $_POST['inscr_mail'];//debut de verification du mail, attribution du POST à une variable

$valeur_checkmail = $bdd->prepare('SELECT user_mail FROM user WHERE user_mail = ?') or die(print_r($bdd->errorInfo()));
$valeur_checkmail->execute(array($mail));
$valeur_checkmail_count= $valeur_checkmail->rowCount();// check si doublon

			if ($valeur_checkmail_count != 0) 
				{// si doublon positif on renvoi un message d'erreur
				echo '<p style="color:#669; font-weight:bolder" align="center"> le mail existe déjà </p><br/>'; 
				
			}
			else //mail ok
				{
				//validation du PASS.
				if(isset($_POST['inscr_pass'])) // si le pass est réçu en POST sur la page
					{ 
						$pass = $_POST['inscr_pass'];
						$pass = htmlentities($pass);
						$valeur_pass = true;
						
						if(isset($_POST['inscr_phone'])) // si le TELEPHONE d'inscription est réçu en POST sur la page
						{ 
							$phone = $_POST['inscr_phone'];//debut de verification du TELEPHONE, attribution du POST à une variable
							$valeur_checkphone = $bdd->prepare('SELECT user_phone FROM user WHERE user_phone = ?') or die(print_r($bdd->errorInfo()));
							$valeur_checkphone->execute(array($phone));
							$valeur_checkphone_count= $valeur_checkphone->rowCount();// check si doublon

							if ($valeur_checkphone_count != 0) 
							{// si doublon positif on renvoi un message d'erreur
								echo '<p style="color:#669; font-weight:bolder" align="center"> le numéro de téléphone existe déjà </p><br/>'; 
							 }
							else //telephone ok
							{
								$phone = $_POST['inscr_phone'];
								$phone = htmlentities($phone);
								$valeur_phone = true;
								
								//validationde la localisation.
								if(isset($_POST['inscr_loc'])) // si la localisation est réçu en POST sur la page
									{ 
										$loc = $_POST['inscr_loc'];//attribution du POST à une variable
										$valeur_loc = true;
										
										//insertion dans la base
										if($valeur_mail = true and $valeur_pass == true or $valeur_phone == true or $valeur_loc == true) {
											try{
												$valeur_inscr = $bdd->prepare('INSERT INTO user(user_mail, user_pass, user_phone, user_loc) VALUES(:mail, :pass, :phone, :loc)');
												$valeur_inscr->execute(array('mail' => $mail,
																			 'pass' => $pass,
																			 'phone' => $phone,
																			 'loc' => $loc,
																				));
											echo ' Bienvenue nouveau membre';
											
											}//fn du try
											
											catch (Exception $con_e) {
												
												die('Erreur : '.$con_e->getMessage());
												 }//fin du catch
											
											} 
										//fin insertion dans la base
									}
								//fin de la validation de la localisation.
								
							}
						}
						//fin du check et validation du numéro de TELEPHONE.
						
					}
				}//fin de validation du PASS.	
	}
//fin du check et validation du MAIL.

?>


le problème est qu'il n'y a pas d'écriture dans la base, ça n'affiche pas d'erreur php, par contre j'ai testé si le check des doublon fonctionnait et ça marche, maintenant pourquoi ça n'implémente pas ma base ?

pourriez vous m'éclairer svp
lundi 11 avril 2011 à 21:38:06 | Re : besoin d'aide pour organiser le code

cod57

bonsoir
as tu déjà essayé sans rien en mettent des valeurs par defaut
$pass ="kchose" ...
tu as oublié les : dans execute (array
Code PHP :
<?php
try{
$valeur_inscr = $bdd->prepare('INSERT INTO user(user_mail, user_pass, user_phone, user_loc) VALUES(:mail, :pass, :phone, :loc)');
$valeur_inscr->execute(array(':mail' => $mail,
':pass' => $pass,
':phone' => $phone,
':loc' => $loc,
));
echo ' Bienvenue nouveau membre';

}//fn du try

catch (Exception $con_e) {

die('Erreur : '.$con_e->getMessage());
}//fin du catch

}
?>
mardi 12 avril 2011 à 23:31:37 | Re : besoin d'aide pour organiser le code

ravid87

voila j'ai finalement réussis, en exportant le traitement dans un HTML de traitement

voila le code :
Code PHP :
<?php 
include('../includes/connectiondb_inc.php');
//check et validation du MAIL.
if(isset($_POST['inscr_mail']) and filter_var($_POST['inscr_mail'], FILTER_VALIDATE_EMAIL)) // si le mail d'inscription est reçu en POST sur la page
	{ 

$mail = $_POST['inscr_mail'];//debut de verification du mail, attribution du POST à une variable

$valeur_checkmail = $bdd->prepare('SELECT user_mail FROM user WHERE user_mail = ?') or die(print_r($bdd->errorInfo()));
$valeur_checkmail->execute(array($mail));
$valeur_checkmail_count= $valeur_checkmail->rowCount();// check si doublon

			if ($valeur_checkmail_count != 0) 
				{// si doublon positif on renvoi un message d'erreur
				echo '<p style="color:#669; font-weight:bolder" align="center"> le mail existe déjà </p><br/>'; 
				
			}
			else //mail ok
				{
					echo 'mail ok';
				//validation du PASS.
				if(isset($_POST['inscr_pass'])) // si le pass est réçu en POST sur la page
					{ 
						$pass = $_POST['inscr_pass'];
						$pass = htmlentities($pass);
						$valeur_pass = true;
						echo 'pass ok';
						
						//validationde la localisation.
						if(isset($_POST['inscr_loc'])) // si la localisation est réçu en POST sur la page
						{ 
							$loc = $_POST['inscr_loc'];//attribution du POST à une variable
							$loc = htmlentities($loc);
							$valeur_loc = true;
							echo 'location ok';
						
							if(isset($_POST['inscr_phone']) and (!empty($_POST['inscr_phone']))) // si le TELEPHONE d'inscription est réçu en POST sur la page
							{ 
							$phone = $_POST['inscr_phone'];//debut de verification du TELEPHONE, attribution du POST à une variable
							$valeur_checkphone = $bdd->prepare('SELECT user_phone FROM user WHERE user_phone = ?') or die(print_r($bdd->errorInfo()));
							$valeur_checkphone->execute(array($phone));
							$valeur_checkphone_count= $valeur_checkphone->rowCount();// check si doublon

								if ($valeur_checkphone_count != 0) 
								{// si doublon positif on renvoi un message d'erreur
								echo '<p style="color:#669; font-weight:bolder" align="center"> le numéro de téléphone existe déjà </p><br/>'; 
								}
								else //telephone ok
								{
								$phone = $_POST['inscr_phone'];
								$phone = htmlentities($phone);
								echo 'telephone ok';
								//insertion dans la base si téléphone existe
								if($valeur_mail == true and $valeur_pass == true or $valeur_loc == true) 
								{
									try
									{
									$valeur_inscr = $bdd->prepare('INSERT INTO user(user_mail, user_pass, user_phone, user_loc) VALUES(:mail, :pass, :phone, :loc)');
									$valeur_inscr->execute(array('mail' => $mail,
																 'pass' => $pass,
																 'phone' => $phone,
																 'loc' => $loc,
																));
											echo ' Bienvenue nouveau membre';
											
									}//fn du try
											
									catch (Exception $con_e) 
									{
												
												die('Erreur : '.$con_e->getMessage());
									}//fin du catch
								} 
										
								}//fin insertion dans la base si téléphone ok						
							}//fin du check et validation du numéro de TELEPHONE.
							
							if (isset($_POST['inscr_phone']) and (empty($_POST['inscr_phone']))) 
							{//insertion dans la base si téléphone inexistant
								if($valeur_mail == true and $valeur_pass == true or $valeur_loc == true) 
								{
									try
									{
									$valeur_inscr = $bdd->prepare('INSERT INTO user(user_mail, user_pass, user_phone, user_loc) VALUES(:mail, :pass, :loc)');
									$valeur_inscr->execute(array('mail' => $mail,
																 'pass' => $pass,
																 'loc' => $loc,
																));
											echo ' Bienvenue nouveau membre noublier pas de fournir un numéro de tél si vous voulez recevoir les deals par sms';
											
									}//fn du try
											
									catch (Exception $con_e) 
									{
												
												die('Erreur : '.$con_e->getMessage());
									}//fin du catch
								} 
										
							}//fin insertion dans la base si téléphone inexistant
						}//fin de la validation de la localisation	
					}//fin de validation du PASS.	
				}//fin du check et validation du MAIL.
	}	



?>


Cette discussion est classée dans : mail, valeur, user, post, phone


Répondre à ce message

Sujets en rapport avec ce message

Rajouté des fichiers joints avec l'envoi d'un Email. [ par dypsis66 ] Bonjour à tous! Je suis une novice en php et je suis en train de créer pour une entreprise un site internet. J'ai creer un formulaire de contact ou le SCRIPT PAYPAL IPN [ par cantador ] Bonsoir, Un souci avec ce script qui ne m'envoie pas de mail... [code=php] $value) { $value = urlencode(stripslashes($value)); $req .= "&$key=$valu envoi de mail [ par msi079 ] salut j'ai un problème d'envoi de mail. j'ai crée un code pour l'imputation de courrier aux agents de mon ministère. alors je voudrais que dès qu'on e Formulaire et envoi de mail [ par Becca ] Bonjour, j'ai un petit problème avec le formulaire. En fait quand les personnes remplissent le formulaire je voudrais recevoir par mail leur réponse. erreur d'envoi d'email de confirmation [ par box207 ] Bonjour a tous J’ai un problème d’envoi d’email de confirmation a partir de mon site d’annonce j’ai fait un essaye par ex : je dépose une annonce il pobléme d'insertion à la base de données [ par joujma5 ] bonsoir, j'ai essayer de modifier un peu le script de système de commentaire jouria en essayant de récupérer un identifiant reçu à partir d'un $_GET m problement avec ma page d'incription [ par beninsta ] bonjour, je suis en bts devlopement et je doit céer un site web pour un projet. seulement voilà je n'arrive pas a coder ma page d'incription [^^sad1] PHP : Problème de retour sur formulaire [ par hakimbey ] Salut à toutes & tous Je bosse sur la page contact (de mon site) qui est presque finie, je recupère les données et j'ai mis en place un contrôle sur formulaire php [ par ainfographie ] Bonjour à tous, je viens vers vous car je désespère. J'ai créé un formulaire de contact, pour mon site, j'aimerais recevoir les infos dans ma boîte ma Impossible de rediriger une page [ par frazeks1989 ] Bonjour,J'ai un problème avec une fonction mail qui est censsé rediriger simplement vers une page(error_mail.html) au cas que tous les champs n'ont pa


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

Photothèque

A découvrir



 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 2,324 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales