Avatar billede stevenizzle Nybegynder
13. juli 2005 - 00:42 Der er 19 kommentarer og
1 løsning

Sideskift alt efter linieantal

Jeg vil blot høre om der er en der besidder den viden til og få talt linie'erne i en fil(txt) op, og hvis antallet er over et vis antal skal det være muligt og klikke næste side.

Jeg er ikke engang sikker på det kan lade sig gøre!
Avatar billede jaw Nybegynder
13. juli 2005 - 00:53 #1
Det kan det godt. Her er en lille, omend meget simpel, måde at gøre det på. Men håber du måske kan se ideen og selv fortsætte? :)

<?php

$lines = file(filnavn.txt');
$lines_per_page = 10;
if(!isset($_GET['s'])) $s = 0;
$num_lines = count($lines);

for($i = $s; $i < $s+$lines_per_page; $i++) {
    echo $lines[$i]."<br />";
}
echo "<a href='slet.php?s=$i'>næste</a>";
?>
Avatar billede stevenizzle Nybegynder
13. juli 2005 - 01:07 #2
Det har helt sikkert hjulpet, men kan stadig ikke få det til og virke =)

Hvor kommer $i fra?
Avatar billede jaw Nybegynder
13. juli 2005 - 01:09 #3
Kan du ikke få det til at virke? Hm, det virker perfekt her...

$i kommer herfra:
for($i = $s; $i < $s+$lines_per_page; $i++) {

Får du en "næste-knap" op? Hvad er linket i den hvis du holer musen over den. Og har du husket at udskifte filnavn.txt med dit eget filnavn?
Avatar billede plazm Nybegynder
13. juli 2005 - 01:15 #4
fejlen er her:
$lines = file(filnavn.txt');
som skal være:
$lines = file('filnavn.txt');
Avatar billede jaw Nybegynder
13. juli 2005 - 01:18 #5
Nå ja, en lille svipser :) Beklager...
Avatar billede plazm Nybegynder
13. juli 2005 - 01:23 #6
og en svipser mere
if(!isset($_GET['s'])) $s = 0;
skal nok være
if(!isset($_GET['s'])){$s = 0;}else{$s = $_GET['s']}
Avatar billede stevenizzle Nybegynder
13. juli 2005 - 01:25 #7
har jeg rettet. leger stadig med det.

giv lige et svar, du fortjener skam de points - selvom det ikke kører 100% :D
Avatar billede jaw Nybegynder
13. juli 2005 - 01:26 #8
Jeg lægger gerne et svar, men det bør da alligevel køre, før du accepterer :) Hvad er det der ikke kører? Får du nogen fejlmeddelelser? Får du den "næste-knap" frem jeg spurgte om tidligere?
Avatar billede stevenizzle Nybegynder
13. juli 2005 - 01:27 #9
ja, jeg får en næste knap. ja, den giver mig denne fejl:

Parse error: parse error in /usr/home/whitehat_dk/users/apitex/steven/include/linieantal.php on line 4
Avatar billede jaw Nybegynder
13. juli 2005 - 01:28 #10
Korrekt Plazm, det er mest rigtigt. Så ser det nu alt i alt sådan ud:

<?php

