質問編集履歴

3

情報の補足

2020/12/27 08:50

投稿

kotouharuto
kotouharuto

スコア38

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

情報の補足

2020/12/27 08:50

投稿

kotouharuto
kotouharuto

スコア38

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

情報の補足

2020/12/27 06:34

投稿

kotouharuto
kotouharuto

スコア38

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