Итак, я решил, что пришло время модернизировать мой код, обновив часть моего сценария от mysql до PDO. Я использовал последние дни, пытаясь лучше узнать PDO, но я не могу связать примеры, которые я нашел в моем скрипте.Преобразование из mysql в PDO
Подключение к базе данных:
mysql_connect('localhost', 'root', '') or die ('The server is facing issues at the moment');
mysql_select_db('openchat') or die('Problem with connecting to the database');
функция Php с подключением к БД включены:
function user_exists($username) {
$username = sanitize($username);
return (mysql_result(mysql_query("SELECT COUNT(`user_id`) FROM `user` WHERE `username` = '$username'"), 0) == 1) ? true : false;
}
Функция проверяет, если пользователь уже существует, где $ имя пользователя является посланных имя пользователя в форме, и функция проверяет, принято ли имя пользователя или нет. Я просто показывает небольшую часть кода, так что я надеюсь, что это достаточно информации, чтобы получить код :)
Update
Я думаю, что я finnaly сделали обновленную версию, которая работает!
try {
$db = new PDO('mysql:host=127.0.0.1;dbname=openchat', 'user', 'user123');
$db->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
} catch(Exception $e) {
die('The server is facing issues' . '</br>' . $e->getMessage());
}
function test() {
global $db;
$query = $db->query("SELECT COUNT(`user_id`) FROM `user` WHERE `username` = 'testbruker'");
$result = $query->fetchColumn();
return ($result == 1) ? true: false;
}
Google это и вы найдете миллионы примеров. –
Пожалуйста, попробуйте сделать это первым. здесь http://php.net/manual/en/pdo.connections.php вы можете найти, как подключиться к базе данных с PDO. Вы также можете найти много примеров SELECT :), если вы потерпите неудачу, мы поможем вам. Вы не учитесь, если не пытаетесь. Кстати: похоже, ваш скрипт ** уязвим ** к sql-injection! – Danielius
@ Danielius Просто интересно, не будет ли «sanitise» потенциально исправить SQL-инъекцию? Не то, что это хорошо, все еще довольно небезопасно, но это не похоже на прямую проблему. – somethinghere