Witam, na samym poczatku chciałbym poinformować że przegladałem forum i znalazłem bardzo dużo informacji, ale niestety nie potrafiłem ich wykorzystać w swoim formularzu.
A więc mój problem wyglada następująco. Mam zrobiony koszyk, z którego mam możliwość składania zamówienia. Zamówienie zrobiłem na dwa sposoby. Jak użytkownik jest zalogowany to dane do formularza są wstawiane automatycznie i użytkownik nie ma mozliwości edycji, więc tutaj nie potrzebuje sprawdzania danych. I drugi sposób: Jak użytkownik nie jest zalogowany to dane do zamówienia trzeba wprowadzać z palca i tutaj walidacja danych jest bardzo potrzebna, szczególnie email, ponieważ na adres mailowy jest wysyłana wiadomość dotycząca zamówienia.
Oto kod od zamówienia.:
.....
if(isset($_SESSION['login'])) {
<style type=\"text/css\">
tr:nth-child(odd) {background-color:#2b5584;}
tr:nth-child(even) {background-color:#eef2f6;}
</style>
<p><form action=\"?dzial=zamowienie_zatwierdzenie\" method=\"get\"><table border=\"1\" class=\"m-tabela\" width=\"100%\">
<input type=\"hidden\" name=\"dzial\" value=\"zamowienie_zatwierdzenie\" />
<input type=\"hidden\" name=\"imie\" value=\"".$_SESSION['imie']."\">
<input type=\"hidden\" name=\"mail\" value=\"".$_SESSION['mail']."\">
<input type=\"hidden\" name=\"nazwisko\" value=\"".$_SESSION['nazwisko']."\">
<input type=\"hidden\" name=\"adres\" value=\"".$_SESSION['adres']."\">
<input type=\"hidden\" name=\"kontakt\" value=\"".$_SESSION['kontakt']."\">
<input type=\"hidden\" name=\"pr1\" value=\"".$towary[0]."\">
<input type=\"hidden\" name=\"pr2\" value=\"".$towary[1]."\">
<input type=\"hidden\" name=\"pr3\" value=\"".$towary[2]."\">
<input type=\"hidden\" name=\"pr4\" value=\"".$towary[3]."\">
<input type=\"hidden\" name=\"pr5\" value=\"".$towary[4]."\">
<input type=\"hidden\" name=\"pr6\" value=\"".$towary[5]."\">
<input type=\"hidden\" name=\"cena\" value=\"".$suma."\">
<tr><td width=\"10%\">Imię:</td><td>".$_SESSION['imie']."</td></tr>
<tr><td>Nazwisko:</td><td>".$_SESSION['nazwisko']."</td></tr>
<tr><td>Adres:</td><td>".$_SESSION['adres']."</td></tr>
<tr><td>Kontakt:</td><td>".$_SESSION['kontakt']."</td></tr>
<tr><td>Mail:</td><td>".$_SESSION['mail']."</td></tr>
<tr><td></td><td><input type=\"submit\" class=\"m-idz\" value=\"Zamów\" />
</form>
</table></p>
";
}
else{
<style type=\"text/css\">
tr:nth-child(odd) {background-color:#2b5584;}
tr:nth-child(even) {background-color:#eef2f6;}
</style>
<p><form action=\"?dzial=zamowienie_zatwierdzenie\" method=\"post\"><table border=\"1\" class=\"m-tabela\" width=\"100%\">
<input type=\"hidden\" name=\"dzial\" value=\"zamowienie_zatwierdzenie\" />
<input type=\"hidden\" name=\"pr1\" value=\"".$towary[0]."\">
<input type=\"hidden\" name=\"pr2\" value=\"".$towary[1]."\">
<input type=\"hidden\" name=\"pr3\" value=\"".$towary[2]."\">
<input type=\"hidden\" name=\"pr4\" value=\"".$towary[3]."\">
<input type=\"hidden\" name=\"pr5\" value=\"".$towary[4]."\">
<input type=\"hidden\" name=\"pr6\" value=\"".$towary[5]."\">
<input type=\"hidden\" name=\"cena\" value=\"".$suma."\">
<tr><td width=\"10%\">Imię:</td><td><input type=\"text\" name=\"imie\" value=\"\"></td></tr>
<tr><td>Nazwisko:</td><td><input type=\"text\" name=\"nazwisko\" value=\"\"></td></tr>
<tr><td>Adres:</td><td><input type=\"text\" name=\"adres\" value=\"\"></td></tr>
<tr><td>Kontakt:</td><td><input type=\"text\" name=\"kontakt\" value=\"\"></td></tr>
<tr><td>Mail:</td><td><input type=\"text\" name=\"mail\" value=\"\"></td></tr>
<tr><td></td><td><input type=\"submit\" class=\"m-idz\" name=\"gotowe\" value=\"Zamów\" />
</form>
</table></p>";
}
A to skrypt do którego leci zamówienie.
$imie = $_GET['imie'];
$nazwisko = $_GET['nazwisko'];
$adres = $_GET['adres'];
$kontakt = $_GET['kontakt'];
$email = $_GET['mail'];
$pr1 = $_GET['pr1'];
$pr2 = $_GET['pr2'];
$pr3 = $_GET['pr3'];
$pr4 = $_GET['pr4'];
$pr5 = $_GET['pr5'];
$pr6 = $_GET['pr6'];
$cena = $_GET['cena'];
$zapytanie1="INSERT INTO `zamowienie` (`imie`,`nazwisko`,`adres`,`telefon`,`cena`,`produkt1`,`produkt2`,`produkt3`
,`produkt4`,`produkt5`,`produkt6`,`zaplata`) VALUES ('$imie','$nazwisko','$adres','$kontakt','$cena','$pr1','$pr2','$pr3','$pr4','$pr5','$pr6','NIE')";
echo('Zamówienie zostało złożone'); // Wysyłanie maila do zamawiącego
include("phpmailer/class.phpmailer.php");
include("phpmailer/class.smtp.php");
$mail = new PHPMailer();
$mail->IsSMTP();
$mail->SMTPAuth = true; // enable SMTP authentication
$mail->SMTPSecure = "ssl"; // sets the prefix to the servier
$mail->Host = "smtp.gmail.com"; // sets GMAIL as the SMTP server
$mail->Port = 465; // set the SMTP port
$mail->Username = "kontodopracydyplomowej@gmail.com"; // GMAIL username
$mail->Password = "*****"; // GMAIL password
$mail->From = "kontodopracydyplomowej@gmail.com";
$mail->FromName = "";
$mail->Subject = "Zamówienie";
$mail->AltBody = ""; //Text Body
$mail->WordWrap = 50; // set word wrap
$text_body = "Witam\n\n";
$text_body .= "Drogi użytkowniku, złożyłeś zamówienie na nastepujące produkty:\n\n";
$text_body .= "".$pr1."\n\n";
$text_body .= "".$pr2."\n\n";
$text_body .= "".$cena."\n\n";
$mail->Body = $text_body;
$mail->AddAddress($email);
if(!$mail->Send()) {
echo "Mailer Error: " . $mail->ErrorInfo; } else {
echo "Message has been sent"; }
unset($_SESSION["koszyk"]); header("Refresh:3; url=?dzial=main");
Wiem, że taki temat był poruszany nie pierwszy raz ale nie potrafie przełożyć tamtych rozwiązań na mój problem. Dziękuje za pomoc. Pozdrawiam