Как мне получить идентификатор записи по электронной почте, mysql - PullRequest
0 голосов
/ 06 мая 2020

У меня есть тест MySQL с уникальным полем адреса электронной почты. Теперь я хочу проверить перед добавлением записи, существует ли уже электронное письмо. У меня есть следующий код

<?php
$servername = "localhost";
$username = "xxxxxx";
$password = "xxxxxx";
$dbname = "xxxxxxx";
$servername = "localhost";

// Create connection
$conn = new mysqli($servername, $username, $password, $dbname);
// Check connection
if ($conn->connect_error) {
die("Connection failed: " . $conn->connect_error);
}

//test met voorbeeld
$emailtest="adres@me.com ";

$sql = "SELECT * FROM salonkeuze WHERE emailadres='$emailtest' ";
$data = mysqli_query($connect, $sql);
$row = mysqli_fetch_assoc($data);
$id = $row['voorkeur_id'];
Echo $id;
?>

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

Ответы [ 2 ]

0 голосов
/ 06 мая 2020

Во-первых, вы используете неправильную переменную в этой строке:

$data = mysqli_query($connect, $sql);

Правильно:

$data = mysqli_query($conn, $sql);

И это необязательно, но будет хорошо, если вы используете trim () для вашего $ email . Потому что, если ваши данные поступают из входов и если в $ email есть пробелы, вы не можете показать правильные результаты:

$emailtest = "adres@me.com ";
$emailtest = trim($emailtest);
$sql = "SELECT * FROM salonkeuze WHERE emailadres='$emailtest' ";
0 голосов
/ 06 мая 2020

Здесь $emailtest="adres@me.com "; вы можете лишний пробел после com, попробуйте удалить его -> $emailtest="adres@me.com";

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...