2016-12-06 21 views
1

私の現在のウェブサイトコントロールパネルはPLESK Parallelsで、私は自分のウェブサイトでPDO MSSQLを使用しようとしています。PleskでPHP MSSQL PDOを使用

私はインターネットを検索しましたが、私はPDO dllがphp.iniファイルなどにある必要があることを知っていますが、YUMやiのようなコマンドを使って、私は混乱しています。

私は、このコマンドは、私はエラーメッセージを取得する位置しています私のページをロードすると、私は単にこの

try { 
$hostname = "myhostname"; 
$port = myportnumber; 
$dbname = "databasename"; 
$username = "user"; 
$pw = "password"; 
$dbh = new PDO ("dblib:host=$hostname:$port;dbname=$dbname","$username","$pw"); 
} catch (PDOException $e) { 
echo "Failed to get DB handle: " . $e->getMessage() . "\n"; 
exit; 
} 

のようなコードを実行できるように、おそらく誰かが、無地、シンプルな黒と白の指示で、プロセスを説明することができます

は、 'DBハンドルの取得に失敗しました:ドライバを見つけることができませんでした'をインストールする

+0

あなたはこの質問をhttp://serverfault.com/ – cmorrissey

+0

@ cmorrisseyで聞いてください。私は同意しません。 Serverfaultは、 "cPanelのようなサービスプロバイダーの管理インターフェースを使って作業する"という質問はないと明確に述べています。それにはPleskも含まれます。 – icecub

+0

@icecub Pleskは、DLLのインストールとphp.iniファイルの更新に関するこの質問とはまったく関係ありません。問題は、提供されたコードとは関係がありません。 – cmorrissey

答えて

0

例を

感謝PleskのPHP 5.6ためのCentOSのようなOS上210:

# yum install plesk-php56-devel 
# /opt/plesk/php/5.6/bin/pecl download pdo_dblib 
# tar -xzf PDO_DBLIB-1.0.tgz 
# cd PDO_DBLIB-1.0/ 
# /opt/plesk/php/5.6/bin/phpize 
# ./configure --with-php-config=/opt/plesk/php/5.6/bin/php-config --with-pdo-dblib=./freetds 

# vim pdo_dblib.c 

ライン#37で置き換える:

function_entry pdo_dblib_functions[] = { 

をして:

zend_function_entry pdo_dblib_functions[] = { 

保存ファイルと:

# make 
# make install 

のようなものが表示されるはずです

Installing shared extensions:  /opt/plesk/php/5.6/lib64/php/modules/ 

拡張機能を有効にする:

# echo "extension=pdo_dblib.so" >> /opt/plesk/php/5.6/etc/php.d/pdo_dblib.ini 

は確認します。

# /opt/plesk/php/5.6/bin/php -m | grep pdo_dblib 
pdo_dblib 

今PHPハンドラ5.6とのPleskのサイトと連携する:

$dbh = new PDO ("dblib:host=$hostname:$port;dbname=$dbname","$username","$pw"); 

ご注意を用:

+0

キーワード:エラー:不明なタイプ名 'function_entry'既知のインストールディレクトリにFreeTDSが見つかりません –

-1

PHP PDOはOOPSで動作します。

PHP PDOでは、まずPHPライブラリで定義されているPDOクラスを使用してデータベースハンドラを作成する必要があります。データベースクエリのオブジェクトとして機能します。

PDOクラスを使用してデータベースに接続すると、PDO接続中に取得したデータベースハンドラを使用してクエリを再生する準備ができなくなります。

$dbh = new PDO ("dblib:host=$hostname:$port;dbname=$dbname","$username","$pw"); 

ここで、$ dbhはMySQLクエリ処理のデータベースハンドラオブジェクトとして機能します。

私はPHP PDO hereの個人ブログを持っています。ちょうど参照に行き、照会がいかに働いているか見てみてください。最後に、私はそれがとてもシンプルで安全だと言いたいと思います。

+0

申し訳ありませんが、間違いなく関連しています。 –

関連する問題