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 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150
| <?php session_start();
include("includes/identifiants.php");
include("includes/debut.php");
require_once('item.php');
include("menu.php");
include("header.php");
?>
<?php
/*Port des objets contenant les variables de la commande*/
$cart = unserialize(serialize($_SESSION['cart']));
$sum_line = 0;
$id=0;
for ($i=0; $i<count($cart); $i++){
$id = $id+1;
$code = $cart[$i]->code_produit;
$qty = $cart[$i]->qty;
$sum_line += $cart[$i]->prix_produit * $cart[$i]->qty;
}
?>
<body>
<?php
if (empty($_POST['email_adress'])) /*Cette vérification supp c'est pour vérifier si nous
sommes ds le cadre de l'affichage du formulaire ou bien celui du traitement*/
{
?>
<div class ="form_cus">
<h2>Please Leave Your Informations Here!</h2>
<form method="POST" action="form_customer.php">
<input type ="text" placeholder ="Please Enter Your Name..." name="nom"><br/><br/>
<input type="text" placeholder ="Please Enter Your Surname..." name="surname"><br/><br/>
<input type ="text" placeholder ="Please Enter Your Town..." name="town"><br/><br/>
<input type="text" placeholder ="Please Enter Your Country..." name="country"><br/><br/>
<input type="text" placeholder ="Please Enter Your Phone Number..." name="phone"><br/><br/>
<input type ="mail" placeholder ="Please Enter Your Email Adress..." name="email_adress"><br/><br/>
<button class="btn btn-lg btn-success" type="submit" name ="send">
<span class="glyphicon glyphicon-ok-sign"></span> Login </button>
<button class="btn btn-lg btn-danger" type="reset" name ="reset">
<span class="glyphicon glyphicon-remove"></span> Reset </button>
</form>
</div>
<?php
}
else
{
if (isset($_POST['send'])){
$email_erreur1 = NULL;
$email_erreur2 = NULL;
//On récupère les variables
$i = 0; //son rôle est de stocker le nombre d'erreurs.
$name = trim($_POST['nom']);
$surname = trim ($_POST['surname']);
$town = ($_POST['town']);
$country = ($_POST['country']);
$phone = ($_POST['phone']);
$email = ($_POST['email_adress']);
?>
<?php
//Vérification de l'adresse email
//Il faut que l'adresse email n'ait jamais été utilisée
$query=$bdd->prepare('SELECT COUNT(*) AS nbr FROM customer WHERE Email =:mail');
$query->bindValue(':mail',$email, PDO::PARAM_STR);
$query->execute();
$mail_free=($query->fetchColumn()==0)?1:0;//on fait juste pareil vérifications que pour le pseudo
$query->CloseCursor();
if(!$mail_free)
{
$email_erreur1 = "Votre adresse email est déjà utilisée par un client";
$i++;
}
//On vérifie la forme maintenant (les expréssions régulières : regex)
if (!preg_match("#^[a-zA-Z0-9._-]+@[a-zA-Z0-9._-]{2,}\.[a-z]{2,4}$#", $email) || empty($email))
{
$email_erreur2 = "Votre adresse E-Mail n'a pas un format valide";
$i++;
}
?>
<?php
if ($i==0) //notre var de nbre d'erreurs n'a rien enregistrer, alors tt s'est bn passé.
{
$row = null;
$req = $bdd->prepare("INSERT INTO customer (Name, Surname, Phone, Town, Country, Email)
VALUES(?, ?, ?, ?, ?, ?");
$row = $req->execute(array($name, $surname, $phone, $town, $country, $email));
//Et on définit les variables de sessions
$_SESSION['nom'] = $name;
$_SESSION['surname'] = $surname;
?>
<?php
/* ici, j'insère le client dans la table commande*/
$req = $bdd->prepare('SELECT Id_customer from customer')or die(print_r( $bdd->errorInfo()));
$req->execute(array());
while ($donnees = $req->fetch())
{
$id_cus = $donnees['Id_customer'];
}
/*j'insère cette id ds la table command*/
$row = null;
$req = $bdd->prepare("INSERT INTO command (Id_customer, Date_command)
VALUES(?, NOW()");
$row = $req->execute(array($id_cus));
?>
<?php
/* on insère ensuite la command dans ligne_commande*/
$req = $bdd->prepare('SELECT Id_command from command')or die(print_r( $bdd->errorInfo()));
$req->execute(array());
while ($donnees = $req->fetch())
{
$id_com = $donnees['Id_command'];
}
/*j'insère ici dans la table ligne_commande*/
for ($i=0; $i<count($cart); $i++){
$row = null;
$req = $bdd->prepare("INSERT INTO ligne_command (Id_command,
code_produit, Price_line, Quantity)
VALUES(?, ?, ?, ?");
$row = $req->execute(array($id_com, $code, $sum_line, $qty));
}
//Fin des traitements
$query->CloseCursor();
header('location:treat_cart.php');
echo "enregistrement bien effectué!";
}
else
{
echo'<h1>Envoi interrompu</h1>';
echo'<p>Une ou plusieurs erreurs se sont produites pendant l\'inscription</p>';
echo'<p>'.$email_erreur1.'</p>';
echo'<p>'.$email_erreur2.'</p>';
echo'<p>Cliquez <a href="./form_customer.php"> ICI </a> pour recommencer</p>';
}
}
}
?>
</body>
</html> |
Partager