Ben onların adı veya e-posta adresini girerek bir kullanıcı dayalı şifreleri sıfırlamak için kod verimsiz bir parça vardı. PHP komut dosyası kullanılan tanımlayıcı bağlı olarak dallı. Ben onların e-posta adresi girerseniz, kullanıcı adları girer ama eğer şimdi çalışır birine içine çöktü. Burada göze çarpan kodu:
$identifier = isset($_POST["username"])?"username":"email";
$ident = isset($_POST["username"])?trim(mysqli_real_escape_string($mysqli,(check_chars_username($_POST["username"])))):trim(mysqli_real_escape_string($mysqli, (check_chars_email($_POST["email"]))));
//create and issue the query
$sql = "SELECT * FROM aromaMaster WHERE $identifier = '$ident'";
$sql_res =mysqli_query($mysqli, $sql) or die(mysqli_error($mysqli));
if(mysqli_num_rows($sql_res) == 0) {
//wrong login info
header("Location: password_reset_form.html/error=$ident");
exit();
}
$info = mysqli_fetch_array($sql_res);
$userid = $info["id"];
$username = stripslashes($info["username"]);
$email = stripslashes($info["email"]);
Ben kontrol ve e-posta form alanı e-posta denir kontrol katına ve öyle. Benim kafamı çizilmemesi var. Özellikle ilginç başlık yönlendirme olduğunu. Ben bir e-posta adresinizi girin ve yönlendirildi, değişken $ ident boş görünür.