Ich baue eine Registrierungsseite für das Hinzufügen von Benutzern, die ihre Details aktualisieren und sie auch anmeldet. Ich verwende OOP-Stil, um dies zu tun. Ich folgte einem Screen-Cast, entschied mich aber den ganzen Weg zu gehen. Das Problem, das ich habe, ist, dass ich keinen Benutzer registrieren kann und ich bin mir nicht sicher, warum es sie nicht zur Datenbank hinzufügt. Hier ist mein Code:Benutzerregistrierung über OOP und 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();
}
}
Auf meiner Ste Benutzer Klasse habe ich die folgenden:
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!";
}
jedes Mal wenn ich versuche um einen neuen Nutzer anzuwerben bekomme ich immer den Fehler "Sie konnten nicht registriert werden!" Meine Form sieht wie folgt aus:
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
jede hilfreiche Ideen? Bitte ? Ich
ich Ihr gerade versucht, übergeben wollen tun Vorschlag jetzt und ich kann noch niemanden registrieren. soll ich nicht die Funktion addUser ($ name, $ lastneme ...) als Zeichen verwenden um akzeptiert zu werden? Ich habe meine Datenbank entsprechend angepasst, siehe Frage – Anele
@Anele: Jetzt hat 'addUser' keinen' $ data' Parameter. Fügen Sie das hinzu. – Ryan