Форум программистов, компьютерный форум, киберфорум
PHP: базы данных
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.60/5: Рейтинг темы: голосов - 5, средняя оценка - 4.60
0 / 0 / 0
Регистрация: 07.02.2020
Сообщений: 3

Не выводит логин из базы данных

11.02.2020, 17:40. Показов 1163. Ответов 3
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Собственно сам файл авторизации с сессией. (Здесь выводит и id и логин)
PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
<?php
require('globals.php');
require('index2.php');
$login = $_POST['login'];
$password = $_POST['password'];
$inquiry="SELECT `id`  FROM `users` WHERE (`activ` = 1 AND `login` = '$login' AND `password` = '$password');";
  $link = mysqli_connect($hostName, $userName, $pass, $dbName);
if (mysqli_connect_errno()){
      printf("Невозможно соединиться с базой. Код ошибки : %s\n", mysqli_connect_error());
      }
 
else{
  mysqli_set_charset($link, "utf8");
   $result=mysqli_query($link, $inquiry);
 if (!$result){
     printf("Запрос не прошёл..СБОЙ ");
     printf($inquiry);
    exit();
    }
  if (!($row=mysqli_fetch_object($result))){
    already_exists();
    }
 
  else{
    $id=$row->id;
    session_start();
    $_SESSION['id'] = $id;
    $_SESSION['login'] = $login;
    header('Location: http://computer-inside.mcdir.ru');
  }
}
 
mysqli_free_result();
mysqli_close();
 
?>
И index с выводом логина (Тут выводит только id)

PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
<?php
require('index2.php');
 
golova();
 
