Как сделать так, чтобы это отображалось только на первой странице? И как мне разделить две клетки? - PullRequest
0 голосов
/ 21 марта 2011

Этот код в значительной степени просто показывает таблицу с 16 ячейками (4 столбца и 4 строки).За исключением справа вверху, есть две "ЗАБРОНИРОВАННЫЕ" ячейки.Этот код также разбит на страницы.

Есть две вещи, которые я хочу исправить с помощью этого кода.Прямо сейчас две «ЗАБРОНИРОВАННЫЕ ячейки» одинаковы.Это означает, что обе клетки говорят, что зарезервированы.Как мне сделать так, чтобы я мог изменить то, что находится внутри двух зарезервированных ячеек.Извините, если это немного сложно понять.

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

Может кто-нибудь сделать это возможным?

Без лишних слов, вот код:

        $Page = $_GET["Page"];
        if(!$_GET["Page"])
        {
            $Page=1;
        }

        $Prev_Page = $Page-1;
        $Next_Page = $Page+1;

        $Page_Start = (($Per_Page*$Page)-$Per_Page);
        if($Num_Rows<=$Per_Page)
        {
            $Num_Pages =1;
        }
        else if(($Num_Rows % $Per_Page)==0)
        {
            $Num_Pages =($Num_Rows/$Per_Page) ;
        }
        else
        {
            $Num_Pages =($Num_Rows/$Per_Page)+1;
            $Num_Pages = (int)$Num_Pages;
        }

        $strSQL .=" order  by GalleryID ASC LIMIT $Page_Start , $Per_Page";
        $objQuery  = mysql_query($strSQL);
$cell = 0;
echo '<table border="1" cellpadding="2" cellspacing="1"><tr>';
while($objResult = mysql_fetch_array($objQuery))
{
  if($cell % 4 == 0) {
    echo '</tr><tr>';
  }

  if($cell == 2 || $cell == 3) {
    echo '<td>RESERVED</td>'; **//How do I make it so there are two separate reserve slots,  
  rather than one <td> which controls both cells?** 
  } else {
    echo '<td><img src="https://s3.amazonaws.com/thumbnails/' . $objResult["Picture"] . '" />' .
            $objResult["GalleryName"] . '</td>'; }
  $cell++;
}
echo '</tr></table>';
    ?>

        <br>
view more:
        <?php
        if($Prev_Page)
        {
            echo " <a href='$_SERVER[SCRIPT_NAME]?Page=$Prev_Page'>prev</a> ";
        }
            {
                echo "|";
        }
        if($Page!=$Num_Pages)
        {
            echo " <a href ='$_SERVER[SCRIPT_NAME]?Page=$Next_Page'>next</a> ";
        }
        ?>


</body>
</html>
<?php
mysql_close($objConnect);
?>

1 Ответ

0 голосов
/ 21 марта 2011
if($cell == 2) {
    echo '<td>RESERVED</td>';
} elseif ($cell == 3) {
    echo '<td>The other cell</td>';
} else {
    echo '<td><img src="https://s3.amazonaws.com/thumbnails/' . $objResult["Picture"] . '" />' .
    $objResult["GalleryName"] . '</td>'; }
    $cell++;
}

Редактировать : это немного расстраивало, чтобы понять, что именно происходит с твоей стороны, поэтому я переписал это.Это примерно то, как должен выглядеть ваш код.Если вы не можете понять основные условия отсюда, вам нужно больше времени уделять пониманию основ, потому что многие из этих вещей зачаточны.

$Page = max((int)$_GET["Page"], 1);
$Prev_Page = $Page - 1;
$Next_Page = $Page + 1;

$Page_Start = max(0, ($Per_Page * ($Page - 1) - 2));
if ($Page === 1) $Per_Page = $Per_Page - 2;
$Num_Pages = ceil($Num_Rows / $Per_Page);

$strSQL .= "ORDER BY GalleryID ASC LIMIT {$Page_Start},{$Per_Page}";
$objQuery = mysql_query($strSQL);

$cell = 0;
$total = mysql_num_rows($objQuery);
?>

<table border="1" cellpadding="2" cellspacing="1">
    <? for ($cell = 0; $cell < $total; ++$cell) : ?>
        <? if ($cell % 4 === 0) : ?>
            <tr>
        <? endif; ?>
        <td>
            <? if ($Page === 1 && $cell === 2) : ?>
                First reserved cell
                <? --$cell; ?>
            <? elseif ($Page === 1 && $cell === 3) : ?>
                Second reserved cell
                <? --$cell; ?>
            <? else: ?>
                <? $objResult = mysql_fetch_array($objQuery); ?>
                <img src="https://s3.amazonaws.com/thumbnails/<?=$objResult["Picture"]; ?>" />
                <?=$objResult["GalleryName"]; ?>
            <? endif; ?>
        </td>
        <? if ($cell % 4 === 3) : ?>
            </tr>
        <? endif; ?>
    <? endfor; ?>
</table>

<br>
view more:
<?php
    if($Prev_Page) {
        echo " <a href='$_SERVER[SCRIPT_NAME]?Page=$Prev_Page'>prev</a> ";
        if($Page != $Num_Pages) echo " | ";
    }

    if($Page != $Num_Pages) {
        echo " <a href ='$_SERVER[SCRIPT_NAME]?Page=$Next_Page'>next</a> ";
    }
?>


</body>
</html>
<?php
mysql_close($objConnect);
?>
...