質問編集履歴
3
情報の補足
title
CHANGED
File without changes
|
body
CHANGED
@@ -249,6 +249,9 @@
|
|
249
249
|
また、ユーザー管理のdbは以下の画像のようになっています。(usersテーブル)
|
250
250
|

|
251
251
|
|
252
|
+
テーブルの中身はこのようになっています。(テーブル内のデータ)
|
253
|
+

|
254
|
+
|
252
255
|
---
|
253
256
|
|
254
257
|
以上です。
|
2
情報の補足
title
CHANGED
File without changes
|
body
CHANGED
@@ -129,11 +129,63 @@
|
|
129
129
|
</body>
|
130
130
|
```
|
131
131
|
|
132
|
+
```php
|
133
|
+
<?php
|
134
|
+
// login_exec.php(ログイン機能)
|
135
|
+
require_once "../libs/init.php";
|
136
|
+
|
137
|
+
function Login() {
|
138
|
+
// エラーがあったら表示
|
139
|
+
if (isset($_GET['error'])) {
|
140
|
+
echo $_GET['error'];
|
141
|
+
}
|
142
|
+
|
143
|
+
// ログインしていない場合
|
144
|
+
$email = $_POST['email'];
|
145
|
+
$_SESSION['email'] = $_POST['email'];
|
146
|
+
$password = $_POST['password'];
|
147
|
+
|
148
|
+
|
149
|
+
// //DB内でPOSTされたメールアドレスを検索
|
150
|
+
try {
|
151
|
+
$pdo = db_connect();
|
152
|
+
$row = Search_Email($pdo, $email);
|
153
|
+
} catch(\Exception $e) {
|
154
|
+
echo $e->getMessage();
|
155
|
+
}
|
156
|
+
|
157
|
+
//emailがDB内に存在しているか確認
|
158
|
+
if(!isset($row['email'])) {
|
159
|
+
header('Location: login.php?error=メールアドレス又はパスワードが間違っています。');
|
160
|
+
return false;
|
161
|
+
}
|
162
|
+
|
163
|
+
//パスワード確認後にsessionにメールアドレスを渡す
|
164
|
+
if(password_verify($password, $row['password'])) {
|
165
|
+
session_regenerate_id(true); //session_idを新しく生成し、置き換える
|
166
|
+
$_SESSION['user_id'] = $row['user_id'];
|
167
|
+
$_SESSION['USERNAME'] = $row['username'];
|
168
|
+
$user_id = $_SESSION['user_id'];
|
169
|
+
// ログインに成功したらcalendarphpリダイレクト
|
170
|
+
header("Location: calendar.php");
|
171
|
+
} else {
|
172
|
+
// ログインに失敗したらlogin.phpにリダイレクト
|
173
|
+
header("Location: login.php?error=メールアドレス又はパスワードが間違っています。");
|
174
|
+
return false;
|
175
|
+
}
|
176
|
+
}
|
177
|
+
|
178
|
+
Login();
|
179
|
+
|
180
|
+
|
181
|
+
```
|
182
|
+
|
132
183
|
# 試したこと
|
133
184
|
- データをデータベースに挿入する時点でuser_idを持たせる
|
134
185
|
- データベースからデータを検索する時に、条件として、WHERE user_id = :user_idを指定する
|
135
186
|
|
136
187
|
# 補足情報
|
188
|
+
chartテーブルです。
|
137
189
|
```
|
138
190
|
-- phpMyAdmin SQL Dump
|
139
191
|
-- version 4.9.3
|
@@ -193,6 +245,10 @@
|
|
193
245
|
MODIFY `id` int(11) NOT NULL AUTO_INCREMENT, AUTO_INCREMENT=45;
|
194
246
|
|
195
247
|
```
|
248
|
+
|
249
|
+
また、ユーザー管理のdbは以下の画像のようになっています。(usersテーブル)
|
250
|
+

|
251
|
+
|
196
252
|
---
|
197
253
|
|
198
254
|
以上です。
|
1
情報の補足
title
CHANGED
File without changes
|
body
CHANGED
@@ -133,6 +133,66 @@
|
|
133
133
|
- データをデータベースに挿入する時点でuser_idを持たせる
|
134
134
|
- データベースからデータを検索する時に、条件として、WHERE user_id = :user_idを指定する
|
135
135
|
|
136
|
+
# 補足情報
|
137
|
+
```
|
138
|
+
-- phpMyAdmin SQL Dump
|
139
|
+
-- version 4.9.3
|
140
|
+
-- https://www.phpmyadmin.net/
|
141
|
+
--
|
142
|
+
-- ホスト: localhost:8889
|
143
|
+
-- 生成日時: 2020 年 12 月 27 日 06:25
|
144
|
+
-- サーバのバージョン: 5.7.26
|
145
|
+
-- PHP のバージョン: 7.4.2
|
146
|
+
|
147
|
+
SET SQL_MODE = "NO_AUTO_VALUE_ON_ZERO";
|
148
|
+
SET time_zone = "+00:00";
|
149
|
+
|
150
|
+
--
|
151
|
+
-- データベース: `tr_ng`
|
152
|
+
--
|
153
|
+
|
154
|
+
-- --------------------------------------------------------
|
155
|
+
|
156
|
+
--
|
157
|
+
-- テーブルの構造 `chart`
|
158
|
+
--
|
159
|
+
|
160
|
+
CREATE TABLE `chart` (
|
161
|
+
`user_id` int(11) NOT NULL,
|
162
|
+
`id` int(11) NOT NULL,
|
163
|
+
`date` varchar(100) NOT NULL,
|
164
|
+
`weight` varchar(100) NOT NULL
|
165
|
+
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
|
166
|
+
|
167
|
+
--
|
168
|
+
-- テーブルのデータのダンプ `chart`
|
169
|
+
--
|
170
|
+
|
171
|
+
INSERT INTO `chart` (`user_id`, `id`, `date`, `weight`) VALUES
|
172
|
+
(1, 43, '2020-12-27', '64'),
|
173
|
+
(1, 44, '2020-12-27', '63');
|
174
|
+
|
175
|
+
--
|
176
|
+
-- ダンプしたテーブルのインデックス
|
177
|
+
--
|
178
|
+
|
179
|
+
--
|
180
|
+
-- テーブルのインデックス `chart`
|
181
|
+
--
|
182
|
+
ALTER TABLE `chart`
|
183
|
+
ADD PRIMARY KEY (`id`);
|
184
|
+
|
185
|
+
--
|
186
|
+
-- ダンプしたテーブルのAUTO_INCREMENT
|
187
|
+
--
|
188
|
+
|
189
|
+
--
|
190
|
+
-- テーブルのAUTO_INCREMENT `chart`
|
191
|
+
--
|
192
|
+
ALTER TABLE `chart`
|
193
|
+
MODIFY `id` int(11) NOT NULL AUTO_INCREMENT, AUTO_INCREMENT=45;
|
194
|
+
|
195
|
+
```
|
136
196
|
---
|
137
197
|
|
138
198
|
以上です。
|