0

私はSQLサーバーの初心者です。MySQLを使用するアプリケーションがあり、そのアプリケーションでMySQLの代わりにSQLサーバーを使用したいと考えています。私のphpは:

<?php
$myServer = "localhost";
$myUser = "";
$myPass = "";
$myDB = "UNIVERSITY"; 

//connection to the database
$dbhandle = mssql_connect($myServer, $myUser, $myPass)
 or die("Couldn't connect to SQL Server on $myServer"); 

//select a database to work with
$selected = mssql_select_db($myDB, $dbhandle)
 or die("Couldn't open database $myDB"); 

//declare the SQL statement that will query the database
$query = "SELECT clgname";
$query .= "FROM dbo.clg ";

//execute the SQL query and return records
$result = mssql_query($query);

$numRows = mssql_num_rows($result);
if($numRows==0){
echo "false";
}
else{
echo "true";
}

//close the connection
mssql_close($dbhandle);
?>

の前のセミコロンも削除します

extension=php_mssql.dll

しかし、私はエラーが表示されます:

Fatal error: Call to undefined function mssql_connect() in C:\xampp\htdocs\1.php on line 8

助けてください。ありがとう。

4

3 に答える 3

0

お使いの PHP は mssql 拡張機能を使用してコンパイルされません。ホスティング プロバイダーがサポートしている場合はそれを有効にするように依頼してください。独自のサーバーがある場合は、mssql 拡張機能を使用して PHP をコンパイルするだけです --with-mssql=DIR DIR は FreeTDS インストール プレフィックスです。また、FreeTDS は --enable-msdblib を使用してコンパイルする必要があります。

于 2013-01-27T13:58:01.303 に答える
0

PDO を使用してこれを機能させることができます。私はそれを MSSQL で使用しており、うまく機能します。例:

try {
    $mssql = new PDO('mssql:host=localhost;dbname=UNIVERSITY', 'username', 'passwd');
    $sth = $mssql->prepare("SELECT * FROM STUDENTS");
    $sth->execute();
    $students_list = array();
    $students_list = $sth->fetchAll();
    $mssql = null;
} catch (PDOException $e) {
    $students_list = null;
}

編集:si-leは正しいです。これを機能させるには、mssqlモジュールをインストールし、php.iniに行を追加する必要もあります

于 2013-01-27T13:58:25.080 に答える
0

mssql 拡張機能が正しく有効になっていないようです...

WAMP をローカルで実行している場合は、いくつかの追加手順を完了する必要がある場合があります。

これについてのブログを見つけて、ここに自分のブログを作成しました。

http://pjgcreations.blogspot.co.uk/2013/01/enabling-ms-sql-extensions-in-wamp.html

基本的な考え方は次のとおりです。

  1. ntwdblib.dll をダウンロード: http://www.pjgcreations.co.uk/BlogAttachments/ntwdblib.DLL
  2. WAMP アイコン -> PHP -> PHP 拡張機能をクリックし、「php_mssql」と「php_pdo_mssql」にチェックを入れます。(Wamp が再起動し、いくつかのエラーが表示されますが、無視してください)
  3. WAMP をもう一度再起動して、設定が保存されていることを確認します。
  4. 最後に、ntwdblib ファイルを次の 2 つのディレクトリに配置します: "wamp\bin\php\php5.3.1" (または使用しているバージョンに関連する PHP ディレクトリ) および "wamp\bin\apache\apache2.2.11\bin" (または、使用しているバージョンに関連する Apache ディレクトリ)
  5. wampserver を再起動すれば完了です!

お役に立てれば!

于 2013-01-27T14:04:06.253 に答える