Немного наркомании на php, или сделать возможно?

Xeon

Проверенные
Сообщения
143
Реакции
13
Баллы
8,115
Доброго времени суток, запросом гет отправляю 1.php?username=GoD&password=qwerty и есть скрипт "сломан" :
PHP:
// Check username
$usr = $db->fetchCol('SELECT user_id FROM xf_user WHERE username=' . $db->quote($username));
if($db->quote($username) != $usr) {
exit('false');
}
Который я хочу чтобы проверял регистр имени, но я не знаю как правильно оформить запрос к бд...
Ps библиотеки ксенфоро к скрипту подключены...
PsX2 не нужно мне говорить что запрос вообще получает id пользователя, я это знаю, просто привел для пример...
 
Последнее редактирование:
Данные пользователей лучше отправлять POST-запросами, просто замени $_GET, на $_POST.
 
Данные пользователей лучше отправлять POST-запросами, просто замени $_GET, на $_POST.
Я временно поставил гет, чтобы легко проверять...

Нужно чтобы строка $usr = $db->fetchCol('SELECT username FROM xf_user WHERE user-_id=' . $db->quote($user_id)); полчала значение колонки username по id юзера

Сам скрипт, может нужно кому (без строк штуки которую я собираюсь добавить):
PHP:
<?php
header("Content-Type: text/plain");

// Verify username and password
$username = $_POST['username'];
$password = $_POST['password'];

if(empty($username) || empty($password)) {
  exit('false');
}

// Load XenForo core
$dir = dirname(__FILE__);
$libraryDir = $dir . '/library';
require($dir . '/library/XenForo/Autoloader.php');
XenForo_Autoloader::getInstance()->setupAutoloader($libraryDir);
XenForo_Application::initialize($libraryDir, $dir);
XenForo_Application::set('page_start_time', microtime(true));
$db = XenForo_Application::get('db');

// Resolve user_id by username
$result = $db->fetchCol('SELECT user_id FROM xf_user WHERE username=' . $db->quote($username));
if(!count($result)) {
  exit('false');
}
$user_id = $result[0];

// Get user data
$result = $db->fetchCol('SELECT data FROM xf_user_authenticate WHERE user_id=' . $db->quote($user_id));
if(!count($result)) {
  exit('false');
}
$data = $result[0];

// Select authentication core
$auth = NULL;
if(class_exists('XenForo_Authentication_Core12')) {
  $auth = new XenForo_Authentication_Core12;
} else if(class_exists('XenForo_Authentication_Core')) {
  $auth = new XenForo_Authentication_Core;
} else exit('false');

// Try to authenticate
$auth->setData($data);
$success = $auth->authenticate($user_id, $password);
echo($success ? 'true' : 'false');
?>
 
Современный облачный хостинг провайдер | Aéza
Назад
Сверху Снизу