Witam ucze sie PHP i prosiłbym o pomoc z kodem.
Po odpaleniu formularzy wszystkie dane przechodza do zmiennych i niby sie dodaja do bazy ale ostatecznie na phpmyadmin nie ma tam tych rekordow. Co może być nie tak?
I jeszcze odatkowe pytanie: Jak napisać zeby po odswiezaniu strony nie wyswietlaly mi sie komunikaty ze wszystko jest nieuzupelnione?
Z góry dzięki za pomoc ;)
<!-------------------- PHP ---------->
<?php
session_start();
$jakanazwa=$poj=$cena=$ilosc=$jakicheck=" ";
$walidacja_ok=true; //Flaga walidacyjna
$jakanazwa=$_POST['markaalko'];
$poj=$_POST['pojemnoscalko'];
$cena=$_POST['cenaalko'];
$ilosc=$_POST['iloscalko'];
//Sprawdzenie dlugosci inputu Marki
if((strlen($jakanazwa)<2)|| (strlen($jakanazwa)>10))
{
$walidacja_ok=false;
$_SESSION['e_markalko']="Marka musi posiadac od 2 do 10 znaków!";
}
//Sprawdzenie znaków alfa Marki
if(ctype_alpha($jakanazwa)==false)
{
$walidacja_ok=false;
$_SESSION['e_markalko']="Nazwa/Marka może składać się tylko z liter(bez polskich znaków) !";
}
//Sprawdzenie znaków numerycznych pojemnosci
if((ctype_digit($poj)==false)&&(ctype_digit($cena)==false)&&(ctype_digit($ilosc)==false))
{
$walidacja_ok=false;
$_SESSION['e_digit']="Pojemność/cena/ilość może składać się tylko z cyfr !";
}
//---------------Sprawdz Checkbox
//Czy zaznaczono
if(isset($_POST['checkpiwo'])||($_POST['checkwino'])||($_POST['checkwodka']))
{
//$walidacja_ok=true;
if(isset($_POST['checkpiwo']))
{
$jakicheck="Piwo";
}
if(isset($_POST['checkwino']))
{
$jakicheck="Wino";
}
if(isset($_POST['checkwodka']))
{
$jakicheck="Wodka";
}
}else
{ $walidacja_ok=false;
$_SESSION['e_checki']="Zaznacz typ alkoholu!";
}
require_once "dbconnect.php";
mysqli_report(MYSQLI_REPORT_STRICT);
try
{
$polaczenie = new mysqli($host,$db_user,$db_password,$db_name);
if($polaczenie->connect_errno!=0)
{
throw new Exception(mysqli_connect_errno());
}
else//Dodawanie produktu
{
echo $jakanazwa;
echo $jakicheck;
echo $poj;
echo $cena;
echo $ilosc;
if($walidacja_ok==true)
{
if($sql=("INSERT INTO uzytkownicy (Marka,Typ,Pojemnosc,Cena,ilosc)VALUES ('$jakanazwa','$jakicheck','$poj','$cena','$ilosc)"))
// (Marka,Pojemnosc,Cena,ilosc)
{
$_SESSION['e_dodanodobazy']="Dodano do bazy!";
}
else
{
throw new Exception ($polaczenie->error);
}
// $sql = "INSERT INTO alkohole (Marka,Pojemnosc,Cena,Ilosc)
// VALUES (NULL, '$jakanazwa', '$poj', '$cena', '$ilosc')";
// $_SESSION['e_dodanodobazy']="Dodano do bazy!";
//}
$polaczenie->close();
}
}
}
catch(Exception $e)
{
echo '<div class=error>Błąd serwera! Przepraszamy za niedogodności </div>';
echo'<br/>Informacja developerska: '.$e; //info developerskie
}
?>
<!DOCTYPE html>
<html lang="pl">
<head>
<meta charset="UTF-8">
<title>Sklep-Dodaj do bazy</title>
<link rel="stylesheet" href="style.css">
<meta name="viewport" content="width=device-width, user-scalable=no, initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0">
<link href="https://fonts.googleapis.com/css?family=PT+Serif:400,700&subset=latin-ext" rel="stylesheet">
<link href="https://fonts.googleapis.com/css?family=Amatic+SC:400,700&subset=latin-ext" rel="stylesheet">
<link href="https://fonts.googleapis.com/css?family=Righteous&subset=latin-ext" rel="stylesheet">
<link href="https://fonts.googleapis.com/css?family=PT+Sans" rel="stylesheet">
</head>
<body>
<div id="container">
<div id="top"><a class="linktop" href="index.php">BAZA ALKOHOLI</a></div>
<form method="post">
<span id="wybierzopcje">Uzupełnij dane:</span>
<br/><br/>
<span id="checkboxy">
Piwo:
<input type="checkbox" name="checkpiwo" /> Wino:
<input type="checkbox" name="checkwino" /> Wódka:
<input type="checkbox" name="checkwodka" />
<?php
if(isset($_SESSION['e_checki']))
{
echo '<div class="error">'.$_SESSION['e_checki'].'</div>';
unset($_SESSION['e_checki']);
}
?>
</span>
<br/><br/>
<div id="gdzieinputy">
<span class="textinput">Podaj markę / nazwę</span>
<br/>
<input type="text" name="markaalko" required/>
<?php
if(isset($_SESSION['e_markalko']))
{
echo '<div class="error">'.$_SESSION['e_markalko'].'</div>';
unset($_SESSION['e_markalko']);
}
?>
<br/><br/>
<span class="textinput">Podaj Pojemność</span>
<br/>
<input type="number_format" name="pojemnoscalko" required/>
<br/><br/>
<span class="textinput">Podaj Cenę</span>
<br/>
<input type="number_format" name="cenaalko" required/>
<br/><br/>
<span class="textinput">Podaj Ilość</span>
<br/>
<input type="number_format" name="iloscalko" required/>
<?php
if(isset($_SESSION['e_digit']))
{
echo '<div class="error">'.$_SESSION['e_digit'].'</div>';
unset($_SESSION['e_digit']);
//do visability
}
?>
<input type="submit" value="Dodaj do bazy" id="p_Dodajalkoholsubmit" />
<?php
if(isset($_SESSION['e_dodanodobazy']))
{
echo '<div class="dodano">'.$_SESSION['e_dodanodobazy'].'</div>';
unset($_SESSION['e_dodanodobazy']);
}
?>
</div>
</form>
</div>
</body>
</html>