我11岁,我正在为我和我的朋友们建立一个聊天网站。我正在使用MYSQLi来处理数据库事物,我对它有点新意。我总是使用普通的mysql。
哦!如果你可以分享一个mysqli教程的链接,那就太好了:))
这是我的配置文件
<?PHP
define("HOST", "localhost"); define("USER", "root"); define("PASSWORD", "****"); define("DATABASE", "secure_login");
$mysqli = new mysqli(HOST, USER, PASSWORD, DATABASE);
?>
数据库是secure_login,然后我有一个名为members的表,然后是该表中名为email的列。
我将其包含在文件(register.php)中,我必须检查电子邮件是否存在。如果它存在,则重定向到家。
如果你们可以帮助我,那就太酷了!我希望尽快完成这个:)
答案 0 :(得分:0)
我首先阅读http://php.net/manual/en/book.mysqli.php处的MySQLi
文档,具体说明与该类相关的方法。如果您需要我建议在Google上搜索的教程,网上有很多教程。
关于你的问题,这样的事情应该有效:
$query = "SELECT email FROM members WHERE USER = ? AND PASS = ?";
if ($stmt = $mysqli->prepare($query)){
// Bind the parameters, these are the ?'s in the query.
$stmt->bind_param("ss", $username, sha1($password));
// Execute the statement
if($stmt->execute()){
// get the results from the executed query
$stmt->store_result();
$email_res= "";
// This stores the value of the emailaddres inside $email_res
$stmt->bind_result($email_res);
$stmt->fetch();
// There is a result
if ($stmt->num_rows == 1){
// Validate the emailadres here, check the PHP function filter_var()
}
else {
// Not a valid email
}
}
else {
printf("Execute error: %s", $stmt->error);
}
}
else {
printf("Prepared Statement Error: %s\n", $mysqli->error);
}
}
我希望这会有所帮助