Hallo allemaal,
Momenteel heb ik een form waarmee je info kunt toevoegen aan de DB.
Tot zover werkt dit zonder problemen.
Nu wil ik graag een stap verder gaan en dat is form validatie toepassen.
Via de website http://www.tutorialspoint.com/php/php_validation_example.htm heb ik een voorbeeld gevonden waarmee form validatie kan toegepast worden.
Het form validatie werkt als volgt:
Op de insert.php pagina voer ik wat gegevens in. Wanneer de input van de gebruiker door de form validatie komt, dan vang ik alle input van de gebruiker op de pagina insert_proces.php. Via dit pagina heb ik een insert sql commando, die de input in de DB opslaat.
En wanneer ik een validatie toepas, dan krijg ik allemaal Notice: Undefined variable foutmeldingen op de insert_proces.php pagina. Vervolgens wordt er een leeg record toegevoegd aan de DB.
foutmelding:
Notice: Undefined variable: first in C:\xampp\htdocs\employees_CRUD\insert_process.php on line 26
Notice: Undefined variable: lastname in C:\xampp\htdocs\employees_CRUD\insert_process.php on line 27
Notice: Undefined variable: department in C:\xampp\htdocs\employees_CRUD\insert_process.php on line 28
Notice: Undefined variable: position in C:\xampp\htdocs\employees_CRUD\insert_process.php on line 29
Notice: Undefined variable: salary in C:\xampp\htdocs\employees_CRUD\insert_process.php on line 30
Notice: Undefined variable: startdate in C:\xampp\htdocs\employees_CRUD\insert_process.php on line 31
Notice: Undefined variable: first in C:\xampp\htdocs\employees_CRUD\insert_process.php on line 35
successfully loaded to the database
Go back to main page
code van insert.php pagina:
<?php
function test_input($data) {
$data = trim($data);
$data = stripslashes($data);
$data = htmlspecialchars($data);
return $data;
}
// define variables and set to empty values
$firstnameErr = $lastnameErr = $positionErr = $salaryErr = $startdateErr ="";
$firstnamename = $lastname = $position = $salary = $startdate = "";
if ($_SERVER["REQUEST_METHOD"] == "POST") {
if (empty($_POST["firstname"])) {
$firstnameErr = "Name is required";
}else {
$firstname = test_input($_POST["firstname"]);
}
if (empty($_POST["lastname"])) {
$lastnameErr = "Lastname is required";
}else {
$lastname = test_input($_POST["email"]);
}
if (empty($_POST["position"])) {
$positionErr = "Position must be filled in";
}
else {
$position = test_input($_POST["position"]);
}
if (empty($_POST["salary"])) {
$salaryErr = "salary must be filled in";
}else {
$salary = test_input($_POST["salary"]);
}
if (empty($_POST["startdate"])) {
$startdateErr = "startdate is required";
}else {
$startdate = test_input($_POST["startdate"]);
}
if(count ($firstnameErr, $lastnameErr, $positionErr, $salaryErr, $startdateErr) == 0) {
header ("Location: insert_process.php");
exit();
}
}
?>
code van insert_proces.php pagina
<?php
require_once("inc/db-config.php");
if(isset($_POST['firstname'])) {
$first = $_POST['firstname'];
}
if(isset($_POST['lastname'])) {
$lastname = $_POST['lastname'];
}
if(isset($_POST['department'])) {
$department = $_POST['department'];
}
if(isset($_POST['position'])) {
$position = $_POST['position'];
}
if(isset($_POST['salary'])) {
$salary = $_POST['salary'];
}
if(isset($_POST['startdate'])) {
$startdate = $_POST['startdate'];
}
$sql = "INSERT INTO employees VALUES (
'',
'" . $first . "',
'" . $lastname . "',
'" . $department . "',
'" . $position . "',
'" . $salary . "',
'" . $startdate . "',
NOW()
)";
mysql_query($sql);
echo $first . " successfully loaded to the database";
echo "<br /> Go back to <a href='inventory.php'>main page</a>";
mysql_close($connection);
?>
Wat is jullie feedback hierop?
Alvast bedankt!
Helaas krijg ik allemaal
4.380 views