質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
87.20%
PHP

PHPは、Webサイト構築に特化して開発されたプログラミング言語です。大きな特徴のひとつは、HTMLに直接プログラムを埋め込むことができるという点です。PHPを用いることで、HTMLを動的コンテンツとして出力できます。HTMLがそのままブラウザに表示されるのに対し、PHPプログラムはサーバ側で実行された結果がブラウザに表示されるため、PHPスクリプトは「サーバサイドスクリプト」と呼ばれています。

解決済

パスワードをハッシュ化してDBに格納する

banianizm
banianizm

総合スコア92

PHP

PHPは、Webサイト構築に特化して開発されたプログラミング言語です。大きな特徴のひとつは、HTMLに直接プログラムを埋め込むことができるという点です。PHPを用いることで、HTMLを動的コンテンツとして出力できます。HTMLがそのままブラウザに表示されるのに対し、PHPプログラムはサーバ側で実行された結果がブラウザに表示されるため、PHPスクリプトは「サーバサイドスクリプト」と呼ばれています。

2回答

0リアクション

0クリップ

341閲覧

投稿2018/08/27 04:19

php

<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>テスト</title> </head> <body> <?php //パスワードの暗号化 $hash_pass = password_hash($_POST['password'], PASSWORD_DEFAULT); /*try {*/ //$pro_id=$_POST['id']; $pro_name=$_POST['name']; $pro_password=$_POST['password']; //$pro_created=$_POST['created']; //$pro_modified=$_POST['modified']; //$pro_delflg=$_POST['delflg']; //$pro_user=$_POST['user']; //$pro_id=htmlspecialchars($pro_id,ENT_QUOTES,'UTF-8'); $pro_name=htmlspecialchars($pro_name,ENT_QUOTES,'UTF-8'); $pro_password=htmlspecialchars($pro_password,ENT_QUOTES,'UTF-8'); //$pro_created=htmlspecialchars($pro_created,ENT_QUOTES,'UTF-8'); //$pro_modified=htmlspecialchars($pro_modified,ENT_QUOTES,'UTF-8'); //$pro_delflg==htmlspecialchars($pro_delflg,ENT_QUOTES,'UTF-8'); //$pro_user==htmlspecialchars($pro_user,ENT_QUOTES,'UTF-8'); //データベース接続情報 $dsn='mysql:dbname=test;host=localhost;charset=utf8'; $user='root'; $password=''; //データベース接続開始 $dbh = new PDO($dsn,$user,$password); $dbh->setAttribute(PDO::ATTR_ERRMODE,PDO::ERRMODE_EXCEPTION); //sqlインサート文 $sql='INSERT INTO login_users(name,password) VALUES (?,?)'; $stmt=$dbh->prepare($sql); $stmt->bindParam(':id', $_POST['id']); $stmt->bindParam(':password', $hash_pass); //$data[]=$pro_id; $data[]=$pro_name; $data[]=$pro_password; //$data[]=$pro_created; //$data[]=$pro_modified; //$data[]=$pro_delflg; //$data[]=$pro_user; //実行する結果を返す $stmt->execute($data); // $dbh=null; //print $pro_id; //print 'を追加しました。<br />'; print $pro_name; print 'を追加しました。<br />'; print $pro_password; print 'を追加しました。<br />'; //print $pro_created; //print 'を追加しました。<br />'; //print $pro_modified; //print 'を追加しました。<br />'; //print $pro_delflg; //print 'を追加しました。<br />'; //print $pro_user; //print 'を追加しました。<br />'; /*} catch(Exception$e) { print'ただいま障害により大変ご迷惑をお掛けしております。'; exit(); }*/ ?> <a href="pro_list.php">戻る</a> </body> </html> phpでユーザー登録機能を作っています。 上記のコードではハッシュ化されたパスワードがDBに格納されません。 ハッシュ化されていないものはDBに入ります。 どこをなおせばいいのでしょうか? ■■な機能を実装中に以下のエラーメッセ ージが発生しました。 ### 発生している問題・エラーメッセージ

エラーメッセージ

### 該当のソースコード ```ここに言語名を入力 ソースコード

試したこと

ここに問題に対して試したことを記載してください。

補足情報(FW/ツールのバージョンなど)

ここにより詳細な情報を記載してください。

以下のような質問にはリアクションをつけましょう

  • 質問内容が明確
  • 自分も答えを知りたい
  • 質問者以外のユーザにも役立つ

リアクションが多い質問は、TOPページの「注目」タブのフィードに表示されやすくなります。

気になる質問をクリップする

クリップした質問は、後からいつでもマイページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

下記のような質問は推奨されていません。

  • 間違っている
  • 質問になっていない投稿
  • スパムや攻撃的な表現を用いた投稿

適切な質問に修正を依頼しましょう。

2018/08/27 05:44

こちらの質問が他のユーザーから「過去の低評価」という指摘を受けました。

m.ts10806

2018/08/27 04:32 編集

ご自身で質問を読み返してみてもらいたいのですが、これで伝わるでしょうか?読みやすいでしょうか?ノイズとなりえる部分がたくさんあります(テンプレート文言が残っていたり)。実際の「質問」の文章の部分が見つけづらいです。見え方については質問編集画面でプレビューが表示されるのでそちらをご確認しながら調整してください。
m.ts10806

2018/08/27 04:37

またDBのテーブル定義も提示してください。どのカラムがどの型でサイズは幾らで というのがわかれば良いです。もし「入らない」のであればSQLがエラーを返しているはずです。そのエラーを確認してください。 https://teratail.com/questions/4366

まだ回答がついていません

会員登録して回答してみよう

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
87.20%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問

同じタグがついた質問を見る

PHP

PHPは、Webサイト構築に特化して開発されたプログラミング言語です。大きな特徴のひとつは、HTMLに直接プログラムを埋め込むことができるという点です。PHPを用いることで、HTMLを動的コンテンツとして出力できます。HTMLがそのままブラウザに表示されるのに対し、PHPプログラムはサーバ側で実行された結果がブラウザに表示されるため、PHPスクリプトは「サーバサイドスクリプト」と呼ばれています。