php
1<?php 2 //DB名、ユーザー名、パスワード 3 session_start(); 4 try { 5 $db = new PDO('mysql:host=localhost; dbname=csv_db; charset=utf8', 'root', ''); 6 7 } catch (PDOException $e) { 8 echo 'データベースに接続エラー' . $e->getMessage(); 9 exit(); 10 } 11 12 $errorMessage = ""; 13 $signUpMessage = ""; 14 15 16 17 if (!empty($_POST["last_name"]) && !empty($_POST["first_name"]) && !empty($_POST["password"]) && !empty($_POST["password2"]) && $_POST["password"] === $_POST["password2"]) { 18 19 $id = $_POST['id']; 20 $last_name = $_POST['last_name']; 21 $first_name = $_POST['first_name']; 22 $last_name_kana = $_POST['last_name_kana']; 23 $first_name_kana = $_POST['first_name_kana']; 24 $password = $_POST['password']; 25 $email = $_POST['email']; 26 $company_name = $_POST['company_name']; 27 $department = $_POST['department']; 28 $postal_code_1 = $_POST['postal_code_1']; 29 $postal_code_2 = $_POST['postal_code_1']; 30 $pref = $_POST['pref']; 31 $address_1 = $_POST['address_1']; 32 $address_2 = $_POST['address_2']; 33 $tel_1 = $_POST['tel_1']; 34 $tel_2 = $_POST['tel_2']; 35 $tel_3 = $_POST['tel_3']; 36 $created_at = $_POST['created_at']; 37 $updated_at = $_POST['updated_at']; 38 39 $stmt = $db->prepare("INSERT INTO userData(name, password,value) VALUES (?, ?)"); 40 $stmt->execute(array($first_name,$last_name, password_hash($password, PASSWORD_DEFAULT))); 41 42 $id = $db->lastinsertid(); 43 $signUpMessage = '登録が完了しました。あなたの登録IDは '. $id. ' です。パスワードは '. $password. ' です。'; 44} 45?>
上記のように、カラムがたくさんあるのですが上手くデータベースに情報が登録されません
データベースには上手く接続出来ているのですが、なぜなのでしょうか?
この下にhtmlでデータ入力欄があり、1つ1つにvalueで値は与えていますが上手くいきません。
実行環境についても説明がほしい。パソコンでテスト中なのであればwebサーバーやphpやmysqlをどうやってインストールしたり設定したりしたのか。レンタルサーバーなのであれば業者名やプラン名など。
現在の実行環境はxamppです。
>データベースには上手く接続出来ているのですが、
これはどのように確認されているのでしょう?
try catch でデータベースに接続出来ているか、そうでないかと分岐させていてエラーを吐かずに表記されています。
仮になのですが、カラム名がデータベースと一つでも結びついていないとデータは格納されないのでしょうか?
PHPではなくコンソールから「id:root pw:(なし)」ログインできますか?
ログイン出来たら
use csv_db;
desc userData;
とコマンドを入力して結果を教えて。
そもそものPHP記述の仕方が間違えていたみたいでした。
1からファイルを作り直してます。
そもそものPHP記述の仕方が間違えていたみたいでした。
1からファイルを作り直してます。
回答3件
あなたの回答
tips
プレビュー