Tu był pies pogrzebany. Dodałem slesha i śmiga, ale zainteresowałem się tym PDO(z racji tego, że uczę się PHP OOP) i coś znów nie działa. Oto kod:
Klasa
<?php
/*
*=======================
* REGISTRATION CLASS !
* ======================
*/
include_once '/../core/registration.php';
include_once '/../core/db_connect.php';
class registration {
private $db;
function __construct() { /* Połączenie z bazą */
$this->db = new db_connect();
$this->db = $this->db->db_connect();
} /* Koniec połączenia */
function registration($username, $password1, $password2, $email, $date) {
if(!empty($username) && !empty($password1) && !empty($password2) && !empty($email)) {
$q = $this->db->prepare("INSERT INTO users(username, password, email, date, logged, admin) VALUES (?, ?, ?, ?, ?, ?)");
$q->bindParam(1, $username);
$q->bindParam(2, $password1);
$q->bindParam(3, $email);
$q->bindParam(4, $date);
$q->bindParam(5, '0');
$q->bindParam(6, '0');
$q->execute();
}
}
}
?>
Kod wywoływany po kliknięciu “zarejestruj”:
<?php
/*
*======================
* REGISTRATION CORE !
* =====================
*/
include_once '/../classes/registration.php';
if(isset($_POST['regUser'])) {
$username = $_POST['regUsername'];
$pass1 = $_POST['regPassword1'];
$pass2 = $_POST['regPassword2'];
$email = $_POST['regEmail'];
$date = date("Y-m-d H:i:s");
$obj = new registration();
$obj->registration($username, $password1, $password2, $email, $date);
}
?>
i połączenie(tak dla pewności):
<?php
class db_connect {
function db_connect() {
return new PDO("mysql:host=127.0.0.1; dbname=oop", "root", "");
}
}
?>
No i to w ogóle nie działa, ale to może spowodowane jakimś błędem, ponieważ teraz to eksperymentuje. Tak poza tym to nic w przeglądarce nie wyświetla tzn. żadnych błędów.