1

Drupal 7 サイトでユーザーがフォームに入力するとき、その情報をリモートの MS SQL サーバー データベースに入力する必要があります。これは本質的に予約システムであるため、日付/時刻や名前などの詳細を入力し、[送信] をクリックすると、これらのフィールドをリモートの MS SQL データベースにプッシュする必要があります。

a)これが可能かどうか、b)これを実装するにはどうすればよいかを知りたいです。

4

2 に答える 2

2

A.はい、可能です。

B.以下の方法をお勧めします。これは、「Drupal」の方法でもあります。

  1. リモートデータベースへの接続を確立します。コードでそれを実行したい場合はここを参照してください。また、settings.phpを構成してDrupalに処理させたい場合は、ここを参照してください。データベースを切り替えるための鍵はdb_set_active($ database)です。
  2. MSSQLデータベースに対して実行するクエリを実行します。db_set_active()を使用してデータベースを切り替えることを忘れないでください。
于 2011-09-27T07:31:24.773 に答える
0

カスタムモジュールのFormAPIを使用して、Drupalでカスタムフォームを簡単に作成できます。フォームの送信ハンドラーでは、PHP環境で使用可能な任意のライブラリを使用して、送信されたデータをMSSQLデータベースに挿入できます。データベースへの接続は、特にDrupalホストがMicrosoftOSを実行していない場合は注意が必要です。IISで実行されているDrupal7では、MSSQLドライバーでDrupalのデータベースAPIを使用できます。IISまたはDrupal7を使用していない場合、これは、 unixODBCおよびFreeTDSPDOODBCを使用するDrupalのデータベースAPIなしでも実行できます。実行しましたが、クエリで型指定されたバインドされたパラメータを使用するときに大きな問題が発生しました。を参照してください。PHP PDO-ODBC、unixODBC、およびFreeTDSで型指定されたバインドされたパラメーターを使用します

とはいえ、データベースレベルでのアプリケーションの統合は悪い考えです。このような統合は緊密に結合されています。MS SQLデータベースのスキーマを変更したり、実際のデータを列に格納する方法を変更したりすると、フォームの送信が中断されます。予約システムに、新しいデータを挿入するためのリモートAPIを提供させるのが最善です。

于 2011-09-27T07:31:59.577 に答える