За последние 24 часа нас посетили 21577 программистов и 1028 роботов. Сейчас ищут 749 программистов ...

Ошибка конекта к базе mssql, header и session start

Тема в разделе "PHP для новичков", создана пользователем bonev, 13 дек 2016.

Метки:
  1. bonev

    bonev Новичок

    С нами с:
    11 дек 2016
    Сообщения:
    21
    Симпатии:
    0
    Здравствуйте дорогие участники форума у меня возникла проблема, я только учусь писать скрипты и вот столкнулся с такой проблемой
    upload_2016-12-13_1-59-30.png

    Не понимаю в чем проблема вот скрипт с 1 по 17 строку

    Код (Text):
    1. <?
    2. session_start();
    3. header('Content-Type: text/html; charset=utf-8');
    4. error_reporting(E_ALL);
    5. ob_start();
    6.  
    7. define('SYS_STARTED', true);
    8. define('SYS_ROOT', realpath(dirname(__FILE__)) . '/');
    9. define('SYS_USER', SYS_ROOT . 'user');
    10. define('SYS_SYSTEM', SYS_ROOT . 'system');
    11.  
    12. require(SYS_ROOT . 'config.php');
    13.  
    14. load_source('sessions', 'system', 'security', 'forms', 'encryption', 'pagination');
    15.  
    16. $conn = mssql_connect($mssql_config['server'], $mssql_config['user'], $mssql_config['password']) or die('Could not connect to database check!');
    Если меняю mssql_connect на odbc_connect коннект идет и выводится сообщение "Could not connect to database check" и по прежнему Call to undefined function

    вот кинфиг целиком
    Код (Text):
    1. <?php
    2. include ('../../config/config.php');
    3. include ('../../config/functions.php');
    4. //MSSQL login details game side
    5. $mssql_config = array(
    6.     'server' => $dbHost,
    7.     'user' => $dbUser,
    8.     'password' => $dbPass
    9. );
    10. // Admin Login and password to login admin panel
    11. $admin_config = array(
    12.     'username' => '123',
    13.     'password' => '123'
    14. );
    15. //full link to your script location (other setting dont change)
    16. $config = array(
    17.     'home_url' => '.',
    18.     'random_code' => '347yog8s77yafre3tcst',
    19.     'max_slots' => 20,
    20. );
    21. //categorie
    22. $categorie = "<p style='position:relative;'><strong><i>Категории:</i></strong></p>";
    23. // item section just add (, 'Category',) same DELETE
    24. $items_cats = array(1 => 'Рекомендуемые <br>', 'Акции <br>', 'Оружие <br>', 'Доспехи <br>', 'Кристаллы <br>', 'Питомцы <br>', 'Костюмы <br>', 'Еждовые животные <br>' , 'Бижутерия <br>' , 'Плащи <br>' , 'Разное <br>' );
    25. ?>
    Скрипт веб шопа для игры, помогите буду очень благодарен.
     

    Вложения:

  2. MouseZver

    MouseZver Суперстар

    С нами с:
    1 апр 2013
    Сообщения:
    7.752
    Симпатии:
    1.322
    Адрес:
    Лень
    копай в core.php ob_start();
     
  3. bonev

    bonev Новичок

    С нами с:
    11 дек 2016
    Сообщения:
    21
    Симпатии:
    0
    Код (Text):
    1. <?
    2. session_start();
    3. header('Content-Type: text/html; charset=utf-8');
    4. error_reporting(E_ALL);
    5. ob_start();
    6.  
    7. define('SYS_STARTED', true);
    8. define('SYS_ROOT', realpath(dirname(__FILE__)) . '/');
    9. define('SYS_USER', SYS_ROOT . 'user');
    10. define('SYS_SYSTEM', SYS_ROOT . 'system');
    11.  
    12. require(SYS_ROOT . 'config.php');
    13.  
    14. load_source('sessions', 'system', 'security', 'forms', 'encryption', 'pagination');
    15.  
    16. $conn = mssql_connect($mssql_config['server'], $mssql_config['user'], $mssql_config['password']) or die('Could not connect to database check!');
    17.  
    18. if (safe_get($_GET)) die('Security activated');
    19.    
    20. $user_is_logged = false;
    21. if (is_logged('user')) {
    22.     $query = mssql_query("SELECT * FROM PS_UserData.dbo.Users_Master WHERE UserID = '" . read_session('username') . "'");
    23.     $user_data = mssql_fetch_array($query);
    24.     $user_is_logged = true;
    25. }
    26.  
    27. $admin_is_logged = false;
    28. if (is_logged('admin')) $admin_is_logged = true;
    29.  
    30. $validate = get_url_param('validate');
    31.  
    32. if ($validate) {
    33.     $validation_path = 'user';
    34.    
    35.     if (_basename(current_url()) == 'admin.php') {
    36.         $validation_path = 'admin';
    37.        
    38.         if ($validate != 'login') {
    39.             // check if the administrator is offline
    40.             if (!is_logged('admin')) redirect('admin.php', true);
    41.         }
    42.     } else {
    43.         if ($validate != 'login') {
    44.             // check if the user is offline
    45.             if (!is_logged('user')) redirect('', true);
    46.         }
    47.     }  
    48.    
    49.     load_module('validate_' . $validate, 'validation', $validation_path);
    50. }
    51.  
    52. function load_source() {
    53.   foreach (func_get_args() as $src_name) {
    54.     $src_file = SYS_SYSTEM. '/source/'. $src_name .'.src.php';
    55.     if (file_exists($src_file))
    56.       require_once($src_file);
    57.         else
    58.             die('<b>'. $src_name. '.src.php</b> not found');
    59.   }
    60. }
    61. ?>
    вот весь core я его полностью перелопатил, но так и не понял причину, скорее всего мне не хватает знаний)
     
  4. MouseZver

    MouseZver Суперстар

    С нами с:
    1 апр 2013
    Сообщения:
    7.752
    Симпатии:
    1.322
    Адрес:
    Лень
    поступим иначе:
    Скачиваем нотепад ++ и преобразовываем скрипт в кодировку UTF-8 без BOM
     
    Deonis нравится это.
  5. Deonis

    Deonis Старожил

    С нами с:
    15 фев 2013
    Сообщения:
    1.521
    Симпатии:
    504
  6. bonev

    bonev Новичок

    С нами с:
    11 дек 2016
    Сообщения:
    21
    Симпатии:
    0

    upload_2016-12-13_4-30-20.png

    И так в этой кодировке
    Еще предложения?)) :D
     
  7. Slavka

    Slavka Активный пользователь

    С нами с:
    1 окт 2013
    Сообщения:
    722
    Симпатии:
    41
    я один чтоли заметил - что у него не подключено mssql расширение ?
    call to undefined function mssql_connect

    в php.ini ищи и подключай ( но не всегда сразу получается - мелкософт впереди планеты всей) - возможно придется качать с сайта мелкософт чтото типа драйвера это раз .. и второе - на скока я понял - использовать mssql расширение можно ТОЛЬКО на win компах =) и работает оно через odbc - вот такой вот мелкософтовский бред.
     
  8. bonev

    bonev Новичок

    С нами с:
    11 дек 2016
    Сообщения:
    21
    Симпатии:
    0

    Если я ставлю odbc_connect то тогда идет коннект к базе, но также пишет что расширение odbc не подключено, вот такой вот бред

    а с session_start(); вообще не понятно)
    в других скриптах все норм работает, проблема только тут
     
  9. Slavka

    Slavka Активный пользователь

    С нами с:
    1 окт 2013
    Сообщения:
    722
    Симпатии:
    41
    как вы делаете коннект odbc покажите

    да и потом определитесь что чиним - odbc или mssql
    --- Добавлено ---
    по части сессий я кажется понимаю - скорей всего дело обстоит так
    в /script/webmail/
    лежит файл index.php примерно такого содержания
    PHP:
    1. <?
    2. session_start()      - либо header('Content-Type: text/html; charset=utf-8');
    3. include "core.php";
    --- Добавлено ---
    сижу и пытаюсь понять смысл фразы
    если расширение odbc не подключено - какой к черту коннект к базе ?
     
  10. bonev

    bonev Новичок

    С нами с:
    11 дек 2016
    Сообщения:
    21
    Симпатии:
    0
    нет, не так у меня там только 1-а строчка и это
    Код (Text):
    1. <?php  require_once('core.php'); ?>
    Больше ничего нет из php что качается этого, дальше идет другая функция

    Код (Text):
    1. <?php
    2.                     if ($user_is_logged) {
    3.                         echo "<fieldset id='cats'>";
    4.                         echo "$categorie";
    5.                         $i = 1;
    6.                         $count = count($items_cats);
    7.                         foreach ($items_cats as $key => $value) {
    8.                             if (get_url_param('cat') == $key) $active_cat = "class='active_cat'"; else $active_cat = "";
    9.                        
    10.                             echo "<a  href='{$config['home_url']}/index.php?cat={$key}' {$active_cat}>{$value}</a>";
    11.                             if ($count != $i) echo "";
    12.                            
    13.                             $i++;
    14.                         }
    15.                     echo "</fieldset>";
    16.                 ?>
    17.                     <div id='menu'>
    18.                         <?php  echo $user_data['Point']; ?></b>
    19.                         <?php  echo ($user_data['Point'] > 1) ? '' : 'ZZgold'; ?><img style="margin-bottom:-10px;" src="user/images/ap.png"/>
    20.                     </div>
    21.                 <?php
    22.                         load_module((get_url_param('do')) ? get_url_param('do') : 'main', '', 'user');
    23.                     } else {
    24.                         load_module('login', '', 'user');
    25.                     }
    26.                 ?>
     
  11. Slavka

    Slavka Активный пользователь

    С нами с:
    1 окт 2013
    Сообщения:
    722
    Симпатии:
    41
    а не из пхп - до
    <?php require_once('core.php'); ?>

    хоть чтонить есть ?
    если даже вот так будет - будет ошибка

    PHP:
    1. пробел
    2. <?php  require_once('core.php'); ?>
     
    bonev нравится это.
  12. bonev

    bonev Новичок

    С нами с:
    11 дек 2016
    Сообщения:
    21
    Симпатии:
    0
    Все заработало, сделал таким образом
    Код (Text):
    1. $conn = @odbc_connect("Driver={SQL Server};Server=".$mssql_config['server'], $mssql_config['user'], $mssql_config['password']) or die('Could not connect to database check!');
    upload_2016-12-13_12-52-44.png
    --- Добавлено ---
    Всем спасибо за помощь! ;)
     
  13. Slavka

    Slavka Активный пользователь

    С нами с:
    1 окт 2013
    Сообщения:
    722
    Симпатии:
    41
    переходи на pdo тебе говорю - там проверки на всякие инжекты встроены
     
  14. bonev

    bonev Новичок

    С нами с:
    11 дек 2016
    Сообщения:
    21
    Симпатии:
    0
    Буду переходить потихоньку :)
     
  15. MouseZver

    MouseZver Суперстар

    С нами с:
    1 апр 2013
    Сообщения:
    7.752
    Симпатии:
    1.322
    Адрес:
    Лень
    взял собаку влепил @ :eek:
    это как: У меня зуб болит !!! выпью таблетку место приема к врачу.
     
  16. bonev

    bonev Новичок

    С нами с:
    11 дек 2016
    Сообщения:
    21
    Симпатии:
    0
    :D:D:D