Avatar billede big_ossi Nybegynder
25. april 2004 - 00:04 Der er 49 kommentarer og
1 løsning

hjælp til side opdeling af resultat

Hey en eller anden der kan hjælpe med at ligge en opdeling af resulteterne så den ikke lister alle 137 på en siden men deler dem op i sider men 15 på hver ?

min kode:
-----------------
<?
require("config2.php");
        mysql_connect($dbhost, $dbuser, $dbpass);
        mysql_select_db($database);
       
if ($cat){
$res = mysql_query("SELECT *,CONCAT(LEFT(ing,60),'...') AS ing FROM drinks where kat = '$cat' ORDER BY navn ASC");
while($row = mysql_fetch_array($res)) {
echo "<a href=vis.php?id=$row[id]>$row[navn] </a> - $row[ing] - $row[hits] hits<br>";
}}
?>

<? // side antal delen skal lige her ?>

<hr noshade>
<?
$res = mysql_query("SELECT * FROM drinks");
$tal = mysql_num_rows($res);
if ($tal == "0") {
print "";
}
else {
print"$tal drinksopskrifter i databasen ";
}?> 
<?
$rescat = mysql_query("SELECT * FROM drinks where kat = '$cat'");
$talcat = mysql_num_rows($rescat);
if ($talcat == "0") {
print "";
}
else {
print"- $talcat i denne kategori";
}?>
Avatar billede jammerlab Nybegynder
25. april 2004 - 00:25 #1
<?
$pr_side = "15";

if (!isset($s)) {
    $s = "0";
}
require("config2.php");
        mysql_connect($dbhost, $dbuser, $dbpass);
        mysql_select_db($database);
       
if ($cat){
$res = mysql_query("SELECT *,CONCAT(LEFT(ing,60),'...') AS ing FROM drinks where kat = '$cat' ORDER BY navn ASC limit $s,$pr_side");
while($row = mysql_fetch_array($res)) {
echo "<a href=vis.php?id=$row[id]>$row[navn] </a> - $row[ing] - $row[hits] hits<br>";
}}

    $g_total = mysql_query("select count(id) as total from CONCAT") or die(mysql_error());
    $total = mysql_result($g_total,0);

$page = 1; //Definerer hvor sidetal skal starte
for($start=0; $total > $start; $start=$start+$pr_side){
    if ($start != $s) {
        echo " <a href='$PHP_SELF?s=$start'>$page</a> - ";
    } else {
        echo "- $page - ";
    }
    $page++;
}
?>

<hr noshade>
<?
$res = mysql_query("SELECT * FROM drinks");
$tal = mysql_num_rows($res);
if ($tal == "0") {
print "";
}
else {
print"$tal drinksopskrifter i databasen ";
}?> 
<?
$rescat = mysql_query("SELECT * FROM drinks where kat = '$cat'");
$talcat = mysql_num_rows($rescat);
if ($talcat == "0") {
print "";
}
else {
print"- $talcat i denne kategori";
}?>
Avatar billede big_ossi Nybegynder
25. april 2004 - 00:54 #2
hey. laver denne fejl:

Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in /hsphere/local/home/ossipoff/dff.nu/drinks/les.php on line 19
- 1 - 2 - 3 - 4 - 5 - 6 - 7 - 8 - 9 - 10 -
--------------------------------------------------------------------------------
137 drinksopskrifter i databasen - 78 i denne kategori
Avatar billede jammerlab Nybegynder
25. april 2004 - 00:56 #3
Det må så være i denne den laver fejl:

$g_total = mysql_query("select count(id) as total from CONCAT") or die(mysql_error());
$total = mysql_result($g_total,0);

Den som den skal dele op ... hedder den tabel CONCAT ?
Avatar billede big_ossi Nybegynder
25. april 2004 - 01:01 #4
neej har ingen tabel der hedder CONCAT.

