我正在构建一个注册页面,用于添加用户更新其详细信息以及将其记录到日志中。我正在使用OOP样式来执行此操作。我一直在进行屏幕播放,但决定一路走下去。 我遇到的问题是我无法注册任何用户,我不确定为什么不将它们添加到数据库中。这里是我的代码:通过OOP和Mysql进行用户注册
database.php中
<?php
equire 'includes/config.php';
class Database {
private $conn;
function __construct() {
$this->conn = new mysqli(DB_SERVER,DB_USER,DB_PASSWORD,DB_NAME) or die(mysqli_error()) ;
}
function addUser() {
$query =
"INSERT INTO users VALUES(?,?,?,?,?,?,?)";
if ($stmt = $this->conn->prepare($query)) {
$stmt->bind_param('sssssss');
$stmt->execute();
}
}
在我的科技教育类的用户我有以下几点:
SITE_USERS.PHP
require 'Database.php';
class siteRegisters {
function register_users($data) {
$mysql = new Database();
$ensure_registration = $mysql->addUser($data);
if ($ensure_registration) {
$_SESSION['status'] = 'authorised';
header("location: admin.php");
}else return "You could not be registered!";
}
每次我尝试为广告新用户,我总是会收到“您无法注册!”的错误消息 我的表单看起来像这样:
session_start();
require_once 'classes/siteUsers.php';
$registeres = new siteRegisters();
if ($_POST &&
!empty($_POST['name']) && !empty($_POST['lastname']) &&
!empty($_POST['username']) && !empty($_POST['password']) &&
!empty($_POST['company']) && !empty($_POST['email']) &&
!empty($_POST['phone'])
){
$response = $registeres->register_users($data);
}
?>
<form action="" method="post" />
<fieldset>
<?php
if (isset($response)) echo "<h4 class'alert'>". $response ."</h4>";
?>
<dl>
<dt><label for="name">Name:</label></dt>
<dd><input type="text" name="name" size="32" title="Please fill in your Name" /></dd>
//And so on
任何有帮助的意见?请 ?我
我只是试图做你的建议现在,我仍然无法注册任何人。我不应该使用函数addUser($ name,$ lastneme ...)作为接受的值吗?我根据问题 – Anele 2012-04-02 14:59:47
@Anele调整了我的数据库:现在'addUser'没有'$ data'参数。补充一点。 – Ryan 2012-04-02 18:30:14