<?php
class RegisterUser{
var $email;
var $password;
var $password_hash;
var $roleid;
public function __construct($email, $password, $roleid){
$this->email = $email;
$this->password = $password;
$this->roleid = $roleid;
$this->addUsertoDB();
}
public function addUsertoDB(){
$this->password_hash = md5($this->password);
$checkemail = mysql_query("SELECT * FROM users WHERE (email ='" . mysql_real_escape_string($this->email) . "')");
if(mysql_num_rows($checkemail) == 1){
echo '<script type="text/javascript"> alert ("Email already used!");</script>';
}
else{
$register = "INSERT INTO users(email, password, roleid) VALUES('$this->email', '$this->password_hash', '$this->$roleid')";
if($query_run = mysql_query($register)){
echo('<scrip type="text/javascript"> alert("Registration complete!"); location.replace("login")</script>');
}
else{
die('<script type="text/javascript"> alert("Error inserting data!");</script>');
}
}
}
}
$connect = new RegisterUser('carloadap@htomail.com', 123, 1);
?>
これは私のコードです。エラーが発生し続けます。解決方法がわかりません。皆さんがそうしてくれたことを願っています。
これがエラーです。
警告: mysql_num_rows() は、パラメーター 1 がリソースであると想定します。17 行目の C:\xampp\htdocs\myPHPWebsite\include\classRegister.php で指定されたブール値です。
キャッチ可能な致命的なエラー: C:\xampp\htdocs\myPHPWebsite\include\classRegister.php の 21 行目でクラス RegisterUser のオブジェクトを文字列に変換できませんでした
更新しました
<?php
require 'connectDB.php';
class RegisterUser{
var $email;
var $password;
var $password_hash;
var $roleid;
public function __construct($email, $password, $roleid){
$this->email = $email;
$this->password = $password;
$this->roleid = $roleid;
$this->addUsertoDB();
}
public function addUsertoDB(){
$this->password_hash = md5($this->password);
$checkemail = mysql_query("SELECT * FROM users WHERE (email ='" . mysql_real_escape_string($this->email) . "')");
if(mysql_num_rows($checkemail) == 1){
echo '<script type="text/javascript"> alert ("Email already used!");</script>';
}
else{
$register = "INSERT INTO users(email, password, roleid) VALUES('$this->email', '$this->password_hash', '$this->$roleid')";
if($query_run = mysql_query($register)){
echo('<scrip type="text/javascript"> alert("Registration complete!"); location.replace("login")</script>');
}
else{
die('<script type="text/javascript"> alert("Error inserting data!");</script>');
}
}
}
}
$connect = new RegisterUser('carloadap@htomail.com', 123, 1);
?>
これは私が得るエラーです
データベースに接続しました! キャッチ可能な致命的なエラー: C:\xampp\htdocs\myPHPWebsite\include\classRegister.php の 22 行目でクラス RegisterUser のオブジェクトを文字列に変換できませんでした