det er drinks alle opskrifterne ligger i. men har rettet concat til drinks.
Avatar billede jammerlab Nybegynder
25. april 2004 - 01:02 #5
$g_total = mysql_query("select count(id) as total from drinks") or die(mysql_error());
$total = mysql_result($g_total,0);

Laver den fejl på denne?
Avatar billede big_ossi Nybegynder
25. april 2004 - 01:05 #6
ja den kommer med samme fejl
Avatar billede jammerlab Nybegynder
25. april 2004 - 01:06 #7
Hm okay så lad mig lige være helt sikker ;)

$g_total = mysql_query("select count(id) as total from drinks") or die(mysql_error());
$total = mysql_result($g_total,0);

Er som den kører nu... og du HAR en tabel der hedder "drinks" og i denne HAR du et felt som hedder "id" ik? :)
Avatar billede big_ossi Nybegynder
25. april 2004 - 01:09 #8
ja, tebellen hedder drinks og den har et felt som hedder id
Avatar billede jammerlab Nybegynder
25. april 2004 - 01:17 #9
Okay det fatter jeg ikke lige... bruger den selv og den laver ingen fejl her... det er linje 19 i din kode ik?
Avatar billede big_ossi Nybegynder
25. april 2004 - 01:21 #10
i dreamweaver mx er det de ti linier nr. 20 og 21

19 er et mellemrum.
Men den deler jo det op i
1 - 2 - 3 - 4 - 5 - 6 - 7 - 8 - 9 - 10 -
--------------------------------------------------------------------------------
137 drinksopskrifter i databasen - 78 i denne kategori

så det ser for mig ud til der er fejl i det inden side opdelingen men er ikke så god til det php der :)
Avatar billede jammerlab Nybegynder
25. april 2004 - 01:22 #11
Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in /hsphere/local/home/ossipoff/dff.nu/drinks/les.php on line 19

