За последние 24 часа нас посетили 18214 программистов и 1610 роботов. Сейчас ищут 1149 программистов ...

Как правильно переделать mssql_connect в sqlsrv_connect

Тема в разделе "MSSQL", создана пользователем InMix, 29 янв 2020.

  1. InMix

    InMix Новичок

    С нами с:
    29 янв 2020
    Сообщения:
    2
    Симпатии:
    0
    Привет, ребят ступор просто у меня,

    Поменял функции с mssql_connect на sqlsrv_connect вроде бы всё верно, но не работает, выдаёт ошибку, прошу помощи (Видать криво поменял)


    Не могу подружить со старой версии php 5 в новую php 7 с этими коннектами(
    Прикрепил файл рабочего кода (который работает на php5) как его подружить с php7 я хз(

    Конкретно функции коннекта к базе mssql_connect на sqlsrv_connect

    файл загрузил в txt, пхпешный

    Ребятушки выручайте, я чёт совсем не понимаю почему не работает((
    скрин ошибки тоже приложил

    Блин и удалил что делал с кодом, ппц в общем

    Прошу помощи вашей
     

    Вложения:

    • index.txt
      Размер файла:
      34,3 КБ
      Просмотров:
      4
    • Screenshot_9.png
      Screenshot_9.png
      Размер файла:
      24,2 КБ
      Просмотров:
      5
  2. Sail

    Sail Старожил

    С нами с:
    1 ноя 2016
    Сообщения:
    1.593
    Симпатии:
    362
    @InMix, до просмотра файла руки, увы не дошли, но по тексту ошибки:
    Array to string conversion в PHP7
    --- Добавлено ---
    Что в 325-й строке файла index.php и её окресностях?
     
  3. InMix

    InMix Новичок

    С нами с:
    29 янв 2020
    Сообщения:
    2
    Симпатии:
    0
    Код (Text):
    1. # показ ошибки запроса (принимает ошибку, запрос)
    2. function db_mssql_error($error, $query = '')
    3. {
    4.     if($query) {
    5.         $query_str = "$query";
    6.     }
    7.  
    8.     echo '<?xml version="1.0" encoding="iso-8859-1"?>
    9.     <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    10.     <html xmlns="http://www.w3.org/1999/xhtml">
    11.     <head>
    12.     <title>MS SQL Fatal Error</title>
    13.     <meta http-equiv="Content-Type" content="text/html; charset=windows-1251" />
    14.     <style type="text/css">
    15.     <!--
    16.     body {
    17.         font-family: Verdana, Arial, Helvetica, sans-serif;
    18.         font-size: 10px;
    19.         font-style: normal;
    20.         color: #000000;
    21.     }
    22.     -->
    23.     </style>
    24.     </head>
    25.     <body>
    26.         <font size="4">MS SQL Error!</font>
    27.         <br />------------------------<br />
    28.         <br />
    29.  
    30.         <u>The Error returned was:</u>
    31.         <br />
    32.             <strong>'.$error.'</strong>
    33.  
    34.         <br /><br />
    35.  
    36.         <textarea name="" rows="10" cols="52" wrap="virtual">'.$query_str.'</textarea><br />
    37.  
    38.     </body>
    39.     </html>';
    40.  
    41.     exit();
    42. }
    43. # функция показа списка персонажей аккаунта
    Конкретно в 325 <br /><br />

    До этого есть
    Код (Text):
    1.     echo '<?xml version="1.0" encoding="iso-8859-1"?>
    2.     <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    3.     <html xmlns="http://www.w3.org/1999/xhtml">
    4.     <head>
    5.     <title>MS SQL Fatal Error</title>
    6.     <meta http-equiv="Content-Type" content="text/html; charset=windows-1251" />
    7.     <style type="text/css">
    8.     <!--
    9.     body {
    10.         font-family: Verdana, Arial, Helvetica, sans-serif;
    11.         font-size: 10px;
    12.         font-style: normal;
    13.         color: #000000;
    14.     }
    15.     -->
    16.     </style>
    17.     </head>
    18.     <body>
    19.         <font size="4">MS SQL Error!</font>
    20.         <br />------------------------<br />
    21.         <br />
    22.  
    23.         <u>The Error returned was:</u>
    24.         <br />
    25.             <strong>'.$error.'</strong>
    Всё это дело закомментировано, частично походу уже понял в чём проблема
     
    #3 InMix, 29 янв 2020
    Последнее редактирование: 29 янв 2020
  4. Sail

    Sail Старожил

    С нами с:
    1 ноя 2016
    Сообщения:
    1.593
    Симпатии:
    362
    @InMix, из скрина видно, что переменная $error - массив.
    По файлу видно, что в её формировании участвует функция mssql_get_last_message(), которая в php 7 "was REMOVED".
    Вероятно, при её замене на аналог упущен тип возвращаемого значения.