session_start();
$login = $_SESSION['login'];
$id = $_SESSION['id'];
if (!$id) {
printf('<div class="reg-auth"><a class="button" href="auth.php">Авторизоваться</a><a class="button" href="reg.php">Зарегистрироваться</a></div>');
}
else {
  printf('<div class="reg-auth"><a class="button-after">Вы авторизованы, как  '); 
  printf($login);
  printf('</a><a class="button-after" href="out.php">Выход</a></div>');
}
printf('
<div class="header">
<div class="header-container">
<img class="image-x" src="Computer inside (with text).png" alt="">
 <ul class="menu">
           <li class="flex">
                <a class="stroke" href="index.php">ГЛАВНАЯ</a>
           </li>
           <li class="flex">
             <a class="stroke" href="#">СРАВНЕНИЕ</a>
           </li>
            </ul>
</div>
   </div>
   
<div class="container">
 
<div class="menu-container">
  <div class="void-div"></div>
  <div class="dropdown" width="100">
  <button class="dropbtn"><img class="image" src="cpu-logo-png-5.png" width="40"/>Процессоры</button>
  </div>
 
  <div class="dropdown" width="100">
  <button class="dropbtn"><img class="image" src="gpu-logo1.png" width="40" />Видеокарты</button>
  </div>
 
  <div class="dropdown" width="100">
  <button class="dropbtn"><img class="image" src="motherboard-logo1.png" width="40" />Материнские платы</button>
  </div>
  <div class="dropdown" width="100">
  <button class="dropbtn"><img class="image" src="ram-logo.png" width="40" />Оперативная память</button>
  </div>
 
  <div class="dropdown" width="100">
  <button class="dropbtn"><img class="image" src="hdd-logo.png" width="40"/>Накопители</button>
  </div>
 
  <div class="dropdown" width="100">
  <button class="dropbtn"><img class="image" src="power-logo.png" width="40" />Блоки питания</button>
  </div>
  <div class="void-div"></div>
</div>
 
<div class="main-unit">
 
</div>
</div>
</body>
</html>
');
require('globals.php');
  
    if((!$user_id)or(!$groups_users_id)){
  $email = $_POST['email']; 
  $password = $_POST['password'];
  $equery="SELECT user_id, groups_users_id, name_user, patronymic_user FROM $tableName1 WHERE (activ != 0 AND login = '$login' AND password = '$password')";
  $link = mysqli_connect($hostName, $userName, $pass, $dbName);
 
    if (!$link ){
            printf("Невозможно подключиться к базе данных. Код ошибки: %s\n", mysqli_connect_error());
    }
    else{    
            mysqli_set_charset($link, "utf8");  
         if (!($res=mysqli_query($link, $equery))){
                      $_SESSION['log']="1";
                       header('Location: ../index.php');  //printf("запрос не дал результата") ; 
         }
         else{ 
           if (!($row=mysqli_fetch_object($res))){
                      $_SESSION['log']="1";
                       header('Location: ../index.php');  //printf("нет такой записи") ; //sleep(5); header('Location: ../index.php');  
           }
           else{
                      $user_id=$row->user_id;
                      $groups_users_id=$row->groups_users_id;
                      $name_user=$row->name_user;
                      $patronymic_user=$row->patronymic_user;
                      $_SESSION['user_id']=$user_id;
                      $_SESSION['groups_users_id']=$groups_users_id;
           }
         }
          mysqli_free_result($result);
        }
         mysqli_close();
}
?>
0
Лучшие ответы (1)
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
11.02.2020, 17:40
Ответы с готовыми решениями:

Как вывести логин и тип пользователя из базы данных
Всем привет! Ребят подскажите как мне правильно вывести логин и тип пользователя. Тип вывожу таким методом $result =...

Как вывести имя, фамилия и логин из mysql базы данных?
Помогите пожалуйста вывести имя, фамилию и логин из базы данных &lt;?php require &quot;../sys/db.php&quot;; require...

Не выводит значение из базы данных
Хочу вывести значение из базы данных на панель профиля, но как прописать не знаю. &lt;div class=&quot;balance&quot;&gt;Ваш баланс:...

3
 Аватар для vinikon
340 / 160 / 89
Регистрация: 16.01.2020
Сообщений: 771
11.02.2020, 19:21
какие записи в лог файле (сообщения об ошибках выводятся, если да, то какие)?

Добавлено через 2 минуты
фильтруете $_POST? или на сервере так же переменные передаете, как и в этих примерах?

Добавлено через 3 минуты
после вызова
Цитата Сообщение от Cattison Посмотреть сообщение
header('Location:
завершайте скрипт функцией exit;

Добавлено через 6 минут
попробуйте session_start() вызывать в самом начале файла.
в файлах globals.php и index2.php в конце файла не ставьте ?>
1
0 / 0 / 0
Регистрация: 07.02.2020
Сообщений: 3
11.02.2020, 20:04  [ТС]
Цитата Сообщение от vinikon Посмотреть сообщение
какие записи в лог файле (сообщения об ошибках выводятся, если да, то какие)?

Добавлено через 2 минуты
фильтруете $_POST? или на сервере так же переменные передаете, как и в этих примерах?

Добавлено через 3 минуты
после вызова
завершайте скрипт функцией exit;

Добавлено через 6 минут
попробуйте session_start() вызывать в самом начале файла.
в файлах globals.php и index2.php в конце файла не ставьте ?>
В логах пишет, что индексы login и id не обнаружены:
Undefined index: login in index.php on line 7
Undefined index: id in index.php on line 8

Добавлено через 6 минут
И еще я не понял вопрос про $_POST.
0
 Аватар для vinikon
340 / 160 / 89
Регистрация: 16.01.2020
Сообщений: 771
11.02.2020, 23:51
Лучший ответ Сообщение было отмечено Cattison как решение

Решение

Цитата Сообщение от Cattison Посмотреть сообщение
И еще я не понял вопрос про $_POST.
SQL Injection от и до
Внедрение SQL-кода

Добавлено через 3 минуты
Цитата Сообщение от Cattison Посмотреть сообщение
индексы login и id не обнаружены
похоже, сессии не запускаются. session_start перенесли в начало файла?

Добавлено через 2 часа 38 минут
объясняю, что при использовании кук для передачи id сессии, сессия должна стартовать до вывода в браузер любого символа. у Вас во втором коде в четвертой строчке вызывается функция golova(), которая судя по всему формирует верхнюю часть страницы (потому что ниже просто выводятся div и прочая разметка страницы). поэтому вывод в браузер случился до старта сессии, куки установиться не могут, и сессия не запускается. перенесите старт сессии в самое начало файла - повторяю, и добавьте exit после header('location:.....');
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
11.02.2020, 23:51
Помогаю со студенческими работами здесь

Почему с базы данных, не выводит русские буквы?
Почему вместо слова, отображаются вопросики?

Цикл вывода информации из базы данных выводит лишнего
Добрый вечер. Есть несколько циклов. Первый выводит первые три записи из БД. Далее идет второй цикл, который выводит с шестой по восьмую...

Код PHP не берёт данные из базы данных, при авторизации всегда выдаёт прописанную ошибку "Неверный логин или пароль"
&lt;head&gt; &lt;meta charset=&quot;UTF-8&quot;&gt; &lt;title&gt;QestBar&lt;/title&gt; &lt;/head&gt; &lt;?php require...

Логин/пароль для базы данных
Уважаемые господа программисты, возникла такая проблема при создании БД по сотрудникам предприятия. Нужно с помощью авторизации пройти на...

Не записывает в базу данных и не выводит из базы данных.
Здравствуйте у меня небольшая проблема,не произходит запись в бд , пишет фатал ерор Fatal error: Call to undefined function msql_query() in...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Новые блоги и статьи
SDL3 для Web (WebAssembly): Вывод текста со шрифтом TTF с помощью SDL3_ttf
8Observer8 01.02.2026
Содержание блога В этой пошаговой инструкции создадим с нуля веб-приложение, которое выводит текст в окне браузера. Запустим на Android на локальном сервере. Загрузим Release на бесплатный. . .
SDL3 для Web (WebAssembly): Сборка C/C++ проекта из консоли
8Observer8 30.01.2026
Содержание блога Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а. . .
SDL3 для Web (WebAssembly): Установка Emscripten SDK (emsdk) и CMake для сборки C и C++ приложений в Wasm
8Observer8 30.01.2026
Содержание блога Для того чтобы скачать Emscripten SDK (emsdk) необходимо сначало скачать и уставить Git: Install for Windows. Следуйте стандартной процедуре установки Git через установщик. . . .
SDL3 для Android: Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 29.01.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами. Версия v3 была полностью переписана на Си, в. . .
Инструменты COM: Сохранение данный из VARIANT в файл и загрузка из файла в VARIANT
bedvit 28.01.2026
Сохранение базовых типов COM и массивов (одномерных или двухмерных) любой вложенности (деревья) в файл, с возможностью выбора алгоритмов сжатия и шифрования. Часть библиотеки BedvitCOM Использованы. . .
SDL3 для Android: Загрузка PNG с альфа-каналом с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 28.01.2026
Содержание блога SDL3 имеет собственные средства для загрузки и отображения PNG-файлов с альфа-каналом и базовой работы с ними. В этой инструкции используется функция SDL_LoadPNG(), которая. . .
SDL3 для Android: Загрузка PNG с альфа-каналом с помощью SDL3_image
8Observer8 27.01.2026
Содержание блога SDL3_image - это библиотека для загрузки и работы с изображениями. Эта пошаговая инструкция покажет, как загрузить и вывести на экран смартфона картинку с альфа-каналом, то есть с. . .
Влияние грибов на сукцессию
anaschu 26.01.2026
Бифуркационные изменения массы гриба происходят тогда, когда мы уменьшаем массу компоста в 10 раз, а скорость прироста биомассы уменьшаем в три раза. Скорость прироста биомассы может уменьшаться за. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru