PHP Blätterfunktion nach best. Zeichenanzahl
lima-city → Forum → Programmiersprachen → PHP, MySQL & .htaccess
ablegen
befehl
buffer
code
dank
datei
einlesen
eintrag
erhalten bleiben
externe datei
file
helfen
normaler text
string
text
url
wissen
wunsch
zeichen
zeiger
-
Hallo!
Wie der Titel schon verkündet, möchte ich wissen, wie eine PHP Blätterfunktion aussehen muss, die nur nach einer bestimmten Zeichenanzahl (z.B. 1000) einen Button namens "Weiter" zum Blättern anzeigt wo der Text dann auf mehre Seiten verteilt wird, wenn er eben länger als 1000 Zeichen. Dabei liegt der Text der entsprechenden Textseite, bei der weitergeblättert werden soll, nicht als Eintrag in einer Datenbank vor, sonder als normaler Text in einer PHP Datei. Es wäre auch schön, wenn der Seitenname beim Blättern entweder erhalten bleiben würde oder eben ein ?Seite_2, ?Seite_3 am Ende des Links hinzugefügt werden würde. Kann mir da jemand helfen?
Danke schonmal im Vorraus.
Gruß,
Webdesignerin -
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage
-
Naja das müsste doch eigentlich selbst machbar sein oder?
Du teilst das einfach in unterschieldiche Strings, alle 1000 Zeichen, oder performanter einfach den Zeiger und dann einen Buffer von 1000 Zeichen einlesen:
$file = "wasweißich.txt"; $handle = fopen( $file, "r" ); fseek( $handle, 1000 * ( $_GET['seite'] - 1 ) ); $text = fread( $handle, 1000 ); echo $text; if( filesize( $handle ) > 1000 * $_GET['seite'] ) { echo "Weiterblättern"; } if ( $_GET['seite'] > 1 ) { echo "Zuückblättern"; } fclose( $handle );
Hoffe entspricht deinen Ansprüchen.
Per GET muss halt an die URL ?seite=whatever angehängt werden.
Achso das funktioniert natürlich nur mit Dateien, die maximal eine Länge pro Zeichen von 8bit haben.
Bei UTF-8 muss auch noch der BOM übersprungen werden, indem du einfach
fseek( $handle, 3 + 1000 * ( $_GET['seite'] - 1 ) );
so abänderst.
Beitrag zuletzt geändert: 2.5.2010 11:46:22 von reimann -
Hallo!
Danke erstmal reimann! Diese Strings, die kann ich doch sicher auch als externe Datei (z.B. blaetterfunktion.php) ablegen und mittels include in den entsprechenden <div></div> Bereich der Homepage hineinsetzen, oder?
Gruß,
Webdesignerin
P.S.: Ich hätte nicht gedacht, dass sich das mit strings so einfach machen lässt, ich dachte mit else/if.
Edit: Ich habe in der 4. Zeile noch $handle durch $file ersetzt und noch Links zum Blättern reingesetzt. Alles ist jetzt so wie es sein soll - Dankeschön! Das ging ja wieder mal superschnell hier ...
Thread kann geschlossen werden. nikic: Dein Wunsch ist mir Befehl :)
Beitrag zuletzt geändert: 2.5.2010 15:08:58 von nikic -
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage