私のphpの知識は限られているので、答えが明らかである場合は申し訳ありません.
リンクがクリックされたときに .rand 関数を使用して、3 つのページのいずれかからランダムな画像を表示しています。ページはすべて同じ名前で、異なるフォルダー (ページ、メディア、テキスト) にあります。私が抱えている問題は、毎回3つの異なるページ/画像の組み合わせが必要ですが、代わりに毎回同じ3つのページ/画像の組み合わせとして表示されることです。私はこれが欲しい、例えばPage1、Media2、Text1。次... Page3、Media2、Text3。次... ページ 1、メディア 3、テキスト 2。
代わりに、Page1、Media1、Text1 などが出てきます。次... Page3、Media3、Text3。次... ページ 2、メディア 2、テキスト 2。
解決策はおそらく簡単ですが、私はそれを理解できないようです。
ここに私のコードがあります:
<body>
<div id="wrapper">
<div id="click"><a href="index.php?p=<?php echo 'include-'.rand(1,3); ?>">CLICK HERE</a>></div>
<div id="content">
<?php
if (!empty($_GET['p'])) {
$pages_dir = 'pages';
$pages = scandir($pages_dir, 0);
unset($pages[0], $pages[1]);
$p = $_GET['p'];
if (in_array($p.'.inc.php',$pages)) {
include($pages_dir.'/'.$p.'.inc.php');
} else {
echo 'Sorry, page not found.';
}
}
?>
</div>
<div id="content2">
<?php
if (!empty($_GET['p'])) {
$media_dir = 'media';
$media = scandir($media_dir, 0);
unset($media[0], $media[1]);
$p = $_GET['p'];
if (in_array($p.'.inc.php',$media)) {
include($media_dir.'/'.$p.'.inc.php');
} else {
echo 'Sorry, page not found.';
}
}
?>
</div>
<div id="content3">
<?php
if (!empty($_GET['p'])) {
$text_dir = 'text';
$text = scandir($text_dir, 0);
unset($text[0], $text[1]);
$p = $_GET['p'];
if (in_array($p.'.inc.php',$text)) {
include($text_dir.'/'.$p.'.inc.php');
} else {
echo 'Sorry, page not found.';
}
}
?>
</div>
</div>
</body>