2012-04-07 5 views
1

Я ударил в тупик. Я работаю над этим в течение 3 недель без результата.открытые случайные страницы php из списка массивов, когда я нажимаю следующий

У меня есть 10 страниц php (1.php, 2.php, ..., 10.php) и стартовая страница (start.php).

Все, что я хочу сделать, это рандомизировать 10 страниц без повторения, поэтому, когда я нажимаю «Далее» в start.php, он должен перейти на одну из 10 страниц (скажем, например, он идет до 4.php). Когда я нажимаю «Далее» в 4.php, он должен перенаправить на другой в пределах 10 страниц, кроме 4.php.

Должно продолжаться до тех пор, пока не будут отображены все цифры (1.php - 10.php). На этом этапе он должен снова рандомизироваться. Когда я нажимаю «next» в последнем номере .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, который должен отслеживать, какой номер был отображен и перетасоваться, когда все номера были отображены.

Пожалуйста, помогите. Я очень признателен за любую помощь, которую я могу получить.

Вам не нужно использовать вышеуказанный код, я не против начинать с нуля, если у вас есть другая идея, если код, который я получаю, работает.

ответ

3

Во-первых, почему у вас есть десять файлов, если у вас есть только один файл и ?id=X в URL? Но неважно.

Лучше всего использовать переменную сеанса. Что-то вроде этого:

<?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. 
?> 
+0

спасибо Kolink за ваш ответ. У меня есть 10 файлов, потому что это был единственный способ получить новую страницу для загрузки. FYI Я не очень хорошо разбираюсь в PHP Я только начал учиться из-за проекта, над которым я работаю. – user1319682

+0

Kolink, я не совсем уверен, как включить код, который вы предоставили мне. Будете ли вы готовы работать со мной по этому поводу? Я пришлю вам небольшой подарок спасибо через paypal :) Вот мой email solow01 (at) gmail.com – user1319682

 Смежные вопросы

  • Нет связанных вопросов^_^