2017-06-21 19 views
1

外部のMySqlデータベースから作成したPHPフォームスクリプトを外部のSQLサーバーデータベースに変換しようとしています。私は適切にデータベースをコピーして、新しいSQLサーバーデータベースに挿入するためにWPDBオブジェクトを使用するフォームを取得する際に問題が発生しているようです。両方のデータベースで同じ作成スクリプトが使用されました。wpdbを使用してPhPでSQL SERVERデータベースに挿入

挿入文:

try { 
$externalDB->insert('EmployeeApp.dbo.applicant', array(
      'first_name' => $first_name, 
      'last_name' => $last_name, 
      'middle_name' => $middle_name, 
      'suffix' => $suffix, 
      'nick_name' => $nick_name, 
      'email' => $email, 
      'idnumber' => $idnumber, 
      'street_address' => $street_address, 
      'city' => $city, 
      'state' => $state, 
      'zip' => $zip, 
      'phone' => $phone, 
      'ged' => $ged, 
      'over_18' => $over_18, 
      'previous_app' => $previous_app, 
      'previous_app_date' =>$previous_app_date, 
      'previous_emp' => $previous_emp, 
      'previous_emp_date' => $previous_emp_date, 
      'us_citizen' => $us_citizen, 
      'visa' => $visa, 
      'us_eligible' => $us_eligible, 
      'date_avail' => $date_avail, 
      'name_change' => $name_change, 
      'name_change_info' => $name_change_info, 
      'discharged' => $discharged, 
      'military' => $military, 
      'military_info' => $military_info, 
      'high_school_name' => $high_school_name, 
      'high_school_city' => $high_school_city, 
      'high_school_state' => $high_school_state, 
      'highest_grade_completed' => $highest_grade_completed, 
      'additional_skills' => $additional_skills, 
      'convicted'=> $convicted, 
      'convicted_name' => $convicted_name, 
      'convicted_date' => $convicted_date, 
      'convicted_charge' => $convicted_charge, 
      'convicted_sentence' => $convicted_sentence, 
     )); 
     $lastid = $externalDB->insert_id; 

データベース接続オブジェクト:

try{ 
$externalDB = new wpdb(EMP_DB_USER,EMP_DB_PASS, EMP_DB_NAME, EMP_DB_HOST); 
}catch(Exception $e){ 
echo $e->getmessage(); 
} 

$wpdbは、スクリプトの先頭でグローバルとして宣言されてきたと私はに接続する前に、これは完全に働いていましたSQLサーバーデータベース。 $externalDB->insert()をSQLで使用したり、単に 'dbo.applicant'や 'applicant'のような別のテーブル呼び出しを試してみる必要があるのだろうかと思います。移行については不明であり、それに関する多くの文書を見つけることができません。

答えて

0

look at the codeの場合、wpdbクラスはMySQLデータベースにのみ接続することがわかります。これはWordpressのacknowledged limitationであり、状況を修正するためにsome attempts by third partiesがあったにもかかわらず、公式はまだ起こっていない!

+0

ああありがとう、ここにいくつかの投稿があるので、これは何かのデータベースに接続すると述べているので、いくつかの混乱がありました。純粋なPHP接続とパラメータ化されたクエリをWordPressサイトで使用するように書くことは可能ですか?私は回避策としてカスタムテンプレートとして使用しており、そのテンプレート名の下にページを作成しています。 – Lynxx

関連する問題