0
以下代碼僅將數據插入到「email」和「password」字段,並將0插入角色(這很好)。名字和姓氏字段爲空。我無法弄清楚爲什麼。PDO插入僅插入一些數據
我的DB有:身份證,FNAME,LNAME,電子郵件,角色,密碼
我已經嘗試了許多不同的解決方案,並已敲我的頭撞在牆上。我能夠弄清楚$ fname和$ lname似乎沒有綁定或插入,但是如果我在腳本的頂部回顯它們,它們就會被識別出來。
<?
require_once('connection.php');
if (isset($_POST['submit'])) {
$errMsg = '';
//username and password sent from Form
$email = trim($_POST['email']);
$password = trim($_POST['password']);
$fname = trim($_POST['fname']);
$lname = trim($_POST['lname']);
if ($email == '' or $password == '' or $email == '' or $fname = '' or $lname = '')
$errMsg = 'All Fields Are Required.<br>';
if ($errMsg == '') {
$sql = "SELECT COUNT(email) AS num FROM users WHERE email = :email";
$stmt = $databaseConnection->prepare($sql);
$stmt->bindValue(':email', $email);
$stmt->execute();
$row = $stmt->fetch(PDO::FETCH_ASSOC);
if ($row['num'] > 0) {
die('That email address already exists! <a href=\"register.php\">Please try again.</a>');
}
$passwordHash = password_hash($password, PASSWORD_BCRYPT, array("cost" => 12));
$stmt = $databaseConnection->prepare("INSERT INTO users (fname, lname, email, password) VALUES (:fname, :lname, :email, :password)");
$stmt->bindValue(':fname', $fname);
$stmt->bindValue(':lname', $lname);
$stmt->bindValue(':email', $email);
$stmt->bindValue(':password', $passwordHash);
$result = $stmt->execute();
if ($result) {
header('Location:index.php');
echo 'User created. Please log in.';
die();
}
}
}
?>
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>Test Register</title>
</head>
<body>
<div align="center">
<div style="width:300px; border: solid 1px #006D9C; " align="left">
<?php
if (isset($errMsg)) {
echo '<div style="color:#FF0000;text-align:center;font- size:12px;">'.$errMsg.'</div>';
}
?>
<div style="background-color:#006D9C; color:#FFFFFF; padding:3px;"><b>Register</b></div>
<div style="margin:30px">
<form action="" method="post">
<label>First Name :</label><input type="text" name="fname" class="box"/><br /><br />
<label>Last Name :</label><input type="text" name="lname" class="box"/><br /><br />
<label>Email :</label><input type="email" name="email" class="box"/><br /><br />
<label>Password :</label><input type="password" name="password" class="box" /><br/><br />
<input type="submit" name='submit' value="Submit" class='submit'/><br />
</form>
</div>
</div>
</div>
</body>
</html>
哇......我不能告訴你我有多愚蠢。這讓我非常沮喪,大概一個小時。感謝您的幫助。 –
不用擔心。它發生了:) – satroy