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

Авторизация и профиль

23.04.2012, 13:43. Показов 5014. Ответов 18
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Здравствуйте как сделать так когда я со авторизирую и чтобы если я изменяю картинку в профиле чтобы меня не выкидивало с профиля

Добавлено через 14 минут
вот например у меня есть код там сделано регистрация и авторизацию вот когда я авторизирую мне показивает профиль и там еще есть форма для загрузки фотографии вот когда я нажимаю загрузить фото меня разлогинивает. Как эту проблему решить чтобы меня не выкидывало при загрузки артинки пользователя
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
23.04.2012, 13:43
Ответы с готовыми решениями:

Регистрация, авторизация и мини профиль
Привет всем! У кого есть плагины регистрации, авторизации и мини профилем ну вообщем нужно сделать такую же систему регистрации,...

Авторизация в одноклассниках, используя CURL и невозможность авторизоваться повторно, через другой профиль
Здравствуйте, уважаемые умельцы. Суть, собственно, в названии темы. Используется следующий код: $user_agent = 'Mozilla/5.0 (Windows; U;...

Профиль
Когда смотришь профиль некоторых форумчан, начинает в глазах рябить. Такое ощущение, что этот "продвинутый юзер" в прошлой жизни...

18
Веб-мастер
 Аватар для Maksimchikfull
89 / 89 / 19
Регистрация: 11.08.2011
Сообщений: 674
23.04.2012, 13:47
gusca, у тебя только профиль? Других страниц нет? Походи по другим страницам. Если будет выуидывать, то просто не запоминает ту информацию котоая показывает скриптам что пользователь зарегистрирован.
0
5 / 5 / 1
Регистрация: 17.08.2009
Сообщений: 168
23.04.2012, 13:53  [ТС]
Maksimchikfull, как мне это можно поправить у меня профиль только вот если я залогинился мне показивает профиль пользователя, и у меня в профиле есть форма для загрузки фотографии вот когда я нажимаю загрузить фото оно меня выкидывает типа розлогинивает.
0
Эксперт PHP
5755 / 4134 / 1508
Регистрация: 06.01.2011
Сообщений: 11,276
23.04.2012, 14:01
Цитата Сообщение от gusca Посмотреть сообщение
вот когда я нажимаю загрузить фото меня разлогинивает
gusca, сохраняйте информацию о залогиненом пользователе в ГЛОБАЛЬНЫХ перемнных типа "$_COOKIE" и "$_SESSION"
0
5 / 5 / 1
Регистрация: 17.08.2009
Сообщений: 168
23.04.2012, 14:12  [ТС]
Lyodik, ну как так сделать правильно я сейчас код скину который проверяется на залогиниваниие

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
for($i = 0; $i < $rt; $i++)
{
    if($mas[$i]['login'] == $log && $mas[$i]['passvord'] == $pass)
    {         
        $til_logo = $mas[$i]['login'];
        echo "Ваш логин: ".$mas[$i]['login']. "<br />" ;
        echo "Ваш ИФО: ".$mas[$i]['ifo']. "<br />" ;
        echo "Ваш год рождения: ".$mas[$i]['god']. "<br />" ;
        echo "Ваш Место проживания: ".$mas[$i]['mes_proz']. "<br />" ;
        echo "Ваш Семейное положение: ".$mas[$i]['sem_poloz']. "<br />" ;
        echo "Ваш Образование: ".$mas[$i]['obrazovanie']. "<br />" ;
        echo "Ваш Опит роботы: ".$mas[$i]['opit_roboti']. "<br />" ;
        echo "Ваш Телефон: ".$mas[$i]['tel']. "<br />" ;
        echo "Ваш почиа: ".$mas[$i]['mail']. "<br />" ;
        echo "Ваш о себе: ".$mas[$i]['o_sebe']. "<br />" ;
        echo "<img src=".$mas[$i]['img']." alt=''/>" ;
        include('upload.html');//подключаем форму для добавления фотографии пользователя
        //include('edit.php');
        $o = 0;
        break;//заканчиваем виполнение цикла
    }
    else
    {
        $o = 1;
    }
}
if($o == 1)
{
    echo 'Неправильнй пароль або логин';
}
0
Эксперт PHP
5755 / 4134 / 1508
Регистрация: 06.01.2011
Сообщений: 11,276
23.04.2012, 14:28
gusca, во-первых тут нужно убрать цикл. Дайте код выборки из БД... И что это за массив: $rt?
0
5 / 5 / 1
Регистрация: 17.08.2009
Сообщений: 168
23.04.2012, 14:36  [ТС]
Lyodik, цикл отвечает за вывод профиля, $rt это количество записей в таблыце и цыкл выполняетса так идем по таблице ЮСЕР потмо идет иф проверяет который проверяет совпадают ли логин и пароль то что мы ввели в форму с базой если совпадают выводит информацию о пользователе а если пользователя такого нет в базе данных или не совпадает парольто выполняетса ЕЛСЕ
0
Эксперт PHP
5755 / 4134 / 1508
Регистрация: 06.01.2011
Сообщений: 11,276
23.04.2012, 14:41
gusca, всё это я давно понял! Просто так не делается! Лучше из БД сразу выбрать нужную запись, чем в цикле все перебирать на совпадение
0
5 / 5 / 1
Регистрация: 17.08.2009
Сообщений: 168
23.04.2012, 14:57  [ТС]
Lyodik, я знаю ну как мне реализовать так чтоби при добавленини картинки в профиль пользователя чтобы не выкидивало меня с профиля как сохранять профильчтоби его не выкидывало

