Есть ли способ вставить куки в базу данных? - PullRequest
0 голосов
/ 30 декабря 2010

Мне нужно сопоставить имя пользователя со значением в базе данных, поэтому я хочу вставить имя пользователя, сохраненное в файле cookie.Функция довольно проста.Cookie хранится правильно, и я могу повторить его.Мой скрипт вставки также работает, потому что я могу вставить другие вещи.Но по какой-то причине я не могу вставить значение куки.

Это в значительной степени то, что я пытаюсь сделать:

$username = $_COOKIE['username'];

$dbc = mysqli_connect(DB_HOST, DB_USER, DB_PASSWORD, DB_NAME)
or die('error');
$query1 = "INSERT INTO Gallery (username) VALUES('$username')";
$data1 = mysqli_query ($dbc, $query1) or die('error1');
mysqli_close($dbc);

Есть что-то, что я пропускаю?Я пытался использовать сессии, но не повезло.

Я также сделал куки доступными по всему домену.

Ответы [ 2 ]

1 голос
/ 30 декабря 2010

Здесь есть (как минимум) две проблемы.

  1. Вы копируете значение файла cookie в переменную с именем $user, но используете переменную с именем $username, чтобы попытаться вставить данные в базу данных
  2. Вы не выполняете никакой проверки работоспособности данных cookie (которые являются данными, предоставленными браузером и, следовательно, испорченными) перед использованием в запросе SQL. Это приглашение к столикам Бобби .
0 голосов
/ 30 декабря 2010

Возможно, попробуйте изменить свой запрос на этот ...

$query1 = "INSERT INTO Gallery (username) VALUES(" . mysql_escape_string($_COOKIE['username']) . ")";
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...