2016-05-06 3 views
0

Я пытаюсь создать динамический прыжок страницы. Я знаю, как создать страницу скачок, напримерКак создать динамический переход страницы

<a href="#example">example</a> 
<a name="example">example1</a> 

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

нравится сайт Deliveroo. click here

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

Мой код

mysqli_report(MYSQLI_REPORT_INDEX); 
if (isset($_GET['rest_id'])) { 
    $R = $_GET['rest_id']; 
    $g_cat = "SELECT * FROM Food_Cat WHERE Resturant_ID = '$R'"; 
    $runn_g_cat = mysqli_query($dbc, $g_cat); 
    mysqli_stmt_execute($runn_g_cat); 
    echo("<div id='get_cats'>"); 
    $iiii=1; 
    while ($row_g_cat = mysqli_fetch_array($runn_g_cat)) { 
     $Food_Cat_name = $row_g_cat['Food_Cat_name']; 

     echo("<a id='show_cats' href='#foodcat$iiii'>$Food_Cat_name</p>"); 
     $iiii=1; 
    } 
} 

...

while ($row_get_cat = mysqli_fetch_array($run_get_cat)) { 
    $category_name = $row_get_cat['Food_Cat_name']; 
    $food_id = $row_get_cat['Food_Cat_ID']; 

    echo("<div id='cat_name' class='cat_name'>"); 
    echo("<a name='foodcat$iiii' id='categ_nme'>$category_name</p>"); 
    echo("<hr id='line'>"); 
    $iii++; 
} 

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

ответ

1

В первой части кода у вас есть этот код:

$iiii=1; 
while ($row_g_cat = mysqli_fetch_array($runn_g_cat)) { 
    /* ... */ 
    $iiii=1; 
} 

Это должно быть $iii++;, как показано ниже.

+0

'$ iiii' определен до этого цикла while, хотя вы правы, его нужно увеличивать – shamsup

+0

Спасибо. Я не знаю, как это выглядело. но теперь он вообще не прыгает – Monroe

+0

@ShamSUP не могли бы вы объяснить, извините, что я новичок – Monroe

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