IPB

Willkommen, Gast ( Anmelden | Registrierung )

> PHP-Frage, Sortieren mit PHP
Conny
Beitrag 30.01.2005 - 14:00
Beitrag #1


Kommt Zeit, kommt Rat, kommt Conrad!
Gruppensymbol

Gruppe: Mods
Beiträge: 1.169
Mitglied seit: 21.11.2001
Wohnort: Altenkirchen, Westerwald
Mitglieds-Nr.: 42



Moin Gemeinde!

Auf verschiedenen (php) Seiten auf meiner Homepage werden die Seitenbesuche gezählt (php-Zähler schreibt in log-Datei; Log-Datei wird ausgelesen und gibt Ergebnis raus.).
Um die Seitenbesuche alle auf einmal überblicken zu können, habe ich eine PHP-Seite gebastelt, die einfach die Log-Dateien der Seiten ausliest, die ein php-Counter haben. Das Ergebnis wird dann in einer Tabelle untereinander ausgegeben.
So weit, so gut.

Nun möchte ich aber, mit meinen bescheidenen php-Kenntniss, daß nicht nur ausgelesen wird, sondern, daß auch sortiert wird!
Also, alle Log-Dateien werden ausgelesen, die Seite stellt die Ergebnisse so da, daß das schlechteste Ergebnis (=die kleinste Zahl) oben steht.

Ich bin überzeugt, daß das geht!
Aaaber, WIE stelle ich sowas an?

cu
Conny
Go to the top of the page
 
+Quote Post
 
Start new topic
Antworten
Conny
Beitrag 30.01.2005 - 22:56
Beitrag #2


Kommt Zeit, kommt Rat, kommt Conrad!
Gruppensymbol

Gruppe: Mods
Beiträge: 1.169
Mitglied seit: 21.11.2001
Wohnort: Altenkirchen, Westerwald
Mitglieds-Nr.: 42



hi,
ich dachte mehr an:
  1. lese Log-Datei 1 (function)
  2. lese Log-Datei 2
  3. lese Log-Datei usw.
  4. Sortiere das was gelesen wurde von klein nach groß (asort)
  5. Schreibe das Ergebnis in einer Tabelle (echo)
Sicherlich Laienhaft dagestellt, aber zeigt vielleicht wo ich hin möchte.
Wenn ich den Bereich (array) -in der die Zahlen gesucht werden- Vorher festlege , wo soll denn nachher das Ergebnis hinein geschrieben werden?
Im gleichen Array (wird also nach auslesen überschrieben?)

Conny (noch kein Durchblick...)
Go to the top of the page
 
+Quote Post
hondocrx
Beitrag 30.01.2005 - 23:58
Beitrag #3


is getting harder


Gruppe: User
Beiträge: 26
Mitglied seit: 24.09.2004
Mitglieds-Nr.: 3.770



zweiter Versuch mit meinem Script. War schon ein wenig spät.

Das Problem bei Dir ist, das Du die verschiedensten Texte (Bilder Feriencamp, Bilder vom Brand, usw) mitsortieren musst.

Nun ist die Frage wie oft diese Statistik aufgerufen wird.
Bei stetigem Benutzen empfehle ich eine MySQL-DB für den Counter und die Ausgabetexte.

Das untenstehende Script arbeitet mit deinen Logfiles. Ist deswegen aber auch etwas umständlich.

Diesen Code bitte einfügen nach <TH>Link</TH></TR>

und vor </table>


MfG

QUELLTEXT
<?

//
//  einlesend er Logfiles in die entsprechenden Arrays
//
$brand_array    =file('/home/www/web784/html/scripts/count/brand/counter.log');
$camp_array     =file('/home/www/web784/html/scripts/count/camp/counter.log');
$herbst_array   =file('/home/www/web784/html/scripts/count/herbst/counter.log');

//
//   test mit lokalen Dateien
//
//   $brand_array    =file('brand.log');
//   $camp_array     =file('camp.log');
//   $herbst_array  =file('herbst.log');

//
//   Übergeben des Quelltextes  --> $xxxx1 ist vom <TR> bis vor den Counterwert
//   Übergeben des Quelltextes  --> $xxxx2 ist vom Counterwert bis zum </TR>
//
$brand1='<TR><TD><B>Counter:</B> Bilder vom Brand:<BR><B>Seit:</B> 17. Okt. 2004</TD><TD>&nbsp;';
$brand2='</TD><TD><A HREF="../../../galerie_brand.php" TARGET="_blank">galerie_brand.php</A></TD></TR>';

$camp1='<TR><TD><B>Counter:</B> Bilder Feriencamp<BR><B>Seit:</B> 14. Okt. 2004</TD><TD>&nbsp;';
$camp2='</TD><TD><A HREF="../../../galerie_camp.php" TARGET="_blank">galerie_camp.php</A></TD></TR>';

$herbst1='<TR><TD><B>Counter:</B> Bilder Herbstturnier<BR><B>Seit:</B> 14. Okt. 2004</TD><TD>&nbsp;';
$herbst2='</TD><TD><A HREF="../../../galerie_herbst.php" TARGET="_blank">galerie_herbst.php</A></TD></TR>';

//
//   Übergen der Daten in ein Mehrdimensionales Array
//   Kann nach belieben erweitert werden, die Reihenfolge muss beachtet werden
//

$anzahl = array (array($brand_array[0],$camp_array[0],$herbst_array[0]),array($brand1,$camp1,$herbst1),array($brand2,$camp2,$herbst2));


//
//   sortieren der Couterwerte, heir aufsteigend. Soll zuerst der größte wert
//   ausgegeben werden muss SORT_ASC durch SORT_DESC ersetzt werden
//

array_multisort ($anzahl[0], SORT_ASC, SORT_NUMERIC,$anzahl[1],$anzahl[2]);


//
//   Ausgabe des Quellcodes und der Counterwertes  
//   Muß nicht angepasst werden. Egal wie viele Logs eingelesen werden
//

for ($i=0;$i<count($anzahl[0]);$i++)
   {
echo $anzahl[1][$i];
echo $anzahl[0][$i];
echo $anzahl[2][$i];
   }
?>


Der Beitrag wurde von hondocrx bearbeitet: 31.01.2005 - 10:47
Go to the top of the page
 
+Quote Post

Beiträge in diesem Thema
- Conny   PHP-Frage   30.01.2005 - 14:00
- - hondocrx   Hilfreich wäre es wenn Du den Quellcode Deiner ...   30.01.2005 - 16:15
- - db   http://www.php-faq.de/q/q-arrays-sortieren.html H...   30.01.2005 - 16:19
- - Conny   Hallo hondocrx, die Code ist nichts anders als ein...   30.01.2005 - 18:38
- - Andreas   Du musst Dir ein Array bauen und dort (z.B.) Name ...   30.01.2005 - 20:14
- - Conny   Hi, nun, die Logik dahinter habe ich verstanden, s...   30.01.2005 - 20:51
- - Andreas   So lese ich z.B. Verzeichnisnamen in ein Array: HT...   30.01.2005 - 22:33
- - Conny   hi, ich dachte mehr an: lese Log-Datei 1 (function...   30.01.2005 - 22:56
|- - hondocrx   zweiter Versuch mit meinem Script. War schon ein w...   30.01.2005 - 23:58
- - Conny   Hallo hondocrx, die ersten Gehversuche sind vielve...   31.01.2005 - 11:07
- - Conny   Sodele, da bin ich wieder. Tabelle umgeschrieben, ...   31.01.2005 - 13:29
- - Conny   Hallo, ein kosmetischer Tipp habe ich noch bekomme...   01.02.2005 - 22:28
|- - hondocrx   Hi Conny! Geht natürlich auch. Hat aber den N...   01.02.2005 - 23:27
|- - Conny   Hi, ZITAT(hondocrx @ 01.02.2005 - 23:27)Dein ...   01.02.2005 - 23:48
|- - Auge   Hallo ZITAT(hondocrx @ 01.02.2005 - 23:27)PS...   02.02.2005 - 15:17
- - Conny   Hi nochmal, ZITATKurz zu den Bildern (hier Feuer)....   02.02.2005 - 0:00
- - Conny   Hi Auge! Yep, stimmt schon so, das hier ist d...   02.02.2005 - 15:37
|- - hondocrx   Soweit haben ja alle Recht. Nru sollte man etwas a...   02.02.2005 - 17:25
|- - Auge   Hallo ZITAT(Conny @ 02.02.2005 - 15:37)das hi...   02.02.2005 - 21:42
- - Conny   Hi Auge, ZITAT(Auge)...Wer sich ausschließlich auf...   02.02.2005 - 21:53


Reply to this topicStart new topic
2 Besucher lesen dieses Thema (Gäste: 2 | Anonyme Besucher: 0)
0 Mitglieder:

 



RSS Vereinfachte Darstellung Aktuelles Datum: 14.05.2025 - 0:58

taschenkalender
expertise-panel IPS Driver Error

IPS Driver Error

There appears to be an error with the database.
You can try to refresh the page by clicking here