1

行き止まりになりました。私はこれに3週間取り組んできましたが、結果はありませんでした。

10個のphpページ(、、1.php... 2.php10.php)と開始ページ(start.php)があります。

私がやりたいのは、繰り返しなしで10ページをランダム化することだけです。したがって、[次へ]をクリックするstart.phpと、10ページの1つに移動するはずです(たとえば、に移動するとします4.php)。「次へ」をクリックすると4.php、を除く10ページ以内の別のページにリダイレクトされ4.phpます。

1.phpすべての数字( - 10.php)が表示されるまでこれを続ける必要があります。この時点で、再びランダム化する必要があります。表示された最後の番号で「次へ」をクリックすると.php、番号がランダム化され、ランダムリストの最初に戻るはずです。

これが私がこれまでに持っているものです:

start.php

<?php $vidcount = 1; ?>
<? include ("source.php"); ?>
<a href="$nextvid[$vidcount].php">next page</a>

source.php

<?php 
include ("start.php");

$numbers = range(1, $total_songs);

if(($vidcount == $total_songs)||($vidcount == 1)){
shuffle($numbers);
$vidcount = 1;
}

$nextvid[1] = $numbers[0];
$nextvid[2] = $numbers[1];
$nextvid[3] = $numbers[2];
$nextvid[4] = $numbers[3];
$nextvid[5] = $numbers[4];
$nextvid[6] = $numbers[5];
$nextvid[7] = $numbers[6];
$nextvid[8] = $numbers[7];
$nextvid[9] = $numbers[8];
$nextvid[10] = $numbers[9];
?>

1.php、、2.php... 10.php

<?php
include("source.php");?>
<?php echo $vidcount; ?>

<a href="testrun[<?php echo $nextvid[$vidcount];  ?>].php">next page</a>
<?php $vidcount++;?>

1.php-10.php同じコードを持っています。また、source.php表示された番号を追跡し、すべての番号が表示されたら再シャッフルすることになっているを持っています。

助けてください。私が得ることができるどんな助けにも大いに感謝します。

上記のコードを使用する必要はありません。私が取得したコードが機能する限り、別のアイデアがあれば、最初から始めてもかまいません。

4

1 に答える 1

3

?id=Xまず、1つのファイルとURLを含めることができるのに、なぜ10個のファイルがあるのでしょうか。しかし、それを気にしないでください。

最善の策は、セッション変数を使用することです。このようなもの:

<?php
    session_start();
    if( !isset($_SESSION['sequence']) || !$_SESSION['sequence']) {
        $_SESSION['sequence'] = shuffle(range(1,10));
    }
    $next = array_shift($_SESSION['sequence']);
    // now use $next to create your "Next page" link.
?>
于 2012-04-07T23:10:15.663 に答える