星をクリックすると星の数が選択されるスター評価のコードを書いてます。選択した評価で星の数の情報をphpで確認表示画面に送るコードを書いたのですが、submitを押して次の画面には行くのですが、phpが間違っていると思いますが、選択した星が表示されなくて困っています。CSSは間違えてないと思います。
回答よろしくお願いいたします。
星評価選択フォームの画面 b.php
php
1<?php2session_start();3$errors = array();4if ($_POST) {5 6$rate = filter_input(INPUT_POST, 'rate');7if (empty($rate)) $errors[] ="評価をタップして下さい。 ";8$rate = htmlspecialchars($rate, ENT_QUOTES);9 10if (count($errors) === 0) {11$_SESSION['rate'] = $rate;12 13/* 確認画面の表示, */14header('Location:b2.php');15exit();16 }17}18 19if(isset($_GET['action']) && $_GET['action'] === 'edit'){20$rate = $_SESSION['rate'];21}22?>23 24<!DOCTYPE html>25<html lang="ja">26 27<head>28 <meta content="text/html; charset=utf-8" />29 <meta name="viewport" content="width=device-width, initial-scale=1">30 <title></title>31<style>32 33.rate-form {34 display: flex;35 flex-direction: row-reverse;36 justify-content: flex-end;37}38.rate-form input[type=radio] {39 display: none;40}41.rate-form label {42 position: relative;43 padding: 0 5px;44 color: #ccc;45 cursor: pointer;46 font-size: 35px;47}48.rate-form label:hover {49 color: #ffcc00;50}51.rate-form label:hover ~ label {52 color: #ffcc00;53}54.rate-form input[type=radio]:checked ~ label {55 color: #ffcc00;56}57</style>58 59 60</head>61<body>62 63 <form action="b2.php" method="post" id="form">64 <div class="rate-form">65 <input id="star5" type="radio" name="rate" value="<?php if(isset($rate)){ echo $rate; } ?>">66 <label for="star5">★</label>67 <input id="star4" type="radio" name="rate" value="<?php if(isset($rate)){ echo $rate; } ?>">68 <label for="star4">★</label>69 <input id="star3" type="radio" name="rate" value="<?php if(isset($rate)){ echo $rate; } ?>">70 <label for="star3">★</label>71 <input id="star2" type="radio" name="rate" value="<?php if(isset($rate)){ echo $rate; } ?>">72 <label for="star2">★</label>73 <input id="star1" type="radio" name="rate" value="<?php if(isset($rate)){ echo $rate; } ?>">74 <label for="star1">★</label>75 </div>76 <button id="submit" class="yohaku">77 </button>78 </form>79</body>80</html>81
確認表示画面b2.php
php
1<!DOCTYPE html>2<html lang="ja">3 4<head>5 <meta content="text/html; charset=utf-8" />6 <meta name="viewport" content="width=device-width, initial-scale=1">7 <title>a</title>8 9<style>10</style>11</head>12<body>13 <form action="b3.php" method="post">14 <div class="w"><?php echo $rate; ?></div>15 <input type="submit" name="submit" value="評価を送信">16 </form>17</body>18</html>19
0 コメント