2012-02-03 9 views
1

Windowsサーバーで動作するWebサイトがあり、正常に動作します。私は自分のローカルホストにコピーを作ってみましたが、私はエラーを取得:このエラーを修正する方法:データソース名が見つかりません。デフォルトのドライバが指定されていません。

Warning: odbc_connect() [function.odbc-connect]: SQL error: [Microsoft][ODBC Driver Manager] Data source name not found and no default driver specified, SQL state IM002 in SQLConnect in C:\xampp\htdocs\tdms\webfolders\secured\db_fns.php on line 29 
Could not connect to database server 

ライン29は含まれています

function fgsdb_connect() 
{ 

    $a=array(); 
    $retvar=0; 

    $result = odbc_connect('FGS','tdms','tdms358',SQL_CUR_USE_ODBC); //---->line 29 

    if (!$result) // cannot establish connection to database 

    throw new Exception('Could not connect to database server'); 

    else // connection to database has been established 

    return $result; 

} 

私は、ODBCには本当に新しいです。ウェブサイトはPHPで書かれており、私がmySQLで使っているデータベースです。私はそれが接続しようとしているデータベースは、Microsoft AccessのMDEファイルだと思った。 (私はWindowsサーバーのサイトでチェックしました)どうすればいいですか?すみませんが、私は本当に

+0

権限...? –

+0

どういう意味ですか?ごめんなさい。私は本当に初心者です。 : – prukuhkoo

+0

アクセス許可:ページがデータベースへのアクセスとしてIDを実行していますか? –

答えて

2

ODBCデータソースを設定するためのショートカットは、64ビットではなく32ビットデータソースを指している可能性があります。

コントロールパネル - >管理ツール - >データソースの選択(ODBC) - >そのファイルを右クリック - >プロパティ - >ショートカットタブで - >パスを

%windir%\System32\odbcad32.exe 

%windir%\SysWOW64\odbcad32.exe 

へとあなたの接続を行います。 MS Access用のドライバは正常に動作します。

、それは仕事をdoesntの場合、このような文でODBCに接続しよう:

$conn = odbc_connect("Driver={Microsoft Access Driver (*.mdb)};Dbq=C:\YourFolder\YourFile.mdb",'Youruser', 'YourPassword'); 

最後の2休職そしてちょうど「」あなたは、任意のユーザーまたはパスワード

0

を持っていけない場合私は、PHP 7.0.8 64ビットでAccess .mdbに接続しようとしているときに同じエラーが発生していました。

私は二つのことをしなければならなかった:

  1. は、「Microsoft Accessデータベースエンジン2010再頒布可能」(でもアクセス2016で私はあなたのエラーを取得したインストール)の64ビット版をインストールします。 、そして、

    https://www.microsoft.com/en-us/download/details.aspx?id=13255

    を使用すると、ODBCデータソースアドミニストレータに行けば、あなたは64ビット版に気づく必要があります:あなたはからドライバをダウンロードすることができます。

  2. 変更ドライバ文字列に:

Driver={Microsoft Access Driver (*.mdb, *.accdb)}が、それは他の人がお役に立てば幸いです。

関連する問題

 関連する問題