実現したいこと
sanitize関数の定義エラーの原因を知りたいです
試したことの手順
- 記述ミスの確認=特に見当たらず
- 全角スペースや文字が全角になっていないかの確認=特になし
- ブラウザでの動作の確認=動作あり
##エラー内容
関数の作成用ファイル
PHP
1コード 2<?php 3 4function gengo($seireki) 5{ 6 if (1898 <= $seireki && $seireki <= 1911) { 7 $gengo = '明治'; 8 } 9 10 if (1912 <= $seireki && $seireki <= 1925) { 11 $gengo = '大正'; 12 } 13 14 if (1926 <= $seireki && $seireki <= 1988) { 15 $gengo = '昭和'; 16 } 17 18 if (1989 <= $seireki) { 19 $gengo = '平成'; 20 } 21 return ($gengo); 22} 23 24function sanitize($before) 25{ 26 foreach($before as $key=>$value) 27 { 28 $after[$key]=htmlspecialchars($value,ENT_QUOTES,'UTF-8'); 29 } 30 return $after; 31} 32?> 33
関数実行用ファイル
PHP
1コード 2<?php 3session_start(); 4session_regenerate_id(true); 5if (isset($_SESSION['login']) == false) { 6 print 'ログインされていません。 <br />'; 7 print '<a href="../staff_login.html">ログイン画面へ</a>'; 8 exit(); 9} else { 10 print $_SESSION['staff_name']; 11 print 'さんログイン中 <br />'; 12 print '<br />'; 13} 14?> 15 16<!DOCTYPE html> 17<html> 18 19<head> 20 <meta charset="UTF-8"> 21 <title> 八千代農園 </title> 22</head> 23 24<body> 25 26 <?php 27 28 require_once('../common/common.php'); 29 30 $post= sanitize($_POST); 31 $staff_name = $post['name']; 32 $staff_pass = $post['pass']; 33 $staff_pass2 = $post['pass2']; 34 35 if ($staff_name == '') { 36 print 'スタッフ名が入力されていません。 <br />'; 37 } else { 38 print 'スタッフ名:'; 39 print $staff_name; 40 print '<br />'; 41 } 42 43 if ($staff_pass == '') { 44 print 'パスワードが入力されていません。 <br />'; 45 } 46 47 if ($staff_pass != $staff_pass2) { 48 print 'パスワードが一致しません。 <br />'; 49 } 50 51 if ($staff_name == '' || $staff_pass == '' || $staff_pass != $staff_pass2) { 52 print '<form>'; 53 print '<input type="button"onclick="history.back()"value="戻る">'; 54 print '</form>'; 55 } else { 56 $staff_pass = md5($staff_pass); 57 print '<form method= "post" action="staff_add_done.php">'; 58 print '<input type="hidden" name ="name"value="' . $staff_name . '">'; 59 print '<input type="hidden" name="pass"value="' . $staff_pass . '">'; 60 print '<br />'; 61 print '<input type="button"onclick="history.back()"value="戻る">'; 62 print '<input type="submit"value="OK">'; 63 print '</form>'; 64 } 65 66 ?> 67 68</body> 69 70</html>
補足情報
PC:Mac(macOS Big sur 11.2.3)
参考書籍:「気づけばプロ並みPHP改訂版」
使用してるエディタ vsコード
サーバー MAMP