Dopiero uczę się PHP i mam pewien problem. W mojej funkcji służącej do rejestracji nowego usera (i oczywiście dodawania go do bazy danych) chciałem użyć fukcji "prepare". Przykładowa tabela "user" zawiera pola "UserId, FirstName, LastName, Email, Password"
Poniżej przedstawiam fragmenty mojego kodu:
function registerUser($FirstName, $LastName, $Email, $Password) { if($stmt = $MO->Database->prepare("INSERT INTO user ('FirstName','LastName','Email','Password') VALUES (?,?,?,?)")) { $stmt->bind_param('ssss', $FirstName, $LastName, $Email, $Password); $stmt->execute(); $stmt->store_result(); if($stmt->num_rows > 0) { $stmt->close(); return TRUE; } else { $stmt->close(); return FALSE; } } else { } }
Do połączenia z baza uzywam:
$serwer = 'localhost'; $user = 'root'; $pass = ''; $db = 'newDB'; $MO = new MO_Core($serwer, $user, $pass, $db);
oraz w klasie MO_Core poprzez konstruktor wywoluje:
class MO_Core{ function __construct($serwer, $user, $pass, $db) { $this->Database = new mysqli($serwer, $user, $pass, $db); $this->Database->set_charset('utf8'); ...}
I teraz mam problem, bo powyższa fukcja nie działa tak jak powinna, nie zapisuje danych do bazy.
Jak to rozwiązać?
Problem może tkwi w jakimś szczególe, ale uczę się dopiero i nie wiem jak sobie z tym poradzić