$lines = file(filnavn.txt');
$lines_per_page = 10;
if(!isset($_GET['s']) || empty($_GET['s'])) {
  $s = 0;
} else {
  $s = $_GET['s'];
}
$num_lines = count($lines);

for($i = $s; $i < $s+$lines_per_page; $i++) {
    echo $lines[$i]."<br />";
}
echo "<a href='slet.php?s=$i'>næste</a>";
?>
Avatar billede jaw Nybegynder
13. juli 2005 - 01:29 #11
Arj okey, nu glemte jeg den igen, sådan:
<?php
$lines = file('filnavn.txt');
$lines_per_page = 10;
if(!isset($_GET['s'])) $s = 0;
$num_lines = count($lines);

for($i = $s; $i < $s+$lines_per_page; $i++) {
    echo $lines[$i]."<br />";
}
echo "<a href='slet.php?s=$i'>næste</a>";
?>

Stevenizzle - Læg lige mærke til den ' vi har tilføjet før filnavn.txt. Det er nok din parse-error.
Avatar billede jaw Nybegynder
13. juli 2005 - 01:30 #12
Tror for alvor sengen meget snart kalder, det her er næsten pinligt...!

<?php
$lines = file('filnavn.txt');
$lines_per_page = 10;
if(!isset($_GET['s']) || empty($_GET['s'])) {
  $s = 0;
} else {
  $s = $_GET['s'];
}
$num_lines = count($lines);

for($i = $s; $i < $s+$lines_per_page; $i++) {
    echo $lines[$i]."<br />";
}
echo "<a href='slet.php?s=$i'>næste</a>";
?>
Avatar billede Slettet bruger
13. juli 2005 - 01:33 #13
Det skal lige siges at du så skal kalde php-filen for slet.php ;)
Avatar billede stevenizzle Nybegynder
13. juli 2005 - 01:34 #14
yes, kopierede bare dit nye indlæg ind i den fil jeg havde rettet - så den smuttede igen :D

jeg tror jeg har den nu. mange tak for hjælpen!
Avatar billede jaw Nybegynder
13. juli 2005 - 01:38 #15
Pacroon - Hold da kæft hvor det kører for mig i aften :D

Stevenizzle - For at få det en bitte smule mere dynamisk, og så den ikke kører i "uendeligheder", så kan den se sådan ud:

<?php
$lines = file('filnavn.txt');
$lines_per_page = 10;
if(!isset($_GET['s']) || empty($_GET['s'])) {
  $s = 0;
} else {
  $s = $_GET['s'];
}
$num_lines = count($lines);
for($i = $s; $i < $s+$lines_per_page; $i++) {
    echo $lines[$i]."<br />";
}
if($s + $lines_per_page < $num_lines) {
    echo "<a href='".$_SERVER['PHP_SELF']."?s=$i'>næste</a>";
}
?>

...Og selv tak da !
Avatar billede plazm Nybegynder
13. juli 2005 - 01:38 #16
<?php
$file="test.txt";
$num_of_rows=50;

$input=file($file);
if(!isset($_GET["start"])){$start=0;}else{$start=$_GET["start"];}
$lines_input = count($input);
for($x=($start*$num_of_rows);$x<($start*$num_of_rows+$num_of_rows);$x++) {
  echo $input[$x]."<br />\n\r";
}
echo "<br /><br />\n\r";
$pages = floor($lines_input/$num_of_rows);
if(($start-1) >= 0){echo "<a href=\"?start=".($start-1)."\">Forrige</a> \n";}
for($a=0;$a<$pages;$a++) {
  echo "<a href=\"?start=".$a."\">".($a+1)."</a> ";
}
if(($start+1) <= $pages){echo "<a href=\"?start=".($start+1)."\">Næste</a> \n";}
?>
Avatar billede Slettet bruger
13. juli 2005 - 01:41 #17
jaw > Tro mig, jeg kender det - jeg plejer tit at lave en 7-8 kommentarer med det samme script :DP
Avatar billede stevenizzle Nybegynder
13. juli 2005 - 01:46 #18
Point    200
Point ude    100

har du ikke fået pointene?
Avatar billede jaw Nybegynder
13. juli 2005 - 01:48 #19
Tjoh, det tror jeg da nok jeg har, kan ikke lige huske hvor meget jeg havde før. Men eksperten kører sine "opdateringer" i en form for cron tror jeg, så det er ikke altid at alle data bliver opdateret on-the-fly. Der kan godt gå et par minutter...

Men tak for point.

Pacroon -> Jow, men det gør det ikke mindre irriterende :)

Og så godnat til jer allesammen...
Avatar billede stevenizzle Nybegynder
13. juli 2005 - 01:54 #20
iorden, der står også at dit svar er accepteret.

- godnat!
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