razumkov2015
@razumkov2015
"Программист" https://vk.com/cgs_game

Не приходят данные из столбца в БД, как исправить?

Есть скрипт на AJAX, оттуда отправляется запрос на страничку с php обработчиком, с данными, логин и пароль.
Обработчик по этим данным ищет в БД пользователя и возвращает обратно кол - во его монет, а так же ссылку на изображение его аватарки.
Монеты приходят, а ссылка нет. В чем может быть проблема?, я новичек в этой области, брал исходники из интернета и редактировал их, все получалось до этого момента.
<?php

	header('Access-Control-Allow-Origin: *');
 


	if (!$link) {
		echo "Ошибка: Невозможно установить соединение с MySQL." . PHP_EOL;
		echo "Код ошибки errno: " . mysqli_connect_errno() . PHP_EOL;
		echo "Текст ошибки error: " . mysqli_connect_error() . PHP_EOL;
		exit;
	}

	//Проверяем наличие передеваемых данных
	if(isset($_POST['login'])) $login = $_POST['login'];
	if(isset($_POST['password'])) $password = $_POST['password'];
	 
	//Проверяем наличие полученных значений
	if(isset($login) && isset($password)){
	 
		//Запрос к БД на получение нужной строки
		$q1 = $link->query("SELECT login FROM `accounts` WHERE `login`='$login' AND `password`='$password'");
		$loginb = $q1->fetch_array(MYSQLI_ASSOC);
		$loginbd=$loginb['login'];
		$q2 = $link->query("SELECT password FROM `accounts` WHERE `login`='".$login."' AND `password`='".$password."'");
		$passwordb = $q2->fetch_array(MYSQLI_ASSOC);
		$passwordbd=$passwordb['password'];
		
		//Проверка введенных данных
		if($passwordbd == $password){
			$r1 = $link->query("SELECT `money` FROM `accounts` WHERE `login`='$login' AND `password`='$password'");
			$result = mysqli_fetch_array($r1);
			$r1=$result['money'];
			$r12 = $link->query("SELECT `link` FROM `accounts` WHERE `login`='$login' AND `password`='$password'");
			$result2 = mysqli_fetch_array($r12);
			$r12=$result['link'];
            $rl = "1";
			echo $r1;
			echo "wwww";
			echo "yes";
            echo "wwww";
            echo $r12;
		}
		else{
            echo "wwww";
			echo "no";
		}
	}
    	mysqli_close($link);


При этом в БД сама ссылка загружается нормально.
  • Вопрос задан
  • 183 просмотра
Решения вопроса 1
SagePtr
@SagePtr
Еда - это святое
А зачем проверять пароль, если злоумышленник через SQL-инъекцию в данном примере сможет под любым логином легко зайти?)
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы