お世話になっております。
前回こちらでPDOを使ってインサートのコードのレクチャーをいただいたのですが
今回は前回(下記)のものを使用して以下のことを行いたいと考えています。
- 1, "lib/function.php" に DBに登録をするfunctionを作成する
- 2, "/form/hoge.php" 内で、1で作成したfunctionを呼び出してDBに登録する。
上記のことを行いたいのですが、前回もPDOについて多くの指摘等いただきましたがまだ理解が乏しく
Fatal error: Call to a member function prepare() on a non-object in~~~~~~~~
というエラーになってしまいます。
ご教示お願い致します。
lang
1 2//function.php 3 4 5<?php 6function Insert(){ 7 try { 8 $pdo = new PDO('mysql:host=localhost;dbname=form_test;charset=utf8', 'user name', 'password'); 9 10 11 $sql = "INSERT INTO `form`("; 12 $sql .= "`id`"; 13 $sql .= ", `company_name`"; 14 $sql .= ", `company_unit`"; 15 $sql .= ", `name`"; 16 $sql .= ", `name_furigana`"; 17 $sql .= ", `mail_address`"; 18 $sql .= ", `tel1`"; 19 $sql .= ", `tel2`"; 20 $sql .= ", `tel3`"; 21 $sql .= ", `fax1`"; 22 $sql .= ", `fax2`"; 23 $sql .= ", `fax3`"; 24 $sql .= ", `postal_code1`"; 25 $sql .= ", `postal_code2`"; 26 $sql .= ", `zip`"; 27 $sql .= ", `address`"; 28 $sql .= ", `contact_us`"; 29 $sql .= ") VALUES ("; 30 $sql .= "NULL"; 31 $sql .= ", :company_name"; 32 $sql .= ", :company_unit"; 33 $sql .= ", :name"; 34 $sql .= ", :name_furigana"; 35 $sql .= ", :mail_address"; 36 $sql .= ", :tel1"; 37 $sql .= ", :tel2"; 38 $sql .= ", :tel3"; 39 $sql .= ", :fax1"; 40 $sql .= ", :fax2"; 41 $sql .= ", :fax3"; 42 $sql .= ", :postal_code1"; 43 $sql .= ", :postal_code2"; 44 $sql .= ", :zip"; 45 $sql .= ", :address"; 46 $sql .= ", :contact_us"; 47 $sql .= ")"; 48 49 50 51 $arr = []; 52 $arr[':company_name'] = $_SESSION['company']; 53 $arr[':company_unit'] = $_SESSION['company']; 54 $arr[':name'] = $_SESSION['name']; 55 $arr[':name_furigana'] = $_SESSION['name2']; 56 $arr[':mail_address'] = $_SESSION['email']; 57 $arr[':tel1'] = $_SESSION['tel1']; 58 $arr[':tel2'] = $_SESSION['tel2']; 59 $arr[':tel3'] = $_SESSION['tel3']; 60 $arr[':fax1'] = $_SESSION['fax1']; 61 $arr[':fax2'] = $_SESSION['fax2']; 62 $arr[':fax3'] = $_SESSION['fax3']; 63 $arr[':postal_code1'] = $_SESSION['zip1']; 64 $arr[':postal_code2'] = $_SESSION['zip2']; 65 $arr[':zip'] = $_SESSION['prefecture']; 66 $arr[':address'] = $_SESSION['address']; 67 $arr[':contact_us'] = $_SESSION['message']; 68 69 } catch (\PDOException $e) { 70 var_dump($e); 71} 72 } 73 74?> 75
lang
1 2//hoge.php 3 4<?php 5 6require_once('./lib/function.php'); 7 8$stmt = $pdo->prepare($sql); 9$stmt->execute($arr); 10 11?> 12 13 14 15
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2015/11/06 02:19