Poslao: 30 Nov 2009 18:15
|
offline
- Pridružio: 18 Dec 2007
- Poruke: 95
|
Imam problem pokusavam da kad izvucem odredjene podatlke iz baze napravim odredjen broj po stranici tj. napravim ja tipa 3 podatka po strani ali kad kliknem na sledecu stranu neprikazuje ostale podatke evo i koda:
$katid = intval ($_GET['katid']);
$delid = intval ($_GET['delid']);
$kategorija = intval ($_GET['kategorija']);
$delatnost = intval ($_GET['delatnost']);
if(!isset($_GET['page'])){
$page = 1;
} else {
$page = $_GET['page'];
}
$max_results = 3;
$from = (($page * $max_results) - $max_results);
echo "</center>";
// Make a MySQL Connection
@ $db = new mysqli('***','***','****','****');
if (mysqli_connect_errno())
{
echo'Greska:Nismo u mogucnosti da se povezemo sa bazom.'.
'Molimo vas pokusajte ponovo kasnije.';
exit;
}
$query = "SELECT COUNT(delid), delatnost FROM info where katid = $katid ORDER BY katid = $katid ASC LIMIT $from, $max_results";
$result = $db->query($query) or die($db->error);
$row = mysqli_fetch_row($result);
$total_records = $row[0];
$query = "select distinct kategorija, katid from info where katid = $katid";
$result = $db->query($query) or die($db->error);
while ($row = $result->fetch_assoc())
{
echo stripslashes('<b><a href="delatnost.php?katid='.($row['katid']).'">'.($row['kategorija']).'</a></b><br>');
echo '<title> Market Serbia - '.($row['kategorija']).'</title>';
};
$query = "SELECT distinct delatnost, delid FROM info where katid = $katid ORDER BY katid = $katid ASC LIMIT $from, $max_results";
$result = $db->query($query) or die($db->error);
while ($row = $result->fetch_assoc())
{
echo stripslashes('<b><a href="vididelatnost.php?delid='.($row['delid']).'">-'.($row['delatnost']).'</a></b><br>');
};
if(!isset($_GET['page'])){
$page = 1;
} else {
$page = $_GET['page'];
}
$max_results = 3;
$from = (($page * $max_results) - $max_results);
if($page > 1){
$prev = ($page - 1);
echo "<a href=\"".$_SERVER['PHP_SELF']."?page=$prev\">Prijasnjih $max_results</a>";
}
$var = ceil($query / $total_records);
if($var < $page){
$next = ($page + 1);
echo "<br><a href=".$_SERVER['PHP_SELF']."?page=$next>Sljedecih $max_results>></a>";
}
echo "</center>";
|
|
|
Registruj se da bi učestvovao u diskusiji. Registrovanim korisnicima se NE prikazuju reklame unutar poruka.
|
|
Poslao: 30 Nov 2009 19:50
|
offline
- |_MeD_|
- Zaslužni građanin
- Pridružio: 02 Okt 2005
- Poruke: 546
|
ovaj deo izgleda jako cudno
dali je $query uopste broj i kako izgleda generisani link
$var = ceil($query / $total_records);
if($var < $page){
$next = ($page + 1);
echo "<br><a href=".$_SERVER['PHP_SELF']."?page=$next>Sljedecih $max_results>></a>";
}
|
|
|
|
Poslao: 30 Nov 2009 20:30
|
offline
- stankovic
- Prijatelj foruma
- Pridružio: 11 Maj 2005
- Poruke: 871
- Gde živiš: Aleksinac - Niš
|
U naslovu si napisao mysql, a u kodu koristiš mysqli. Da ne grešiši tu?
Takođe sam primetio:
... where katid = $katid ...
a treba
... where katid = '$katid' ...
Dakle, apostrofi ti fale svuda gde imaš slične upite.
Barem je tako kod mysql-a, za mysqli nisam siguran.
I da... ne znam kako uopšte nešto i dobijaš kad imaš:
ORDER BY katid = $katid
Ovde možeš naći kako se order by koristi: http://dev.mysql.com/doc/refman/5.0/en/order-by-optimization.html
|
|
|
|
Poslao: 30 Nov 2009 22:45
|
offline
- Pridružio: 18 Dec 2007
- Poruke: 95
|
Ispravio sam tu neke greske medjutim nepojavljuje mi se link za sledecu stranu.
<?php
$katid = intval ($_GET['katid']);
$delid = intval ($_GET['delid']);
$kategorija = intval ($_GET['kategorija']);
$delatnost = intval ($_GET['delatnost']);
if(!isset($_GET['page'])){
$page = 1;
} else {
$page = $_GET['page'];
}
$max_results = 5;
$from = (($page * $max_results) - $max_results);
echo "</center>";
// Make a MySQL Connection
$db = mysql_connect("***", "***", "****") or die(mysql_error());
mysql_select_db("****") or die(mysql_error());
// Get all the data from the "example" table
$result2 = mysql_query("SELECT distinct kategorija, katid FROM info ORDER by katid='$katid' DESC");
$result = mysql_query("SELECT distinct delatnost, delid FROM info ORDER by delid='$delid' DESC LIMIT $from, $max_results ")
or die(mysql_error());
$puno = mysql_num_rows($result2);
$rezult = mysql_num_rows($result2);
while($row = mysql_fetch_array( $result )) {
// keeps getting the next row until there are no more to get
// Print out the contents of each row into a table
echo stripslashes('<b><a href="vididelatnost.php?delid='.($row['delid']).'">-'.($row['delatnost']).'</a></b><br>');
}
if(!isset($_GET['page'])){
$page = 1;
} else {
$page = $_GET['page'];
}
$max_results = 5;
$from = (($page * $max_results) - $max_results);
if($page > 1){
$prev = ($page - 1);
echo "<a href=\"".$_SERVER['PHP_SELF']."?page=$prev\">napred $max_results</a>";
}
if(5 < $puno){
$next = ($page + 1);
echo "<br><a href=\"".$_SERVER['PHP_SELF']."?page=$next\">nazad $max_results>></a>";
}
echo "</center>";
?>
|
|
|
|
Poslao: 30 Nov 2009 22:58
|
offline
- |_MeD_|
- Zaslužni građanin
- Pridružio: 02 Okt 2005
- Poruke: 546
|
zameni ovo
echo "<br><a href=\"".$_SERVER['PHP_SELF']."?page=$next\">nazad $max_results>></a>";
sa
printf("<br/><a href='%s?page=%s'>nazad %s></a>",$_SERVER['PHP_SELF'],$next,$max_results);
ili
echo "<br><a href=\"".$_SERVER['PHP_SELF']."?page=".$next."\">nazad ".$max_results."></a>";
i imas tu jos dosta gresaka
|
|
|
|
Poslao: 01 Dec 2009 00:01
|
offline
- stankovic
- Prijatelj foruma
- Pridružio: 11 Maj 2005
- Poruke: 871
- Gde živiš: Aleksinac - Niš
|
ORDER BY i dalje pogrešno koristiš.
Ne vidim gde si definisao promenljivu $puno.
Zamenio si napred i nazad.
|
|
|
|
Poslao: 01 Dec 2009 11:57
|
offline
- Pridružio: 18 Dec 2007
- Poruke: 95
|
ok ispravio sam te neke greske i link postavio sam 3 po strani ali prikazuje mi sve podatke a ne te koje sam nadam se definisao. Poredja mi prve te podatke ali u daljim stranicam izlistava mi ostale.
|
|
|
|
Poslao: 01 Dec 2009 12:15
|
offline
- |_MeD_|
- Zaslužni građanin
- Pridružio: 02 Okt 2005
- Poruke: 546
|
ajde ponovo postuj kod.
"Poredja mi prve te podatke ali u daljim stranicam izlistava mi ostale."
ovo mi nije jasno
podsto kod treba da prikaze po N podataka na 1 strana a na svakoj sledecoj N koji dolaze posle i tako dok ima sta da se prikazuje
|
|
|
|
Poslao: 01 Dec 2009 16:26
|
offline
- Pridružio: 18 Dec 2007
- Poruke: 95
|
Napisano: 01 Dec 2009 12:35
Ok samo da pojasnim. Imam kategoriju pod tom kategorijom mi stoje neke delatnosti e sad hocu da mi cita delatnosti pod tom kategorijom a ne sve deletnosti kao sto to radi sad.
<?php
$katid = intval ($_GET['katid']);
$delid = intval ($_GET['delid']);
$kategorija = intval ($_GET['kategorija']);
$delatnost = intval ($_GET['delatnost']);
if(!isset($_GET['page'])){
$page = 1;
} else {
$page = $_GET['page'];
}
$max_results = 3;
$from = (($page * $max_results) - $max_results);
echo "</center>";
// Make a MySQL Connection
$db = mysql_connect("127.0.0.1", "root", "01091979") or die(mysql_error());
mysql_select_db("market") or die(mysql_error());
$query = "select distinct kategorija, katid from info where katid = $katid";
while($row = mysql_fetch_array( $query )) {
echo stripslashes('<b><a href="delatnost.php?katid='.($row['katid']).'">'.($row['kategorija']).'</a></b><br>');
echo '<title> Market Serbia - '.($row['kategorija']).'</title>';
};
// Get all the data from the "example" table
$result2 = mysql_query("SELECT distinct delatnost, delid FROM info order by katid='$katid' DESC");
$result = mysql_query("SELECT distinct delatnost, delid FROM info order by katid='$katid' LIMIT $from, $max_results ")
or die(mysql_error());
$puno = mysql_num_rows($result2);
$rezult = mysql_num_rows($result2);
while($row = mysql_fetch_array( $result )) {
// keeps getting the next row until there are no more to get
// Print out the contents of each row into a table
echo stripslashes('<b><a href="vididelatnost.php?delid='.($row['delid']).'">-'.($row['delatnost']).'</a></b><br>');
}
if(!isset($_GET['page'])){
$page = 1;
} else {
$page = $_GET['page'];
}
$max_results = 3;
$from = (($page * $max_results) - $max_results);
if($page > 1){
$prev = ($page - 1);
echo "<a href=\"".$_SERVER['PHP_SELF']."?page=$prev\">nazad $max_results</a>";
}
if(3 < $puno){
$next = ($page + 1);
echo "<br><a href=\"".$_SERVER['PHP_SELF']."?page=".$next."\">napred ".$max_results."></a>";
}
echo "</center>";
?>
Dopuna: 01 Dec 2009 16:26
Resio sam sve vreme bilo je do linka evo koda:
$max_results = 3;
$from = (($page * $max_results) - $max_results);
if($page > 1){
$prev = ($page - 1);
echo "<a href=\"".$_SERVER['PHP_SELF']."?katid=$katid & page=$prev\">nazad $max_results</a>";
echo stripslashes('<b><a href="delatnost.php?katid='.($row['katid']).'">'.($row['kategorija']).'</a></b><br>');
}
if(3 < $puno){
$katid = intval ($_GET['katid']);
$next = ($page + 1);
echo "<br><a href=\"".$_SERVER['PHP_SELF']."?katid=$katid & page=$next\">Sljedecih $max_results>></a>";
}
echo "</center>";
|
|
|
|