Проверьте, нет ли электронной почты в базе данных с помощью подготовленных инструкций

Я пытаюсь изменить свой код на msqli подготовленные инструкции из mysql. Я не уверен, как адаптировать мой код, который в настоящее время работает, чтобы проверить, есть ли в базе данных письмо. Ниже приведен код, который я использую в данный момент. Как изменить это в подготовленный оператор и получить тот же результат?

//if email is equal to an email already in the database, display an error message if(mysql_num_rows(mysql_query("SELECT * FROM users WHERE email = '".mysql_real_escape_string($_POST['email'])."'"))) { echo "<p class='red'>Email is already registered with us</p>"; } else { // missing code? } 

Должно быть что-то вроде этого:

 // create mysqli object $mysqli = new mysqli(/* fill in your connection info here */); $email = $_POST['email']; // might want to validate and sanitize this first before passing to database... // set query $query = "SELECT COUNT(*) FROM users WHERE email = ?" // prepare the query, bind the variable and execute $stmt = $mysqli->prepare( $query ); $stmt->bind_param( $email ); $stmt->execute() // grab the result $stmt->store_result(); // get the count $numRows = $stmt->num_rows(); if( $numRows ) { echo "<p class='red'>Email is already registered with us</p>"; } else { // .... } 

Эта ссылка также может помочь вам:

http://www.php.net/manual/en/mysqli.quickstart.prepared-statements.php