Loading...
Начал учить пдо только, правильно я перевел запрос с MySQLi на PDO?
<?php
// MySQLi варик
$login = mysqli_query($mysqli_connect, "SELECT `id` FROM `users` WHERE `login` = '".$_POST['login']."'");
if(mysqli_num_rows($login) == 1)
$error .= 'Пользователь с таким логином уже зарегистрирован, используйте другой.';

//ПДО варик
if($db->query("SELECT `id` FROM `users` WHERE `login` = '".$db->quote($_POST['login'])."'")->rowCount() == 1)
$error .= 'Пользователь с таким логином уже зарегистрирован, используйте другой.';

________
посл. ред. 04.02.2018 в 20:32; всего 4 раз(а); by SNEG
Подготовка запроса где? (prepare)
Да и вообще структура запроса не верная. ты берешь ID юзверя с таким логином, а надо кол-во (SELECT COUNT(`id`) )
RUS (04.02.2018 в 20:19)
Да и вообще структура запроса не верная. ты берешь ID юзверя с таким логином, а надо кол-во (SELECT COUNT(`id`) )

Зачем считать количество id если я считаю количество строк rowCount()
________
посл. ред. 04.02.2018 в 20:24; всего 1 раз(а); by SNEG
RUS , count если не ошибаюсь дольше выполняется.
SNEG , пост 2
CyberShot (04.02.2018 в 20:35)
SNEG , пост 2
пост 1, quote() вместо prepare
________
посл. ред. 04.02.2018 в 20:38; всего 2 раз(а); by SNEG
SNEG , не то. Если не ошибаюсь. Сначала нужно подготовить запрос, а потом уже через execute писать в него данные. Посмотри в зц пример в новых файлах, там уже многие используют пдо.

$row = $db->prepare("SELECT `id` FROM `users` WHERE `login` = ?');
$row -> execute([$_POST['login']]);
$row = $row -> rowCount();
if ($row == 1) $error = 'Ошибка';

Евгений (04.02.2018 в 20:50)

$row = $db->prepare("SELECT `id` FROM `users` WHERE `login` = ?');
$row -> execute([$_POST['login']]);
$row = $row -> rowCount();
if ($row == 1) $error = 'Ошибка';



А не так ли случайно правильней?
<?php
$row = $db->prepare("SELECT `id` FROM `users` WHERE `login` = ?');
$row->bind_param("s", $_POST['login']);
$row -> execute();
$row = $row -> rowCount();
if ($row == 1) $error = 'Ошибка';

________
посл. ред. 04.02.2018 в 20:59; всего 2 раз(а); by SNEG
Онлайн: 3
Время:
Gen. 0.1075
(c) Bym.Guru 2010-2026