PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Array auslesen und auf der Seite anzeigen ?


Natheedo
19.12.2005, 01:35:48
Hi,

ich hab hier einen Counter (geht eigentlich auch nur um die Passage):


// counter auslesen
$counter = file( $counter_db );
$hits = array();
foreach( $counter as $ln ) {
$ln = trim( $ln );
if( $ln == '' ) {
continue;
}
list( $f, $h ) = explode( $counter_separator, $ln );
$hits[$f] = $h;
}


Wie lese ich das jetzt aus und kann das Ergebniss des Counters auf einer x beliebigen Stelle auf meiner .php Seite wiedergeben???

Mit welchem Code/Befehl?

Vielen Dank !

Natheedo

vt1816
19.12.2005, 06:42:40
Ausgaben werden mit ECHO (http://de2.php.net/echo) / PRINT (http://de2.php.net/print) realisiert.

Natheedo
19.12.2005, 11:20:46
Danke, aber da hast du mich falsch verstanden, ich möchte das Ergebniss auf einer anderen Seite includen, das geht ja nicht mit Echo / Print :(

Natheedo

feuervogel
19.12.2005, 12:22:43
dann musst du auf der anderen seite den counter eben noch mal auslesen oder du übergibst das ergebniss an die seite mit $_GET, $_SESSION einem COOKIE, oder was es sonst noch so gibt.

Natheedo
19.12.2005, 12:30:14
Und genau das ist ja das Problem, ich weiß nicht wie ich den Counter von der anderen Seite auslesen soll ... :(

Natheedo

feuervogel
19.12.2005, 12:36:13
Und genau das ist ja das Problem, ich weiß nicht wie ich den Counter von der anderen Seite auslesen soll ... :(

Natheedo

genau so wie du ihn bisher ausliest.

Natheedo
19.12.2005, 12:42:43
Ich weiß es nicht, sonst würd ich nicht fragen :(

feuervogel
19.12.2005, 12:50:07
Ich weiß es nicht, sonst würd ich nicht fragen :(

du hast uns doch genau den code-schnipsel gepostet, mit dem du den counter ausliest.

Natheedo
19.12.2005, 12:57:54
He? Entweder verwechsle ich jetzt was oder du.

Zur Erklärung :

Ich habe eine Image "Gallerie" so mit Hyperlinks zu bildern in einer Tabelle, daneben soll die Downloadstatistik.

Bei Onklick auf so ein Bild, läd er die Datei count.php (die die Scriptdatei ist) in der er zuerst den Header ladet, das man das Bild direkt downloaden kann, danach kommt die eigentliche Count Funktion.

Die count.php - Sieht komplett so aus :


<?php
// config
$picture_path = '../pics/ebaypics/';
$counter_db = 'data/counter.txt';
$counter_separator = '|';

// init
$filename = $_GET['id'] . '.gif';
$filepath = $picture_path . $filename;

if ( !file_exists( $filepath ) ) {
die( 'Datei existiert nicht!' );
}

// counter auslesen
$counter = file( $counter_db );
$hits = array();
foreach( $counter as $ln ) {
$ln = trim( $ln );
if( $ln == '' ) {
continue;
}
list( $f, $h ) = explode( $counter_separator, $ln );
$hits[$f] = $h;
}

// hits aktualisieren
if( isset( $hits[$filename] ) ) { // eintrag existiert bereits
$hits[$filename]++;
} else {
$hits[$filename] = 1;
}

// counterstand speichern
$fp = fopen( $counter_db, 'w' );
foreach( $hits as $f => $h ) {
fwrite( $fp, $f.$counter_separator.$h."\n" );
}
fclose( $fp );

// header schicken
header( 'Content-Disposition: attachment; filename="' . $filename . '"' );
header( 'Content-Length: ' . filesize( $filepath ) );

// content schicken
readfile( $filepath );
?>


Ich möchte aber auf meiner Bilder Gallerie, also auf der bilder.php wie gesagt neben den Pics, den aktuellen gedownloadeten Wert haben - Das geht doch nicht, indem ich den Code Schnipsel von oben da reinposte ... !?!

Das müsste doch irgendwie so in "der Art" aussehen ... :


<?php echo $hits[$filename]; ?>


Wie gesagt so in der Art, ich bekomms net hin ... Da fehlt wohl der Verweis das er die Hits aus der count.php holen soll ...

Natheedo