Anzeige

.csv Datei auswerten lassen

.csv Datei auswerten lassen | PSD-Tutorials.de

Erstellt von KillerSunZone, 01.11.2008.

  1. KillerSunZone

    KillerSunZone [*B00N*]

    Dabei seit:
    29.08.2006
    Beiträge:
    69
    Geschlecht:
    weiblich
    Ort:
    Berlin
    Software:
    Adobe Design Standard CS6
    .csv Datei auswerten lassen
    Hey Leute,

    wie der Titel ja schon sagt brauch ich irgendwie Hilfe damit ich eine.csv datei auswerten kann.
    Die tabelle ist folgend ausgebaut:

    Spalte A:
    Zeile 1: Vorname Nachname, 217.238.6.83
    Zeile 2: Vorname Nachname, 38.108.180.95
    Zeile 3: Vorname Nachname, 217.238.6.83

    und immer so weiter... wenn das jetzt nur 100 Zeilen wären kein problem.. sag ich mach ich eben so ... lösch die doppelten IPs raus und zähl selber, aber da ich dort über 8000 Zeilen hab ist das bissel zu viel des guten..

    der sinn dieser Tabelle.. es soll ein Ranking entstehen, aber nur jede IP soll EINMAL pro Person gewertet werden wenn IP 217.238.6.83 jetzt bei Person 1 UND 2 stehen würde, wäre es in Ordnung.

    Versteht ihr was ich mein?

    Naja, ich hoffe mir kann irgendwer helfen wie ich das am besten anstelle...

    danke!
     
    #1      
  2. saila

    saila Moderatorle

    Dabei seit:
    21.06.2006
    Beiträge:
    2.239
    Geschlecht:
    männlich
    Ort:
    50°48'23.69" N 7°14'22.19" O
    Software:
    Eclipse, PHP5 OO, MySQL5, CSS(auch Barrierefrei), JS, Symfony
    .csv Datei auswerten lassen
    AW: .csv Datei auswerten lassen

    Geht es dir nun um den Query inkl. der Speicherung von Daten aus einer Tabelle in eine CSV-Datei oder geht es um das einlesen einer CSV-Datei in eine DB-Tabelle?
     
    #2      
  3. KillerSunZone

    KillerSunZone [*B00N*]

    Dabei seit:
    29.08.2006
    Beiträge:
    69
    Geschlecht:
    weiblich
    Ort:
    Berlin
    Software:
    Adobe Design Standard CS6
    .csv Datei auswerten lassen
    AW: .csv Datei auswerten lassen

    Die Tabelle und alles habe ich bereits..
    kann die ja einfach auch mit microsoft excel öffnen.. da sehe ich jetzt eben diesen aufbau den ich in beitrag 1 beschrieben habe. ich will jetzt eben nur wissen, wie man das am günstigsten ausliest
     
    #3      
  4. saila

    saila Moderatorle

    Dabei seit:
    21.06.2006
    Beiträge:
    2.239
    Geschlecht:
    männlich
    Ort:
    50°48'23.69" N 7°14'22.19" O
    Software:
    Eclipse, PHP5 OO, MySQL5, CSS(auch Barrierefrei), JS, Symfony
    .csv Datei auswerten lassen
    AW: .csv Datei auswerten lassen

    SELECT DISTINCT ip, spalte1, spalte2, spalte3 usw. FROM tabelle
     
    #4      
  5. KillerSunZone

    KillerSunZone [*B00N*]

    Dabei seit:
    29.08.2006
    Beiträge:
    69
    Geschlecht:
    weiblich
    Ort:
    Berlin
    Software:
    Adobe Design Standard CS6
    .csv Datei auswerten lassen
    AW: .csv Datei auswerten lassen

    o.0 hmm.. denke mal viele leute können was damit anfangen.. ich leider nicht... tut mir leid...
     
    #5      
  6. netbandit

    netbandit Aktives Mitglied

    12
    Dabei seit:
    18.05.2008
    Beiträge:
    1.145
    Geschlecht:
    männlich
    .csv Datei auswerten lassen
    AW: .csv Datei auswerten lassen

    PHP:
    1.  
    2. <?
    3. $data=file_get_contents('tabelle.csv');
    4. $item=explode("\n", $data);
    5. echo 'Vorher: ' . count($item) . ' Einträge<br>';
    6. $item=array_unique($item);
    7. echo 'Nachher: ' . count($item) . ' Einträge<br>';
    8. echo implode("\n", $item);
    9. ?>
    10.  
     
    #6      
  7. saila

    saila Moderatorle

    Dabei seit:
    21.06.2006
    Beiträge:
    2.239
    Geschlecht:
    männlich
    Ort:
    50°48'23.69" N 7°14'22.19" O
    Software:
    Eclipse, PHP5 OO, MySQL5, CSS(auch Barrierefrei), JS, Symfony
    .csv Datei auswerten lassen
    AW: .csv Datei auswerten lassen

    Naja, ich gehe momentan davon aus das es dir um das auslesen der Tabelle geht. Ergo

    PHP:
    1.  
    2. <?php
    3. $sql = mysql_query( 'SELECT DISTINCT ip, vorname, nachname FROM tabellenname' );
    4. ?>
    5.  
    Mit DISTINCT erhälst du lediglich alle IP's in einmaliger Ausgabe. Also es wird vermieden, dass gleiche IP's nicht in der Selection berücksichtigt werden.
     
    #7      
  8. KillerSunZone

    KillerSunZone [*B00N*]

    Dabei seit:
    29.08.2006
    Beiträge:
    69
    Geschlecht:
    weiblich
    Ort:
    Berlin
    Software:
    Adobe Design Standard CS6
    .csv Datei auswerten lassen
    AW: .csv Datei auswerten lassen

    muss ich dann trotzdem in nachhinein alle verbleibenen IPs selbst auszählen? sprich Person 1 hat 12 "Stimmen" bekommen und Person 2 "22" ?
     
    #8      
  9. netbandit

    netbandit Aktives Mitglied

    12
    Dabei seit:
    18.05.2008
    Beiträge:
    1.145
    Geschlecht:
    männlich
    .csv Datei auswerten lassen
    AW: .csv Datei auswerten lassen

    Ach herje, lese ich ja jetzt erst: 8000 Einträge :uhm: So etwas sollte man doch von vornherein über eine (MySql)DB lösen.
     
    #9      
  10. KillerSunZone

    KillerSunZone [*B00N*]

    Dabei seit:
    29.08.2006
    Beiträge:
    69
    Geschlecht:
    weiblich
    Ort:
    Berlin
    Software:
    Adobe Design Standard CS6
    .csv Datei auswerten lassen
    AW: .csv Datei auswerten lassen

    jep richtig.. das is ja das problem.. ja ich weiß sagt jeder mit MySQL .. aber das problem ist / war.. 1. kann kein PHP und kein MySQL und zu dem.. auf meinem alten Server lief nur eine sehr alte php version und noch gar kein MySQL .. und ich hab jetzt keine lust alles neu zumachen
     
    #10      
  11. saila

    saila Moderatorle

    Dabei seit:
    21.06.2006
    Beiträge:
    2.239
    Geschlecht:
    männlich
    Ort:
    50°48'23.69" N 7°14'22.19" O
    Software:
    Eclipse, PHP5 OO, MySQL5, CSS(auch Barrierefrei), JS, Symfony
    .csv Datei auswerten lassen
    AW: .csv Datei auswerten lassen

    Nein, du kannst einen SUBSELECT in den SELECT einziehen und diesen mit COUNT und GROUP BY ausstatten. Dabei beachten einen Temp-Spaltennamen zu vergeben, welchen du in der while(); entsprechend platzieren kannst. Das ganze kannst du auch entsprechend sortiert ausgeben lassen. Der User. Auf- oder Absteigend (ASC/DESC).

    Diese Abfrage sollte allerdings auch lediglich zu administrativen Zwecken verwendet werden und nicht alle 5 Min. aufgerufen werden, da die Abfrage (egal wie sie letztlich aufgebaut wird) auf die Performance schlagen wird.

    Wenn dir entsprechende Kenntnisse fehlen (was ich bereits stark vermute) empfehle ich dir die Seite von MySQL :: Die populrste Open-Source-Datenbank der Welt auf welcher du unteranderem auch eine Dokumentation zu MySQL 5 erhalten wirst.
     
    Zuletzt bearbeitet: 01.11.2008
    #11      
  12. saila

    saila Moderatorle

    Dabei seit:
    21.06.2006
    Beiträge:
    2.239
    Geschlecht:
    männlich
    Ort:
    50°48'23.69" N 7°14'22.19" O
    Software:
    Eclipse, PHP5 OO, MySQL5, CSS(auch Barrierefrei), JS, Symfony
    .csv Datei auswerten lassen
    AW: .csv Datei auswerten lassen

    Wenn es darum geht, die Daten in eine DB-Tabelle zu bringen - das dürfte das kleinste Problem darstellen. Das kannst du auch letztlich mit dem alten Script realisieren.

    So jetzt noch mal - liegen die Daten in einer Datei oder in einer DB und wenn du von auslesen sprichst, sprichst du von einer CSV-Datei auslesen oder von einer DB-auslesen?
     
    #12      
  13. netbandit

    netbandit Aktives Mitglied

    12
    Dabei seit:
    18.05.2008
    Beiträge:
    1.145
    Geschlecht:
    männlich
    .csv Datei auswerten lassen
    AW: .csv Datei auswerten lassen

    Das hier könnte ich noch anbieten, ob es allerdings bei so vielen Einträgen funktioniert :uhm:

    PHP:
    1.  
    2. <?
    3. $data=file_get_contents('counter.csv');
    4. $user=array();
    5. $item=explode("\n", $data);
    6. $item=array_unique($item);
    7. sort($item);
    8. $max_r=count($item);
    9. for($i=0;$i<$max_r;$i++){
    10.     $arr_item=explode(';', $item[$i]); // hier ggf. einen anderen Trenner anstelle des Semikolons einfügen, je nach dem wie die Daten innerhalb einer Zeile voneinander getrennt sind
    11.     if(count($arr_item)==2){
    12.        if(!isset($user[$arr_item[0]]))$user[$arr_item[0]]=0;
    13.        $user[$arr_item[0]]++;
    14.     }
    15. }
    16. if(count($user)>=1){
    17.    while(list($k,$v)=each($user)){
    18.          echo $k . ' hat ' . $v . ' Stimme(n)<br>';
    19.    }
    20. }
    21. else{
    22.     echo 'Noch keine Daten vorhanden';
    23. }
    24. ?>
    25.  
     
    Zuletzt bearbeitet: 01.11.2008
    #13      
  14. KillerSunZone

    KillerSunZone [*B00N*]

    Dabei seit:
    29.08.2006
    Beiträge:
    69
    Geschlecht:
    weiblich
    Ort:
    Berlin
    Software:
    Adobe Design Standard CS6
    .csv Datei auswerten lassen
    AW: .csv Datei auswerten lassen

    ich rede von einer datei.. also einfach einer .csv datei die habe ich generieren lassen mit:

    <?
    $ip = getenv ("REMOTE_ADDR");

    $fp = fopen("../counter.csv", "a");
    fputs($fp, "Vorname Nachname, $ip\n");
    fclose($fp);
    ?>


    und dieser code steht auf jeder seite... die seite heißt Willkommen auf www.highstreet.de | Die Datenbank für Moderator/innen damit du dir des evtl. mal angucken kannst von was ich rede...
     
    #14      
  15. KillerSunZone

    KillerSunZone [*B00N*]

    Dabei seit:
    29.08.2006
    Beiträge:
    69
    Geschlecht:
    weiblich
    Ort:
    Berlin
    Software:
    Adobe Design Standard CS6
    .csv Datei auswerten lassen
    AW: .csv Datei auswerten lassen

    kann nach meiner hier geschlossen werden... danke netbandit hat sich alles geklärt..!! Danke!
     
    #15      
x
×
×
teststefan