1

適切な情報を含む php ファイルがありますが、SQL データベースに ODBC 接続できない理由がわかりません。

2 つのファイルがあり、データベースに接続された単純な Web ページを作成しようとしています。

最初のファイル (odbc_vertices.php):

   <?php

   //creates an odbc connection and stores it in $odbc variable
   $odbc = odbc_connect ('VERTICES', 'correctusername','correctpassword') or die ( "Could Not Connect to ODBC Database!" );

   ?>

2 番目のファイル (phptest.php):

   <html>

   <head>
   <title></title>
   </head>

   <body>

   <?php


   include 'odbc_vertices.php'; 
   ?>


  <select name='vndr'>
  <option selected>
  <?php
     $query =odbc_exec($odbc_vertices,"SELECT * FROM tblOrder where Receive=No Order  BY TapeType") or die (odbc_errormsg());
            while ($row=odbc_fetch_array($query))
                   {


                    echo "<option value='".$row['VendorName']."'>".strtoupper($row ['VendorName'])."</option>";

                   }
   ?>
      </select>
      <INPUT TYPE=HIDDEN NAME='nam' SIZE='2'>


      <?php

   odbc_close($odbc_vertices);
   ?>

   </body>

   </html>

ただし、ページをテストすると、次のエラーが表示されます。

警告: odbc_connect() [function.odbc-connect]: SQL エラー: [Microsoft][ODBC SQL Server Driver][SQL Server]Login failed for user 'NT AUTHORITY\ANONYMOUS LOGON'., SQL state 28000 in SQLConnect in odbc_vertices. 4行目のphpはODBCデータベースに接続できませんでした!

接続を成功させるために、odbc_vertices.php ファイルで何を変更する必要があるかを把握しようとしています。どんな助けでもいただければ幸いです

4

1 に答える 1

0

私の考えでは、ODBC DSN「Vertices」がマシン自体で正しく設定されていません。

私の提案は、次のようなコードを試すことです。

$conn = odbc_connect("Driver={SQL Server Native Client 10.0};Server=YOURSERVERDatabase=DATABASE", 'correctusername','correctpassword');
$query = odbc_exec($conn,"SELECT * FROM tblOrder ...") or die (odbc_errormsg());

上記が失敗した場合、その他の接続文字列はhttp://www.connectionstrings.com/sql-server/にあります。

私の他の考えは、正しいユーザー名がデータベースにアクセスできるように、データベース内のユーザー権限が正しく設定されていないということです

于 2013-08-06T08:24:39.553 に答える