Betyder jo at det er en fejl i linje 19... så du paster lige din linje nr. 19 til mig her så må vi se om det er i denne der er en fejl eller om det er noget andet der så ender med denne fejl :)
Avatar billede big_ossi Nybegynder
25. april 2004 - 01:24 #12
linie 19 ser sådan her ud.
while($row = mysql_fetch_array($res)) {
Avatar billede jammerlab Nybegynder
25. april 2004 - 01:25 #13
Okay det er så i denne kode der er en fejl:

$res = mysql_query("SELECT *,CONCAT(LEFT(ing,60),'...') AS ing FROM drinks where kat = '$cat' ORDER BY navn ASC limit $s,$pr_side");
while($row = mysql_fetch_array($res)) {

Det er den kode du brugt inden jeg kom ind i billedet ... fungerede det fint der?
Avatar billede big_ossi Nybegynder
25. april 2004 - 01:27 #14
jes da den så sådan her ud gjorde den:
$res = mysql_query("SELECT *,CONCAT(LEFT(ing,60),'...') AS ing FROM drinks where kat = '$cat' ORDER BY navn ASC");
Avatar billede jammerlab Nybegynder
25. april 2004 - 01:29 #15
Nu ved jeg ikke lige helt hvordan den fungere ... den er noget mere avanceret nd dem jeg plejer at bruge... jeg går ud fra du bare gerne vil havde den til at vise alle de drinks som der nu er i den $cat som man vælger... så byt den lige ud med:

$res = mysql_query("SELECT * FROM drinks where kat = '$cat' ORDER BY navn ASC limit $s,$pr_side");

og se om den ikke fungere som du gerne vil havde det.
Avatar billede big_ossi Nybegynder
25. april 2004 - 01:32 #16
Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in /hsphere/local/home/ossipoff/dff.nu/drinks/les.php on line 19
Avatar billede jammerlab Nybegynder
25. april 2004 - 01:33 #17
hehe godt så!

res = mysql_query("SELECT * FROM drinks where kat = '$cat' limit $s,$pr_side ORDER BY navn ASC");
Avatar billede big_ossi Nybegynder
25. april 2004 - 01:33 #18
Avatar billede danino Nybegynder
25. april 2004 - 01:34 #19
Hm... Jeg har et forslag... Prøv at skrive:
$res = mysql_query("SELECT * FROM drinks where kat = '$cat' ORDER BY navn ASC limit 0,15");
Der er nemlig "-tegn rundt om tallene, og det kan være at den tager det som en string i stedet for integers.
Avatar billede big_ossi Nybegynder
25. april 2004 - 01:35 #20
Parse error: parse error, unexpected '=' in /hsphere/local/home/ossipoff/dff.nu/drinks/les.php on line 18
Avatar billede jammerlab Nybegynder
25. april 2004 - 01:35 #21
Jep prøv lige som han siger...
Avatar billede jammerlab Nybegynder
25. april 2004 - 01:36 #22
når du for en error så vend dig lige til at paste den linje :)
Avatar billede jammerlab Nybegynder
25. april 2004 - 01:37 #23
og ret lige: echo " <a href='$PHP_SELF?s=$start'>$page</a> - ";
til: echo " <a href='$PHP_SELF?s=$start&cat=$cat'>$page</a> - ";
Avatar billede big_ossi Nybegynder
25. april 2004 - 01:37 #24
hi hi glemte $ men har nu sat danino's forslag ind og nu virker det
Avatar billede jammerlab Nybegynder
25. april 2004 - 01:37 #25
Så ser alt ihvertfald ud til at fungere...
Avatar billede danino Nybegynder
25. april 2004 - 01:40 #26
Du skal lige huske at ændre koden i starten til:
$pr_side = 15;

if (!isset($s)) {
    $s = 0;
}
Og så bruge denne query:
$res = mysql_query("SELECT *,CONCAT(LEFT(ing,60),'...') AS ing FROM drinks where kat = '$cat' ORDER BY navn ASC limit $s,$pr_side");
Så skulle det hele gerne virke..
Avatar billede danino Nybegynder
25. april 2004 - 01:41 #27
Til talker:
CONCAT(LEFT(ing,60),'...')
CONCAT sætter to ting sammen (ligesom . i php). Den sætter så de 60 første tegn fra ing sammen med ...
Avatar billede jammerlab Nybegynder
25. april 2004 - 01:42 #28
Har det :) godt at vide til næste gang.
Avatar billede big_ossi Nybegynder
25. april 2004 - 01:44 #29
når jeg retter den til
$res = mysql_query("SELECT *,CONCAT(LEFT(ing,60),'...') AS ing FROM drinks where kat = '$cat' ORDER BY navn ASC limit $s,$pr_side");

laver den fejl:
Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in /hsphere/local/home/ossipoff/dff.nu/drinks/les.php on line 19

så bruger den anden du skrev
Avatar billede danino Nybegynder
25. april 2004 - 01:45 #30
ok.. gør du bare det :)
Avatar billede big_ossi Nybegynder
25. april 2004 - 01:46 #31
men så vil jeg sku sige tak... der er jo cool det virker.

points for deling ? er det 50/50 eller hvordan vil i have det ?
Avatar billede jammerlab Nybegynder
25. april 2004 - 01:47 #32
Det fungere da ikke endnu
Avatar billede big_ossi Nybegynder
25. april 2004 - 01:49 #33
jow den deler det da..
Avatar billede jammerlab Nybegynder
25. april 2004 - 01:49 #34
Du må ikke bruge denne:

$res = mysql_query("SELECT * FROM drinks where kat = '$cat' ORDER BY navn ASC limit 0,15");

Så tar den hele tiden 0 - 15 prøv med:

$res = mysql_query("SELECT * FROM drinks where kat = '$cat' ORDER BY navn ASC limit '$s','$pr_side'");
Avatar billede danino Nybegynder
25. april 2004 - 01:50 #35
Har du ændret dette?
$pr_side = 15;

if (!isset($s)) {
    $s = 0;
}
??
Giv du bare pointene til talker... Du kan give mig lidt karma i stedet, hvis du synes.. :)
Avatar billede jammerlab Nybegynder
25. april 2004 - 01:50 #36
Ikke på min side når jeg ser på den... så tar den hele tiden de samme... + linket skal også være anderledes:

echo " <a href='$PHP_SELF?s=$start&cat=$cat&id=les'>$page</a> - ";
Avatar billede big_ossi Nybegynder
25. april 2004 - 01:52 #37
nåå jaa her slet ikke trykket på en af de andre sider.. ;) sorry

retter lige de har ting 2 sek
Avatar billede big_ossi Nybegynder
25. april 2004 - 01:56 #38
lige så snart jeg ligger
res = mysql_query("SELECT * FROM drinks where kat = '$cat' ORDER BY navn ASC limit '$s','$pr_side'");

ind så laver den denne fejl..
Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in /hsphere/local/home/ossipoff/dff.nu/drinks/les.php on line 19
det er som alle de andre gange. det må være det ->  limit '$s','$pr_side'");
Avatar billede jammerlab Nybegynder
25. april 2004 - 01:59 #39
Jep... det er det også... den burde bare ikke lave nogen fejl...

res = mysql_query("SELECT * FROM drinks where kat = '$cat' ORDER BY navn limit '$s','$pr_side'");

prøv den....
Avatar billede jammerlab Nybegynder
25. april 2004 - 02:01 #40
og hvis det ik fungere så prøver du lige en sidste gang med følgende:

res = mysql_query("SELECT * FROM drinks where kat = '$cat' ORDER BY navn limit $s,$pr_side'");
Avatar billede big_ossi Nybegynder
25. april 2004 - 02:02 #41
nu siger den linie 20


Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in /hsphere/local/home/ossipoff/dff.nu/drinks/les.php on line 20

linie 20 ->  while($row = mysql_fetch_array($res)) {
Avatar billede danino Nybegynder
25. april 2004 - 02:03 #42
res = mysql_query("SELECT * FROM drinks where kat = '$cat' ORDER BY navn limit $s,$pr_side'"); vil ikke virke... men måske:
res = mysql_query("SELECT * FROM drinks where kat = '$cat' ORDER BY navn limit $s,$pr_side");... hehe... slåfejl... :)
Avatar billede jammerlab Nybegynder
25. april 2004 - 02:03 #43
jep ;)
Avatar billede danino Nybegynder
25. april 2004 - 02:03 #44
og husk lige $-tegnet :)
Avatar billede big_ossi Nybegynder
25. april 2004 - 02:05 #45
*S* har jeg.. men det siger stadig fejl i linie 20 som før danino
Avatar billede danino Nybegynder
25. april 2004 - 02:06 #46
Ok... men nu er jeg for træt.. håber I finder ud af det, ellers kigger jeg ind igen i morgen.. :)
Avatar billede big_ossi Nybegynder
25. april 2004 - 02:07 #47
okay.. men tak for dine inputs
Go nat
Avatar billede jammerlab Nybegynder
25. april 2004 - 02:07 #48
me2... er du nu sikker på det er den rigtige fil vi roder rundt med? For når jeg hopper rundt mellem de tal der så er jeg på en index.php... og ikke en les.php
Avatar billede big_ossi Nybegynder
25. april 2004 - 02:14 #49
jes.. det skull ejeg da mene den henter les.php ind i min index.php via en get id= et eller andet det er noget en kammerat har lavet det skulle være så smart siger han.

men gonat til dig også.. prøver lige at lave en side som henter les.php uden om det get halløj.
Avatar billede big_ossi Nybegynder
25. april 2004 - 03:51 #50
Vil lige inden jeg går i seng fortælle at det der gjorde den ikke ville virke var at jeg hentede les.php ind i min index via en get = id.

har du lavet det om så den henter siderne ind iframe i stedet for og så virker det.

I skal begge have mange tak, og jeg vil gerne beklage alt det bøvl.
men viste ikke den get ting kunne lave så meget rev i det.
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester