POST-Redirect-GETパターンに従い、 POSTが成功した後は常にリダイレクトする必要があります。
コードが表示されない場合は、次のようなリダイレクトが必要になります。
if($inserted){
header('Location: mypage.php?msg=reg_success');
exit;
}
次に、mypage.phpで、次のようになります。
if(isset($_GET['msg'])){
switch($_GET['msg']){
case 'reg_success':
echo 'Registration successful!';
break;
}
}
または、成功メッセージの配列を作成することもできます。
$success_messages = array(
'reg_success' => 'Registration successful!',
'logout_success' => 'Logged out!'
);
そしてmypage.phpで:
if(isset($_GET['msg']) && array_key_exists($_GET['msg'], $success_messages)){
$msg_index = $_GET['msg'];
echo $success_messages[$msg_index];
}