Herkese merhaba. Ben bir proje üzerinde çalışıyorum ancak php ile bir problem yaşandı. Şu anda bir quiz app yapıyorum ve siteye girince, önünüze form çıkıyor ve formu doldurmadan quiz başlamasın istiyorum. Şimdi yapmak istediğim, kullanıcı formda bir inputu boş bırakırsa, hiç bir yere postlanmasın ve error mesajı versin. Ancak eğer her birini doldurursa o zaman quiz app e postlansın. Unutulmamalıdır ki bu quiz e dışarıdan erişim sağlanmamalıdır, sadece formu dolduranlar gire bilmelidir. Koddan bir kesinti aldım ve şu şekilde:
I want my PHP file not to post to the website which I wrote in action. How can I post the site if all the inputs are filled?
My index.php
<!doctype html>
<html lang="en">
<head>
<meta charset="utf-8">
<title>Form Validation</title>
<meta name="description" content="The HTML5 Herald">
<meta name="author" content="SitePoint">
<style>
#inp1{
margin-bottom: 3px;
}
#first{
margin-bottom: 20px;
}
#second{
margin-bottom: 10px;
}
</style>
</head>
<body>
<section>
<h1>Php Form Validation</h1>
<div>
<form action="post.php" method="post">
<div id="first">
Name: <input type="text" name="name" id="inp1" autocomplete="off"><br>
Email: <input type="text" name="email" id="inp1" autocapitalize="off"><br>
Password: <input type="password" name="pwd" id="inp1"><br>
Repeat Passowrd: <input type="password" name="pwdrepeat">
</div>
<div id="second">
Gender:
<input type="radio" name="gender" value="female">Female
<input type="radio" name="gender" value="male">Male
<input type="radio" name="gender" value="other">Other
</div>
<button type="submit" name="submit">Submit</button>
<?php
if (isset($_POST['submit'])){
$name = $_POST['name'];
$email = $_POST['email'];
$password = $_POST['pwd'];
$passwordRe = $_POST['pwdrepeat'];
$gender = $_POST['gender'];
if (!empty($name) && !empty($email) && !empty($password) && !empty($passwordRe) && !empty($gender)){
if ($password === $passwordRe){
echo "<p style='color:green;'>Successfully submitted!</p>";
}else{
echo "<p style='color: red'>Your password is not equal to the other</p>";
}
}else {
echo "<p>Please fill all the inputs</p>";
}
}
?>
</form>
</div>
</section>
</body>
Hali hazırda, inputdaki tüm değerler dolmasa da sayfaya postlanıyor, bunu nasıl çöze bilirim?