webForumDet fria alternativet

Problem med pagin

4 svar · 529 visningar · startad av Nina

NinaMedlem sedan feb. 200358 inlägg
#1

Försökt lägga in dynamisk länkning eller pagin,
det fungerar bra när jag går från sidan product.php till itemlist.php men sen däremot på itemlist.php sidan så
om jag klickar på nästa sida så vips dyker alla
kategorier upp på en enda sida, alltså om en
kategori har 3 artiklar i så visar den två, så klickar jag
på nästa så är plötsligt alla 20 artiklar där

Koden ser ut såhär

<?php
session_start();
$user="xxxxx";
$pass="xxxxx";
$hostname="localhost";
$dbase='xxxx';
$connection = mysql_connect("$hostname" , "$user" , "$pass");
$db = mysql_select_db($dbase , $connection);

// Check if there's a $tut_id variable passed in, 
output correct query
if(isset($tut_id))
{
$query = "SELECT * from tutorial where tut_id='$tut_id' ";
}
// If both variables are not present, output default query

if(!isset($tut_id))
{
$query = "SELECT * from tutorial ";
} 
// execute query
$result= mysql_query($query) or die
("Could not execute query : $query." . mysql_error());

// PUT INCLUDE STATEMENT HERE
include('../top.php');
Category: $cname[category_name]</b>";
echo "<p class=\"content\">";

$rows_per_page=2;
$total_records=mysql_num_rows($result);
$pages = ceil($total_records / $rows_per_page);
mysql_free_result($result);

if (!isset($screen))
$screen=0;
$start = $screen * $rows_per_page;
$query .="LIMIT $start, $rows_per_page";
$result= mysql_query($query) or die
("Could not execute query : $query." . mysql_error());

?>

<?php

while ($row = mysql_fetch_array($result))
{

$id=$row["tutorial_id"];
$category  =$row["gategory"];
$name =$row["name"];
$tut_id =   $row["tut_id"];
$tuturl  =  $row["tuturl"];
$description =  $row["description"];
$req  =       $row["req"];
$date  =       $row["date"];
$views =       $row["views"];
$author  =       $row["author"];
$itemid  =     $row["itemid"];
$avgrate  =       $row["avgrate "];
$totalsum =       $row["totalsum"];
$totalcoun =       $row["totalcount"];
        

// query category table for category name.
$catquery = "SELECT tut_name from tutlist where tut_id='$tut_id' ";
$result2= mysql_query($catquery) or die
("Could not execute query : $catquery." . mysql_error());
$cname = mysql_fetch_array($result2);

// start actual query
$q = "SELECT * from tutorial order by tut_id desc ";
$result3 = mysql_query($q) or die 
("Could not execute q : $q." . mysql_error());;

// Now print out the catalog display
	
	?>
<center>
<table border="1" cellpadding="2" cellspacing="2" 
style="border-collapse: collapse" bordercolor="#111111" width="95%" class="rut">
  <tr>
<tr><td valign="top"><p class="content">
<?php echo "<a href=\"tut.php?id=$id\" target=\"main\"><b>$name</a></b>" ; ?>
</td>
<td width="50%" height="19"><p class="content">Grad
</td>
</tr>
<tr>
<td width="100%" colspan="2" height="81" valign="top">
<p class="content">
Beskrivning:<?php echo "$dsc"; ?> 
<p class="content">Krävs:<?php echo "$req"; ?>
<p class="content">
</tr>
<tr>
<td width="50%" height="19"><p class="content">
<b>Skrivet av:</b> <?php echo "$author"; ?></td>
<td width="50%" height="19">
<p class="content">Datum:<?php echo "$date"; ?></td>
</tr>
<tr>
<td width="50%" height="19"><b><p class="content">Viwed</b>
<?php echo "[$views]"; ?></td>
    <td width="50%" height="19"><p class="content">
<?php
// Select the average rating from the rate tables for this item
$newquery = "SELECT avgrate from tutorial where itemid='$itemid' ";
$newresult = mysql_query($newquery);
while ($newrow = mysql_fetch_array($newresult))
{
$avg_rate = $newrow["avgrate"]; echo "$avg_rat";} ?> 
<form action="<?php echo "rate.php?mode=rate&itemid=$itemid"; ?>" method="post">
<input type="radio" value="1" name="rateitem">1 
<input type="radio" value="2" name="rateitem">2 
<input type="radio" value="3" name="rateitem">3 
<input type="radio" value="4" name="rateitem">4 
<input type="radio" value="5" name="rateitem" checked>5 
<input type="submit" value="Rate">&nbsp;<b>Rates:</b>  
<?php echo "$avg_rate"; ?>
</td></tr> <?php
} // end of while ?>
</table>
<?php
// Insert Code B Here

// create the dynamic links
if ($screen > 0) {
$j = $screen - 1;
$url = "$PHP_SELF?screen=$j";
echo "<a href=\"$url\">Prev</a>";
}

// page numbering links now

for ($i = 0; $i < $pages; $i++) {
$url = "$PHP_SELF?screen=" . $i;
$j = $i + 1;
echo " | <a href=\"$url\">$j</a> | ";
}

if ($screen < $pages-1) {
$j = $screen + 1;
$url = "$PHP_SELF?screen=$j";
echo "<a href=\"$url\">Next</a>";
}
?>

<?php
// free memory
mysql_free_result($result);
?>

<? include('../footer.php'); ?>

Upps lite mycket kod kanske. Tacksam för några tips varför den gör så

CompusaMedlem sedan jan. 20023 327 inlägg
#2

Kan ej hjälpa dig med ditt script men har du kollat in den här?
http://www.a-kok.com/php/paging.php

NinaMedlem sedan feb. 200358 inlägg
#3

Den där fick jag inte alls till att fungera

MatteMedlem sedan aug. 20002 975 inlägg
#4

Du måste föra över dina GET-variabler till paging-länkarna också.
Jag har bara hittat vad jag tror är ytterligare en GET-variabel, uch det är tut_id. Då skulle det bli något på det här hållet:

$url = "$PHP_SELF?screen=" . $i;
if (isset($tut_id)) {
   $url .= '&tut_id='.$tut_id;
}

Överföringen av GET-variabler sker automatiskt i skriptet som Compusa länkade till.

NinaMedlem sedan feb. 200358 inlägg
#5

Nahh fick det inte att fungera heller, får kika på det lite mer imorgon, hjärnsläp idag

126 ms totalt · 3 externa anrop · v20260731065814-full.30151723
0 ms — hämta forumlista (cache)
0 ms — hämta statistik (cache)
123 ms — hämta tråd, inlägg och bilagor (db)