Подключение веб-сайта к базе данных SQL Azure с помощью PHP

#php #html #azure #html-table

#php #HTML #azure #html-таблица

Вопрос:

Я уже давно пытаюсь подключить свой веб-сайт к базе данных SQL Azure. На моем персональном компьютере у меня настроен XAMP с драйверами (я думаю). Вот код:

             <tr>
                <th scope="col">Link</th>
                <th scope="col">Assigned to</th>
                <th scope="col">Category</th>
            </tr>
            <?php

            // SQL Server Extension Sample Code:
            $connectionInfo = array("UID" => "*****", "pwd" => "*******", "Database" => "SAND", "LoginTimeout" => 30, "Encrypt" => 1, "TrustServerCertificate" => 0);
            $serverName = "tcp:myfsusqlserver.database.windows.net,1433";
            $conn = sqlsrv_connect($serverName, $connectionInfo);


            $selected = mysql_select_db('SAND', $conn); //select db
            $viewQuery = "select * from dbo.LINK join dbo.CUSTOMER";
            $execute = mysql_query($viewQuery);
            while($dataRows=mysql_fetch_array($execute))
            {
                $url = $dataRows['URL'];
                $email = $dataRows['CUSTOMER_ID'];
                $cat = $dataRows['CAT_ID'];
                
            }?> 
            <tr>
                <td><?php echo $url; ?></td>
                <td><?php echo $email; ?></td>
                <td><?php echo $cat; ?></td>

            </tr>
            </table>
           ?php>
 

Если бы кто-нибудь мог помочь мне разобраться в моей проблеме, это было бы с благодарностью.

Быстрое обновление:

Это дало мне эту ошибку:

Неустранимая ошибка: неперехваченная ошибка: вызов неопределенной функции sqlsrv_connect() в C:xampphtdocsBUILDERSEXCHANGEWEBSITEindex.php:67 Трассировка стека: #0 {main} добавлено C:xampphtdocsBUILDERSEXCHANGEWEBSITEindex.php в строке 67

Комментарии:

1. Кажется, вы используете неправильный метод. Для подключения к Azure SQL или любому SQL-серверу с использованием PHP необходимо установить необходимые драйверы на основе вашей операционной системы. Вы можете выбрать драйвер SQLSRV или драйвер PDO .

2. sqlsrv_connect является частью драйвера PHP для SQL Server. Вам необходимо загрузить и установить этот драйвер и изменить все mysql_ вызовы функций соответствующими функциями из установленного драйвера ( sqlsrv_ функций). И, конечно, использование PDO , вероятно, лучший вариант здесь.

3. Я пытаюсь установить драйверы PHP на Xampp и открываю phpInfo на панели инструментов, но я его не вижу…

Ответ №1:

Ваш код не подходит для базы данных SQL Azure.

Используйте этот пример подключения к базе данных SQL Azure и запрашивайте данные:

 <?php
    $serverName = "your_server.database.windows.net"; // update me
    $connectionOptions = array(
        "Database" => "your_database", // update me
        "Uid" => "your_username", // update me
        "PWD" => "your_password" // update me
    );
    //Establishes the connection
    $conn = sqlsrv_connect($serverName, $connectionOptions);
    $tsql= "SELECT TOP 20 pc.Name as CategoryName, p.name as ProductName
         FROM [SalesLT].[ProductCategory] pc
         JOIN [SalesLT].[Product] p
         ON pc.productcategoryid = p.productcategoryid";
    $getResults= sqlsrv_query($conn, $tsql);
    echo ("Reading data from table" . PHP_EOL);
    if ($getResults == FALSE)
        echo (sqlsrv_errors());
    while ($row = sqlsrv_fetch_array($getResults, SQLSRV_FETCH_ASSOC)) {
     echo ($row['CategoryName'] . " " . $row['ProductName'] . PHP_EOL);
    }
    sqlsrv_free_stmt($getResults);
?>