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

При авторизации белый лист [ошибок нет]

22.09.2013, 10:33. Показов 2182. Ответов 6
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Всем добрый день. Есть сайт, есть форум. Для захода на сайт, используется БД форума (логин, пароль берутся оттуда). В БД сайта заносится информация касательно этого же человека, с его 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
<?php
    require('./config.php');
    require('./includes/functions.php');
    session_start();
    $return = '';
    mysql_query('SET names UTF8');
    $err = array();
 
    if (isset($_POST['login'])) { $login = $_POST['login']; if ($login == '') { unset($login);} }
    if (isset($_POST['password'])) { $password=$_POST['password']; if ($password =='') { unset($password);} }
 
    $amc = mysql_connect($db_host, $db_user, $db_pass) or die(mysql_error());
    mysql_select_db($forum['db'], $amc) or die(mysql_error());
 
    $r = mysql_fetch_assoc(mysql_query("SELECT * FROM $forum[table] WHERE $forum[cuser]='$login'")) or die(mysql_error());
    if($r[$forum['cpass']])
    {
        $check  = md5(md5($r[$forum['salt']]).md5($password));
 
        if($r[$forum['cpass']] == $check)
        {
            $_SESSION['login']  = $login;
            $_SESSION['id']     = $r[$forum['id']];
            $_SESSION['pm']     = $r[$forum['pm']];
            
            /*$amc_mc = mysql_connect($db_host, $db_user, $db_pass) or die(mysql_error());*/
            mysql_select_db($mc['db'], $amc) or die(mysql_error());
            $forumid = $r[$forum['id']];
            $s = mysql_query("SELECT * FROM " . $mc['table'] . " WHERE id='" . $forumid . "'") or die(mysql_error());
            $s = mysql_fetch_assoc($s) or die(mysql_error());
            
            if(!$s)
            {
                echo "error";
                $result = mysql_query("INSERT INTO $mc[table] ($mc[columnId],$mc[columnProf],$mc[columnRace],$mc[blockBreak],$mc[blockBuild]) VALUES('$forumid', '1', '0', '0', '0')") or die(mysql_error());
            }
            else
            {
                echo("<html><head><meta http-equiv='Refresh' content='0; URL=index.php'></head></html>");
            }
        }
        else
        {
            $_SESSION['login_time']     = empty($_SESSION['login_time']) ? time() : $_SESSION['login_time'];
            $_SESSION['login_count']    = empty($_SESSION['login_count']) ? 1 : $_SESSION['login_count'] + 1;
            echo'<p>Неверный пароль<br /></p>';
        }
    }
    else
    {
        $_SESSION['login_time']     = empty($_SESSION['login_time']) ? time() : $_SESSION['login_time'];
        $_SESSION['login_count']    = empty($_SESSION['login_count']) ? 1 : $_SESSION['login_count'] + 1;
        echo'<p>Неверный логин<br /></p>';
    }
?>
Добавлено через 9 минут
А вот конфиг, что бы было представление что есть что:
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
<?php
    $crypt                  = 'hash_ipb';
 
    $db_host                = 'localhost';                                      // Ip-адрес MySQL
    $db_port                = '3306';                                           // Порт базы данных
    $db_user                = '';                                       // Пользователь базы данных
    $db_pass                = '';                                       // Пароль базы данных
    $db_database            = 'forum';                                  //База данных Форума
    $db_database_mc         = 'mc';                                     //База данных МайнКрафта
    
$mc['db']               = 'mc';                                     // База данных для интегрируемого сайта
    $mc['table']            = 'users';                                          //Таблица с пользователями
    $mc['columnId']         = 'id';                                             //Колонка с ID пользователей
    $mc['columnProf']       = 'profession';                                     //Профессия
    $mc['columnRace']       = 'race';                                           //Расса
    $mc['columnBirth']      = 'birth_date';                                     //День рождения
    $mc['columnReg']        = 'reg_date';                                       //Дата регистрации
    $mc['columnLast']       = 'last_date';                                      //Дата последнего входа
    $mc['blockBreak']       = 'block_break';                                    //Блоков разбито
    $mc['blockBuild']       = 'block_build';                                    //Блоков построено
 
 
    // ----------------------- Connect for IPBoard ----------------------------------------------------
    $forum['db']            = 'forum';                                  // База данных для интегрируемого сайта
    $forum['table']         = 'members';                                        // Таблица с пользователями для интеграции с сайтом
    $forum['id']            = 'member_id';                                      // Колонка с идентификационными номерами пользователей
    $forum['salt']          = 'members_pass_salt';                              // Данные для авторизации пользователя
    $forum['cms']           = 'IPB';                                            // Система авторизации пользователей IPB
    $forum['cuser']         = 'name';                                           // Колонка с никами пользователей
    $forum['cpass']         = 'members_pass_hash';                              // Колонка с паролями пользователей
    $forum['pm']            = 'msg_count_new';                                  // Колонка со счётчиком приватных сообщений
    $forum['posts']         = 'posts';                                          // Колонка счётчика личных сообщений для обмена по акции
    
    $link = mysql_connect($db_host.':'.$db_port,$db_user,$db_pass) or die(mysql_error());
 
    mysql_select_db($db_database,$link);
    mysql_select_db($db_database_mc,$link);
 
    mysql_query("SET names UTF8");