Добавлено через 11 минут
Lyodik, вот так можно сделать

PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
if (isset($_POST['login']) && isset($_POST['password']))
{
    $login = mysql_real_escape_string($_POST['login']);
    $password = md5($_POST['password']);
 
    $query = "SELECT * FROM `user` WHERE `login`='{$login}' AND `password`='{$password}' LIMIT 1";
    $sql = mysql_query($query) or die(mysql_error());
    if (mysql_num_rows($sql) == 1) {
        $row = mysql_fetch_assoc($sql);
        echo 'Логин: '.$row['login'].'<br />';
        echo 'телефон: '.$row['tel'].'<br />';
    }
    else {
        echo 'Такой логин с паролем не найдены в базе данных. И даём ссылку на повторную авторизацию.';
    }
}
как это сделать так чтобы не выкидывало, вот когда я добвлю фотку в профиль чтобы при нажатии кнопки загрузить чтобы не выкидывало меня профиля.
0
 Аватар для __PION__
960 / 801 / 85
Регистрация: 21.07.2010
Сообщений: 3,522
23.04.2012, 15:07
Цитата Сообщение от gusca Посмотреть сообщение
Lyodik, я знаю ну как мне реализовать так чтоби при добавленини картинки в профиль пользователя чтобы не выкидивало меня с профиля как сохранять профильчтоби его не выкидывало
сказали же, использовать сессии
Цитата Сообщение от Lyodik Посмотреть сообщение
gusca, сохраняйте информацию о залогиненом пользователе в ГЛОБАЛЬНЫХ перемнных типа "$_COOKIE" и "$_SESSION"
Чтобы использовать эти массивы в начале каждого файла, где их используешь надо прописывать ф-ю session_start();
Теперь, как сохранить в сессию.
Вот у нас форма
HTML5
1
2
3
4
<form>
   <input type='text' name='login'>
   <input type='submit' name='knopka' value='knopka'>
</form>
+ еще поле для фото ... и т.п.
Делаем выборку из БД
PHP
1
2
3
4
5
6
7
8
9
10
11
// Сначала открываем сессию и заводим переменную куда сохраним инфу о юзере
session_start();
// Пока она ничему не равна, просто завели. А так это будет двумерный массив с инфой юзера
$_SESSION['user'] = null;
 
$q = "SELECT * FROM table_name WHERE login = " . mysql_real_escape_string($_POST['login']);
$r = mysql_query($q);
 
