前提・実現したいこと
PHPで簡単なカウントアプリを作っています。
formで「カウント」を押すとカウントアップされ、「リセット」で値が0になるというものです。
COOKIEで値を保存したいのですが、保存されずに困っています。
発生している問題・エラーメッセージ
ローカル環境では1つ目のCOOKIEは保存されます。
しかし、サーバーに環境を移すとCOOKIEが保存されず、NULLになってしまいます。
setcookie('count', $count,time()+86400);
COOKIEの削除はローカルでもサーバーでも不可能です。
ローカルでは$count=0でお茶を濁していました。
setcookie('count','',time()-100000);
該当のソースコード
PHP
1<?php 2 3/* COOKIE['count']が存在すれば読み込み、なければ0を代入する */ 4if(isset($_COOKIE['count'])){ 5 $count=$_COOKIE['count'];} 6 else{ 7 $count=0; 8 } 9 10/* POST['count']の入力があったとき$countに+1してCOOKIEに格納する */ 11if(isset($_POST['count'])){ 12 $count++; 13 setcookie('count', $count,time()+86400); 14 }else{;} 15 16/* POST['reset']の入力があったときCOOKIEを削除する */ 17if(isset($_POST['reset'])){ 18 setcookie('count','',time()-100000); 19 }else{; 20 } 21 22?>
HTML
1<div class="count"><?= $count ?></div> 2<form action="count.php" method="post"> 3<input name="count" type="submit" value="カウント"> 4<input name="reset" type="submit" value="リセット"> 5</form>
試したこと
1日ほどコードを眺めたりCOOKIEについて検索したりしましたがまったく解決法が見えません。
お手数ですがお力をお借りできれば幸いです。
補足情報(FW/ツールのバージョンなど)
ローカルではXAMPP、サーバーではロリポップを使用しています。
回答3件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2019/06/26 03:01
退会済みユーザー
2019/06/26 03:05
退会済みユーザー
2019/06/26 03:06