?>
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
22.09.2013, 10:33
Ответы с готовыми решениями:

Ошибок нет, но при отладке после прохождения авторизации 2 форма не открывается
Запускаю отладку. Все запускается. Но после введения заданного логина и пароля(пользователь есть в сервере, я проверила) авторизация...

при переносе файлов на другой хостинг теперь вижу белый лист :(
Приветствую! С одного хостинга на другой перенес в отдельную папку php файлы, из phpmyadmin экспортировал и импортировал базу данных....

При компиляции ошибок нет,но при запуске выдает ошибку. В чем причина?
вот код, скрин ошибки прилагаю unit UGraphEdit1; interface uses Windows, Messages, SysUtils, Classes, Graphics, Controls, ...

6
 Аватар для AndreyDyakonov
122 / 120 / 7
Регистрация: 21.04.2013
Сообщений: 615
22.09.2013, 12:32
Цитата Сообщение от Nicolayka Посмотреть сообщение
$r = mysql_fetch_assoc(mysql_query("SELECT * FROM $forum[table] WHERE $forum[cuser]='$login'")) or die(mysql_error());
* * if($r[$forum['cpass']])
этот кусок смотрите. mysql_fetch_assoc, по мануалю, может просто вернуть false и никаких ошибок вы не увидете
0
1 / 1 / 0
Регистрация: 22.09.2013
Сообщений: 9
22.09.2013, 13:03  [ТС]
Цитата Сообщение от AndreyDyakonov Посмотреть сообщение
mysql_fetch_assoc, по мануалю, может просто вернуть false и никаких ошибок вы не увидете
А на что можно заменить mysql_fetch_assoc?
0
 Аватар для AndreyDyakonov
122 / 120 / 7
Регистрация: 21.04.2013
Сообщений: 615
22.09.2013, 13:14
зачем заменять, просто проверяйте что она возвращает.
0
1 / 1 / 0
Регистрация: 22.09.2013
Сообщений: 9
22.09.2013, 13:18  [ТС]
Цитата Сообщение от AndreyDyakonov Посмотреть сообщение
зачем заменять, просто проверяйте что она возвращает.
Не хочу показаться глупым, но я забыл как проверять вывод..
0
 Аватар для AndreyDyakonov
122 / 120 / 7
Регистрация: 21.04.2013
Сообщений: 615
22.09.2013, 13:28
PHP
1
2
3
if (!$r = mysql_fetch_assoc(mysql_query("SELECT * FROM $forum[table] WHERE $forum[cuser]='$login'"))) {
  echo 'идите ка зарегистрируйтесь для начала';
}
0
1 / 1 / 0
Регистрация: 22.09.2013
Сообщений: 9
22.09.2013, 13:53  [ТС]
Цитата Сообщение от AndreyDyakonov Посмотреть сообщение
PHP
1
2
3
if (!$r = mysql_fetch_assoc(mysql_query("SELECT * FROM $forum[table] WHERE $forum[cuser]='$login'"))) {
  echo 'идите ка зарегистрируйтесь для начала';
}
Выводит "Неверный логин", это код из нижней части:
PHP
1
2
3
4
5
6
    else
    {
        $_SESSION['login_time']     = empty($_SESSION['login_time']) ? time() : $_SESSION['login_time'];
        $_SESSION['login_count']    = empty($_SESSION['login_count']) ? 1 : $_SESSION['login_count'] + 1;
        echo'<p>Неверный логин<br /></p>';
    }
Это при том, если закоментировать часть
PHP
1
/*  if($r[$forum['cpass']])
Добавлено через 21 минуту
Короче тут несколько по другому, в БД не записывается информация по юзеру, под которым входите, а если этой информации нет, то показывается белый экран, а если вручную добавить эту ин-ию в БД, то входит спокойно. В какую сторону копать?
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
22.09.2013, 13:53
Помогаю со студенческими работами здесь

при компиляции выдает что нет ошибок, при запуске самой программы не запускается
Здраствуйте, помогите пожалуйста с программой. при компиляции выдает что нет ошибок, при запуске самой программы не запускается. в чем...

Canon MF211 Белый лист
Всем привет. Имею в пользовании MF211. При печати просто выдает белый лист, ничего не оставляет на нем. Картридж проверял. Печка греет. В...

При Make project ошибок нет, но при build apk: Error:Execution failed for task ':app:validateConfigSigning'. >
Полная ошибка: Error:Execution failed for task ':app:validateConfigSigning'. &gt; Keystore file...

Белый лист на главной - сайт в подкаталоге
Добрый вечеР! Сайт http://frescho.eu/ua/ Просто белы лист. Другие сайты(копии на разных языках) http://frescho.eu/en/ работает...

Белый лист вместо страницы ошибки
Пациент: online-novosti.ru если ввести любой несуществующий адресс, выдает просто белый лист. Пробывал включать отображение ошибок но не...


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

Или воспользуйтесь поиском по форуму:
7
Ответ Создать тему
Новые блоги и статьи
Советы по крайней бережливости. Внимание, это ОЧЕНЬ длинный пост.
Programma_Boinc 28.12.2025
Советы по крайней бережливости. Внимание, это ОЧЕНЬ длинный пост. Налог на собак: https:/ / **********/ gallery/ V06K53e Финансовый отчет в Excel: https:/ / **********/ gallery/ bKBkQFf Пост отсюда. . .
Кто-нибудь знает, где можно бесплатно получить настольный компьютер или ноутбук? США.
Programma_Boinc 26.12.2025
Нашел на реддите интересную статью под названием Anyone know where to get a free Desktop or Laptop? Ниже её машинный перевод. После долгих разбирательств я наконец-то вернула себе. . .
Thinkpad X220 Tablet — это лучший бюджетный ноутбук для учёбы, точка.
Programma_Boinc 23.12.2025
Рецензия / Мнение/ Перевод Нашел на реддите интересную статью под названием The Thinkpad X220 Tablet is the best budget school laptop period . Ниже её машинный перевод. Thinkpad X220 Tablet —. . .
PhpStorm 2025.3: WSL Terminal всегда стартует в ~
and_y87 14.12.2025
PhpStorm 2025. 3: WSL Terminal всегда стартует в ~ (home), игнорируя директорию проекта Симптом: После обновления до PhpStorm 2025. 3 встроенный терминал WSL открывается в домашней директории. . .
Как объединить две одинаковые БД Access с разными данными
VikBal 11.12.2025
Помогите пожалуйста !! Как объединить 2 одинаковые БД Access с разными данными.
Новый ноутбук
volvo 07.12.2025
Всем привет. По скидке в "черную пятницу" взял себе новый ноутбук Lenovo ThinkBook 16 G7 на Амазоне: Ryzen 5 7533HS 64 Gb DDR5 1Tb NVMe 16" Full HD Display Win11 Pro
Музыка, написанная Искусственным Интеллектом
volvo 04.12.2025
Всем привет. Некоторое время назад меня заинтересовало, что уже умеет ИИ в плане написания музыки для песен, и, собственно, исполнения этих самых песен. Стихов у нас много, уже вышли 4 книги, еще 3. . .
От async/await к виртуальным потокам в Python
IndentationError 23.11.2025
Армин Ронахер поставил под сомнение async/ await. Создатель Flask заявляет: цветные функции - провал, виртуальные потоки - решение. Не threading-динозавры, а новое поколение лёгких потоков. Откат?. . .
Поиск "дружественных имён" СОМ портов
Argus19 22.11.2025
Поиск "дружественных имён" СОМ портов На странице: https:/ / norseev. ru/ 2018/ 01/ 04/ comportlist_windows/ нашёл схожую тему. Там приведён код на С++, который показывает только имена СОМ портов, типа,. . .
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Programma_Boinc 20.11.2025
Сколько Государство потратило денег на меня, обеспечивая инсулином. Вот решила сделать интересный приблизительный подсчет, сколько государство потратило на меня денег на покупку инсулинов. . . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru