我一直在收到这些错误:
Notice: Undefined variable: voornaam in C:\xampp\htdocs\rocopdracht\database.php on line 13
这是我的代码:
$con=mysqli_connect("localhost","root","","rocopdracht");
if(isset($_POST['voornaam'])){ $voornaam = $_POST['voornaam']; }
if(isset($_POST['achternaam'])){ $achternaam = $_POST['achternaam']; }
if(isset($_POST['ov_nummer'])){ $ov_nummer = $_POST['ov_nummer']; }
if(isset($_POST['wachtwoord'])){ $wachtwoord = $_POST['wachtwoord']; }
if(isset($_POST['email'])){ $email = $_POST['email']; };
if(isset($_POST['telefoon'])){ $telefoon = $_POST['telefoon']; }
mysql_query("INSERT INTO users ( voornaam, achternaam, ov_nummer, wachtwoord, email, telefoon)VALUES ('$voornaam','$achternaam','$ov_nummer','$wachtwoord'.'$email','$telefoon')");
任何解决方案?
答案 0 :(得分:4)
使用filter_input
代替isset
$voornaam=filter_input(INPUT_POST, 'voornaam');
如果未设置$voornaam
,则null
将被定义为$_POST['voornaam']
答案 1 :(得分:4)
或更短:
$voornaam = isset($_POST['voornaam']) ? $_POST['voornaam'] : "";
$achternaam = isset($_POST['achternaam']) ? $_POST['achternaam'] : "";
$ov_nummer = isset($_POST['ov_nummer']) ? $_POST['ov_nummer'] : "";
$wachtwoord = isset($_POST['wachtwoord']) ? $_POST['wachtwoord'] : "";
$email = isset($_POST['email']) ? $_POST['email'] : "";
$telefoon = isset($_POST['telefoon']) ? $_POST['telefoon'] : "";
(不需要缩进!)
答案 2 :(得分:3)
仅在设置值时才设置值。如果未设置变量,则可以将变量指定为null。
if(isset($_POST['voornaam']))
{
$voornaam = $_POST['voornaam'];
}
else
{
$voornaam = '';
}
这样你也必须对其他变量做同样的事情。
SQL中也有错误。将.
之前的$email
更改为,
。
mysql_query("INSERT INTO users ( voornaam, achternaam, ov_nummer, wachtwoord, email,
telefoon)VALUES
('$voornaam','$achternaam','$ov_nummer','$wachtwoord','$email','$telefoon')");
^
答案 3 :(得分:1)
仅当存在POST数据时才设置变量$voornaam
,因此,预先初始化所有变量,如:
$voornaam = "";
$achternaam = "";
$ov_nummer = "";
$wachtwoord = "";
$email = "";
$telefoon = "";
if(isset($_POST['voornaam'])){ $voornaam = $_POST['voornaam']; }
if(isset($_POST['achternaam'])){ $achternaam = $_POST['achternaam']; }
if(isset($_POST['ov_nummer'])){ $ov_nummer = $_POST['ov_nummer']; }
if(isset($_POST['wachtwoord'])){ $wachtwoord = $_POST['wachtwoord']; }
if(isset($_POST['email'])){ $email = $_POST['email']; };
if(isset($_POST['telefoon'])){ $telefoon = $_POST['telefoon']; }