$l = mysql_fetch_assoc($r);
// Сохранили в сессию логин пользователя
$_SESSION['user']['login'] = $l['login'];
ну а дальше делай чо хочешь, никуда не выкинет
1
5 / 5 / 1
Регистрация: 17.08.2009
Сообщений: 168
23.04.2012, 15:30  [ТС]
Love_and_Peace, вот я зделал какви дали на прымере

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
if (isset($_POST['login']) && isset($_POST['password']))
{
    $login = mysql_real_escape_string($_POST['login']);
    $password = md5($_POST['password']);
 
    // делаем запрос к БД
    // и ищем юзера с таким логином и паролем
 
    $query = "SELECT * FROM `user` WHERE `login`='{$login}' AND `passvord`='{$password}' LIMIT 1";
    $sql = mysql_query($query) or die(mysql_error());
 
    // если такой пользователь нашелся
    if (mysql_num_rows($sql) == true) {
        // то мы ставим об этом метку в сессии (допустим мы будем ставить ID пользователя
 
 
        $row = mysql_fetch_assoc($sql);
        $_SESSION['user'] = null;
        $_SESSION['user']['login'] = $row['login'];
        
        //$_SESSION['user_id'] = $row['id'];  
        
            echo "Ваш логин: ".$row['login']. "<br />" ;
            echo "Ваш ИФО: ".$row['ifo']. "<br />" ;
            echo "Ваш год рождения: ".$row['god']. "<br />" ;
            echo "Ваш Место проживания: ".$row['mes_proz']. "<br />" ;
            echo "Ваш Семейное положение: ".$row['sem_poloz']. "<br />" ;
            echo "Ваш Образование: ".$row['obrazovanie']. "<br />" ;
            echo "Ваш Опит роботы: ".$row['opit_roboti']. "<br />" ;
            echo "Ваш Телефон: ".$row['tel']. "<br />" ;
            echo "Ваш почиа: ".$row['mail']. "<br />" ;
            echo "Ваш о себе: ".$row['o_sebe']. "<br />" ;
            echo "<img src=".$row['img']." alt=''/>" ;
            include('upload.html');//подключаем форму для обновления даних пользователя
            include('edit.php');
        
        
  
     
        // не забываем, что для работы с сессионными данными, у нас в каждом скрипте должно присутствовать session_start();
    }
    else {
        echo 'Такой логин с паролем не найдены в базе данных. И даём ссылку на повторную авторизацию.';
    }
}
else
{
    echo 'ви розлогены';
}
только когдая добавляю картинку оно мне выбивает ЕЛСЕ
PHP
1
2
3
4
else
{
    echo 'ви розлогены';
}
в сесию сохранилось что дальше сделать чтобы не разлогинивало?
0
 Аватар для crautcher
2450 / 2301 / 597
Регистрация: 27.05.2011
Сообщений: 7,845
23.04.2012, 15:37
нечего слепо копипастить не разбираясь что происходит , facepalm
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
<?
if (isset($_POST['login']) && isset($_POST['password']))
{
    $login = mysql_real_escape_string($_POST['login']);
    $password = md5($_POST['password']);
 
    // делаем запрос к БД
    // и ищем юзера с таким логином и паролем
 
    $query = "SELECT * FROM `user` WHERE `login`='{$login}' AND `passvord`='{$password}' LIMIT 1";
    $sql = mysql_query($query) or die(mysql_error());
 
    // если такой пользователь нашелся
    if (mysql_num_rows($sql) == true) {
        // то мы ставим об этом метку в сессии (допустим мы будем ставить ID пользователя
 
 
        $row = mysql_fetch_assoc($sql);
        $_SESSION['login'] = $row['login'];
}
else
 {
        echo 'Такой логин с паролем не найдены в базе данных. И даём ссылку на повторную авторизацию.';
 }
}
 
 
if (!empty($_SESSION['login']))        
{
        
            echo "Ваш логин: ".$row['login']. "<br />" ;
            echo "Ваш ИФО: ".$row['ifo']. "<br />" ;
            echo "Ваш год рождения: ".$row['god']. "<br />" ;
            echo "Ваш Место проживания: ".$row['mes_proz']. "<br />" ;
            echo "Ваш Семейное положение: ".$row['sem_poloz']. "<br />" ;
            echo "Ваш Образование: ".$row['obrazovanie']. "<br />" ;
            echo "Ваш Опит роботы: ".$row['opit_roboti']. "<br />" ;
            echo "Ваш Телефон: ".$row['tel']. "<br />" ;
            echo "Ваш почиа: ".$row['mail']. "<br />" ;
            echo "Ваш о себе: ".$row['o_sebe']. "<br />" ;
            echo "<img src=".$row['img']." alt=''/>" ;
            include('upload.html');//подключаем форму для обновления даних пользователя
            include('edit.php');
    
        // не забываем, что для работы с сессионными данными, у нас в каждом скрипте должно присутствовать session_start();
 
    
}
else
{
    echo 'ви розлогены';
}
0
5 / 5 / 1
Регистрация: 17.08.2009
Сообщений: 168
23.04.2012, 15:43  [ТС]
crautcher, не знаю всерано разлогиниваетса когда загружаю картынку

Добавлено через 1 минуту
crautcher, может както ищо куки надо использовать чтобы не выкидывало
0
Эксперт PHP
5755 / 4134 / 1508
Регистрация: 06.01.2011
Сообщений: 11,276
23.04.2012, 15:49
Цитата Сообщение от gusca Посмотреть сообщение
всерано разлогиниваетса когда загружаю картынку
gusca, "session_start()" вначале кода стоит?
1
5 / 5 / 1
Регистрация: 17.08.2009
Сообщений: 168
23.04.2012, 15:52  [ТС]
Lyodik, заработало только дание не охранились они ищезли
0
 Аватар для crautcher
2450 / 2301 / 597
Регистрация: 27.05.2011
Сообщений: 7,845
23.04.2012, 15:52
кст мой пример кривой , так как данные забераются из базы ток при логине... вернее будет так

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
function GetLoginInfo($login,$pw)
{
 static $data;
 if (isset($data[$login][$pw]))
  return $data[$login][$pw];
 $query = "SELECT * FROM `user` WHERE `login`='{$login}' AND `passvord`='{$pw}' LIMIT 1";
 $sql = mysql_query($query) or die(mysql_error());
 if (mysql_num_rows($sql) == true) 
  { 
   $data[$login][$pw] = mysql_fetch_assoc($sql);
   return $data[$login][$pw]; 
  }
 return false;
}
 
#---------login part------------
if (isset($_POST['login']) && isset($_POST['password']))
{
    $login = mysql_real_escape_string($_POST['login']);
    $password = md5($_POST['password']);
    if ($row = GetLoginInfo($login,$password) ) {
        $_SESSION['login'] = $row['login'];
        $_SESSION['password'] = $row['passvord'];
    }
    else
    {
       echo 'Такой логин с паролем не найдены в базе данных. И даём ссылку на повторную авторизацию.';
    }
}
 
#--------user info part---------
if (!empty($_SESSION['login']) && !empty($_SESSION['password']) && $row = GetLoginInfo($login,$pw))        
{
         
            echo "Ваш логин: ".$row['login']. "<br />" ;
            echo "Ваш ИФО: ".$row['ifo']. "<br />" ;
            echo "Ваш год рождения: ".$row['god']. "<br />" ;
            echo "Ваш Место проживания: ".$row['mes_proz']. "<br />" ;
            echo "Ваш Семейное положение: ".$row['sem_poloz']. "<br />" ;
            echo "Ваш Образование: ".$row['obrazovanie']. "<br />" ;
            echo "Ваш Опит роботы: ".$row['opit_roboti']. "<br />" ;
            echo "Ваш Телефон: ".$row['tel']. "<br />" ;
            echo "Ваш почиа: ".$row['mail']. "<br />" ;
            echo "Ваш о себе: ".$row['o_sebe']. "<br />" ;
            echo "<img src=".$row['img']." alt=''/>" ;
            include('upload.html');//подключаем форму для обновления даних пользователя
            include('edit.php');
    
}
else
{
              echo 'ви розлогены';
}
1
5 / 5 / 1
Регистрация: 17.08.2009
Сообщений: 168
23.04.2012, 16:21  [ТС]
crautcher, что то здесь не верно имено в в строке
PHP
1
$row = GetLoginInfo($login,$pw)
эта $row переменная пустая
0
 Аватар для crautcher
2450 / 2301 / 597
Регистрация: 27.05.2011
Сообщений: 7,845
23.04.2012, 16:28
PHP
1
$row = GetLoginInfo($_SESSION['login'],$_SESSION['password'])
да , эт я копипастнул и забыл поменять
1
5 / 5 / 1
Регистрация: 17.08.2009
Сообщений: 168
23.04.2012, 16:36  [ТС]
crautcher, все отлично работает спс
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
23.04.2012, 16:36
Помогаю со студенческими работами здесь

X.M.P Профиль
Здравствуйте, проблема такова, на новой системе ASUS ROG STRIX Z370-F GAMING, i7-8700K, HyperX Predator DDR4 16Gb (2x8Gb) 3600 MHz. был...

Профиль chrome
ПО пути C:\Documents and Settings\Administrator\Application Data\Google Нету папки хрома( Где он хранит свой профиль?

Профиль пользователя
Прежде всего хотел бы сказать, что мне НЕ нужно готовое решение, и хотел бы чтобы более осведомленные люди подтолкнули в нужную сторону, а...

Редирек в профиль
Прошу у вас помощи, суть в чем после авторизации пользователя он должен быть перенаправлен с главной страницы в свой профиль. Каждый...

Профиль Windows 7
Всем привет, вообщем у меня такая проблема: 2 месяца назад случилась беда в моей системе, а именно вылезло сообщение что профиль поврежден...


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

Или воспользуйтесь поиском по форуму:
19
Ответ Создать тему
Новые блоги и статьи
SDL3 для Web (WebAssembly): Обработчик клика мыши в браузере ПК и касания экрана в браузере на мобильном устройстве
8Observer8 02.02.2026
Содержание блога Для начала пошагово создадим рабочий пример для подготовки к экспериментам в браузере ПК и в браузере мобильного устройства. Потом напишем обработчик клика мыши и обработчик. . .
Философия технологии
iceja 01.02.2026
На мой взгляд у человека в технических проектах остается роль генерального директора. Все остальное нейронки делают уже лучше человека. Они не могут нести предпринимательские риски, не могут. . .
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(), которая. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru