今,セッションにはまっています.
https://www.stackasterisk.jp/tech/php/php03_06.jsp
には、セッションのサンプルもいくつかあるので,まずは,簡単なセッションを使った例を拾ってきて試してみたいと思っています.ですが、上のURLにあるサンプルで
<?
session_start();
if (!isset($count)) $count=0;
session_register("count");
$count++;
?>
<html>
<body>
あなたは <?= $count ?> 回目の訪問です。
<a href="<?echo $PHP_SELF ."?PHPSESSID=". $PHPSESSID?>">カウントを増やす</a>
</body>
</html>
をしましたが,再読込やクリックをしてもカウントアップせず,ずっと1のままです.ソースが間違っているかどうかは私には,ハッキリできませんが,おそらく正しいんでしょう.正常にカウントアップされる為には,php.iniなどの設定も必要でしょうか?どうしてカウントアップされないでしょうか?
No.2ベストアンサー
- 回答日時:
register_globals is enabled でないと動かないのです。
昔の変数の取り方は直接「$変数名」で取れましたが、今はデフォルトでは$_GET['変数名']やら$_POST['変数名']でないと取れないようになっています。
要は$countを$_SESSION['count']と変えてやればいいのです。
一応以下でできるはずです。
<?
session_start();
if (!isset($_SESSION['count'])) $count=0;
session_register("count");
$_SESSION['count']++;
?>
<html>
<body>
あなたは <?= $_SESSION['count'] ?> 回目の訪問です。
<a href="<?echo $PHP_SELF ."?PHPSESSID=". $PHPSESSID?>">カウントを増やす</a>
</body>
</html>
すばらしいご回答ありがとうございます.
動きました.ただ,よく分らなかったことがあります.
php.iniのregister_globals がoffでもonでも動くんです.また、このセッションはURL埋め込みがたなのに
URLには、ページ.php?PHPSESSID= とだけ表示され、続きにセッションIDは表示されませんでした.
No.1
- 回答日時:
他のサイトを探した方が早いんじゃないですか?
提示されたURLを見る限り、少なくとも私にはあっているようには見えませんでした。
<?
session_start();
if (!isset($_SESSION["count"])){
$count=0;
}else{
$count=$_SESSION["count"];
}
$count++;
session_register("count", $count);
?>
参考URL:http://www.php.net/manual/ja/
この回答への補足
php.iniにおける設定で
session.save_path=/tmpとしました
そして、
<?
session_start();
if (!isset($_SESSION["count"])){
$count=0;
}else{
$count=$_SESSION["count"];
}
$count++;
session_register("count", $count);
?>
<html>
<body>
you visit <?= $count ?> times
<a href="<?echo $PHP_SELF ."?PHPSESSID=". $PHPSESSID?>">count up</a>
</body>
</html>
として試したところ
you visit 2 times count up
と表示されましたが,それ以上は回数が増えませんでした.
ご回答ありがとうございます.
ぜひ,試させていただきましたが,
Warning: Unknown(): Your script possibly relies on a session side-effect which existed until PHP 4.2.3. Please be advised that the session extension does not consider global variables as a source of data, unless register_globals is enabled. You can disable this functionality and this warning by setting session.bug_compat_42 or session.bug_compat_warn to off, respectively. in Unknown on line 0
という表示が出てしまいました.訳しますと
貴方のスクリプトは,どうしても応答しないPHP4.2.3までには、存在しない効果の為に.….となっています.私はPHP4.4.0を入れました.やはり、sessionの設定も必要でしょうか?
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- PHP PHPでCookieを使った訪問回数について 1 2023/05/28 14:10
- PHP PHP MySql ページング 2 2022/09/20 06:38
- PHP ランキングを表示する際の画像の大きさを固定することは可能でしょうか? <?php if ( has_ 1 2022/07/21 14:55
- PHP PHP ページング データベース 1 2022/06/16 10:30
- C言語・C++・C# プログラミング c言語 4 2023/03/07 01:05
- UNIX・Linux 次の要件を満たすにはどのように修正したらよろしいでしょうか 1 2022/11/24 20:57
- PHP htmlで複数の個数入力欄を表示させるには 1 2022/09/20 03:11
- PHP PHPでユーザー情報を入力して簡易ログイン機能をつくってみたのですが 1 2023/05/29 08:51
- PHP php ログイン 1 2022/11/01 00:24
- Excel(エクセル) PHPプログラムをエクセルに張り付けると検索ボックスがでてくる! 3 2022/05/08 07:10
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
session_set_save_handler の実...
-
SESSIONを階層ごとに分けるには?
-
PHP session_destroyとsession...
-
自動ログアウト
-
こちらはただの直列処理ですか?
-
onedrive にexcelファイルをア...
-
フォントの色を変えるには?
-
VBでメールを送る時のSMT...
-
ワードプレスサイト PHP8.0.25...
-
FTPコマンドでディレクトリごと...
-
アップロード画像数でCSSを分け...
-
二重投稿防止方法
-
PHPのif文でその処理を途中で抜...
-
入力フォームの空白や改行を制...
-
php5のrename()は日本語をリネ...
-
sqlで日付が一番古いデータの月...
-
HYのAM11:00のラップの部分の歌...
-
i18n_convert と mb_convert_e...
-
php 完了画面の送信メールのコ...
-
htmlのエラーについて(デバッグ)
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
$_SESSION 有効期限をブラウザ...
-
PHP session_destroyとsession...
-
セッションのクッキー有効期間...
-
さくらサーバーでsessionが使え...
-
jqueryの$.ajaxでPHPに値を渡し...
-
session_start();について
-
IE11でページ遷移時にセッショ...
-
fsockopenを使った証明書付きの...
-
session_set_save_handler の実...
-
リロード・ページビューの判定
-
PHPのセッション変数 絞り込み...
-
セッションの利用
-
PHPからリアルタイムにデータを...
-
セッションが変数が取得できません
-
ブラウザの戻る ページ遷移PHP...
-
DoCoMo FOMAでセッション管理が...
-
phpのセッションについて
-
PHP4.3.9+smartyのsessionについて
-
ログインしたページで、ある処...
-
onedrive にexcelファイルをア...
おすすめ情報