質問編集履歴
3
情報の補足
test
CHANGED
File without changes
|
test
CHANGED
@@ -500,6 +500,12 @@
|
|
500
500
|
|
501
501
|
|
502
502
|
|
503
|
+
テーブルの中身はこのようになっています。(テーブル内のデータ)
|
504
|
+
|
505
|
+
![イメージ説明](523117691db8c7fcedbaa35d2f1d651a.jpeg)
|
506
|
+
|
507
|
+
|
508
|
+
|
503
509
|
---
|
504
510
|
|
505
511
|
|
2
情報の補足
test
CHANGED
File without changes
|
test
CHANGED
@@ -260,6 +260,108 @@
|
|
260
260
|
|
261
261
|
|
262
262
|
|
263
|
+
```php
|
264
|
+
|
265
|
+
<?php
|
266
|
+
|
267
|
+
// login_exec.php(ログイン機能)
|
268
|
+
|
269
|
+
require_once "../libs/init.php";
|
270
|
+
|
271
|
+
|
272
|
+
|
273
|
+
function Login() {
|
274
|
+
|
275
|
+
// エラーがあったら表示
|
276
|
+
|
277
|
+
if (isset($_GET['error'])) {
|
278
|
+
|
279
|
+
echo $_GET['error'];
|
280
|
+
|
281
|
+
}
|
282
|
+
|
283
|
+
|
284
|
+
|
285
|
+
// ログインしていない場合
|
286
|
+
|
287
|
+
$email = $_POST['email'];
|
288
|
+
|
289
|
+
$_SESSION['email'] = $_POST['email'];
|
290
|
+
|
291
|
+
$password = $_POST['password'];
|
292
|
+
|
293
|
+
|
294
|
+
|
295
|
+
|
296
|
+
|
297
|
+
// //DB内でPOSTされたメールアドレスを検索
|
298
|
+
|
299
|
+
try {
|
300
|
+
|
301
|
+
$pdo = db_connect();
|
302
|
+
|
303
|
+
$row = Search_Email($pdo, $email);
|
304
|
+
|
305
|
+
} catch(\Exception $e) {
|
306
|
+
|
307
|
+
echo $e->getMessage();
|
308
|
+
|
309
|
+
}
|
310
|
+
|
311
|
+
|
312
|
+
|
313
|
+
//emailがDB内に存在しているか確認
|
314
|
+
|
315
|
+
if(!isset($row['email'])) {
|
316
|
+
|
317
|
+
header('Location: login.php?error=メールアドレス又はパスワードが間違っています。');
|
318
|
+
|
319
|
+
return false;
|
320
|
+
|
321
|
+
}
|
322
|
+
|
323
|
+
|
324
|
+
|
325
|
+
//パスワード確認後にsessionにメールアドレスを渡す
|
326
|
+
|
327
|
+
if(password_verify($password, $row['password'])) {
|
328
|
+
|
329
|
+
session_regenerate_id(true); //session_idを新しく生成し、置き換える
|
330
|
+
|
331
|
+
$_SESSION['user_id'] = $row['user_id'];
|
332
|
+
|
333
|
+
$_SESSION['USERNAME'] = $row['username'];
|
334
|
+
|
335
|
+
$user_id = $_SESSION['user_id'];
|
336
|
+
|
337
|
+
// ログインに成功したらcalendarphpリダイレクト
|
338
|
+
|
339
|
+
header("Location: calendar.php");
|
340
|
+
|
341
|
+
} else {
|
342
|
+
|
343
|
+
// ログインに失敗したらlogin.phpにリダイレクト
|
344
|
+
|
345
|
+
header("Location: login.php?error=メールアドレス又はパスワードが間違っています。");
|
346
|
+
|
347
|
+
return false;
|
348
|
+
|
349
|
+
}
|
350
|
+
|
351
|
+
}
|
352
|
+
|
353
|
+
|
354
|
+
|
355
|
+
Login();
|
356
|
+
|
357
|
+
|
358
|
+
|
359
|
+
|
360
|
+
|
361
|
+
```
|
362
|
+
|
363
|
+
|
364
|
+
|
263
365
|
# 試したこと
|
264
366
|
|
265
367
|
- データをデータベースに挿入する時点でuser_idを持たせる
|
@@ -270,6 +372,8 @@
|
|
270
372
|
|
271
373
|
# 補足情報
|
272
374
|
|
375
|
+
chartテーブルです。
|
376
|
+
|
273
377
|
```
|
274
378
|
|
275
379
|
-- phpMyAdmin SQL Dump
|
@@ -388,6 +492,14 @@
|
|
388
492
|
|
389
493
|
```
|
390
494
|
|
495
|
+
|
496
|
+
|
497
|
+
また、ユーザー管理のdbは以下の画像のようになっています。(usersテーブル)
|
498
|
+
|
499
|
+
![イメージ説明](c88f4dca75b90a7faaedcab817af44fb.jpeg)
|
500
|
+
|
501
|
+
|
502
|
+
|
391
503
|
---
|
392
504
|
|
393
505
|
|
1
情報の補足
test
CHANGED
File without changes
|
test
CHANGED
@@ -268,6 +268,126 @@
|
|
268
268
|
|
269
269
|
|
270
270
|
|
271
|
+
# 補足情報
|
272
|
+
|
273
|
+
```
|
274
|
+
|
275
|
+
-- phpMyAdmin SQL Dump
|
276
|
+
|
277
|
+
-- version 4.9.3
|
278
|
+
|
279
|
+
-- https://www.phpmyadmin.net/
|
280
|
+
|
281
|
+
--
|
282
|
+
|
283
|
+
-- ホスト: localhost:8889
|
284
|
+
|
285
|
+
-- 生成日時: 2020 年 12 月 27 日 06:25
|
286
|
+
|
287
|
+
-- サーバのバージョン: 5.7.26
|
288
|
+
|
289
|
+
-- PHP のバージョン: 7.4.2
|
290
|
+
|
291
|
+
|
292
|
+
|
293
|
+
SET SQL_MODE = "NO_AUTO_VALUE_ON_ZERO";
|
294
|
+
|
295
|
+
SET time_zone = "+00:00";
|
296
|
+
|
297
|
+
|
298
|
+
|
299
|
+
--
|
300
|
+
|
301
|
+
-- データベース: `tr_ng`
|
302
|
+
|
303
|
+
--
|
304
|
+
|
305
|
+
|
306
|
+
|
307
|
+
-- --------------------------------------------------------
|
308
|
+
|
309
|
+
|
310
|
+
|
311
|
+
--
|
312
|
+
|
313
|
+
-- テーブルの構造 `chart`
|
314
|
+
|
315
|
+
--
|
316
|
+
|
317
|
+
|
318
|
+
|
319
|
+
CREATE TABLE `chart` (
|
320
|
+
|
321
|
+
`user_id` int(11) NOT NULL,
|
322
|
+
|
323
|
+
`id` int(11) NOT NULL,
|
324
|
+
|
325
|
+
`date` varchar(100) NOT NULL,
|
326
|
+
|
327
|
+
`weight` varchar(100) NOT NULL
|
328
|
+
|
329
|
+
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
|
330
|
+
|
331
|
+
|
332
|
+
|
333
|
+
--
|
334
|
+
|
335
|
+
-- テーブルのデータのダンプ `chart`
|
336
|
+
|
337
|
+
--
|
338
|
+
|
339
|
+
|
340
|
+
|
341
|
+
INSERT INTO `chart` (`user_id`, `id`, `date`, `weight`) VALUES
|
342
|
+
|
343
|
+
(1, 43, '2020-12-27', '64'),
|
344
|
+
|
345
|
+
(1, 44, '2020-12-27', '63');
|
346
|
+
|
347
|
+
|
348
|
+
|
349
|
+
--
|
350
|
+
|
351
|
+
-- ダンプしたテーブルのインデックス
|
352
|
+
|
353
|
+
--
|
354
|
+
|
355
|
+
|
356
|
+
|
357
|
+
--
|
358
|
+
|
359
|
+
-- テーブルのインデックス `chart`
|
360
|
+
|
361
|
+
--
|
362
|
+
|
363
|
+
ALTER TABLE `chart`
|
364
|
+
|
365
|
+
ADD PRIMARY KEY (`id`);
|
366
|
+
|
367
|
+
|
368
|
+
|
369
|
+
--
|
370
|
+
|
371
|
+
-- ダンプしたテーブルのAUTO_INCREMENT
|
372
|
+
|
373
|
+
--
|
374
|
+
|
375
|
+
|
376
|
+
|
377
|
+
--
|
378
|
+
|
379
|
+
-- テーブルのAUTO_INCREMENT `chart`
|
380
|
+
|
381
|
+
--
|
382
|
+
|
383
|
+
ALTER TABLE `chart`
|
384
|
+
|
385
|
+
MODIFY `id` int(11) NOT NULL AUTO_INCREMENT, AUTO_INCREMENT=45;
|
386
|
+
|
387
|
+
|
388
|
+
|
389
|
+
```
|
390
|
+
|
271
391
|
---
|
272
392
|
|
273
393
|
|