php.de

Zurück   php.de > Webentwicklung > PHP Einsteiger > PHP Tipps 2006

 
 
LinkBack Themen-Optionen Thema bewerten
Alt 11.11.2006, 16:39  
Erfahrener Benutzer
 
Registriert seit: 09.05.2005
Beiträge: 561
BartTheDevil89 kann nur auf Besserung hoffen
Standard CSV-Daten auflisten und/oder abfragen?

Hallo,

ich habe eine CSV-Datei. Leider habe ich mit solcher Art von Daten noch nicht viel gearbeitet. Deshalb ist meine Frage nun, wie ich mit solchen Dateien arbeiten muss. Wenn ich beispielsweise ne Auflistung von den Daten machen möchte, wie ich setze ich sowas mit verschiedenen SEiten um? Bei mysql ist es ja LIMIT $start, $start+50; aber wie mache ich sowas bei csv-Dateien!

Und wenn ich ne spezielle ID habe, kann ich dann aus der Datei auch ne speziellen Eintrag mit der ID laden, wie im mysql?

Gibts eventuell dafür ne Übersichtsseite?`

Danke für die Hilfe
BartTheDevil89 ist offline  
Sponsor Mitteilung
PHP Code Flüsterer

Registriert seit: 21.08.2005
Beiträge: 4682
PHP-Kenntnisse:
Fortgeschritten

Alt 11.11.2006, 17:54  
Erfahrener Benutzer
 
Registriert seit: 27.10.2004
Beiträge: 1.093
PHP-Kenntnisse:
Fortgeschritten
Chr!s
Standard

http://de2.php.net/fgetcsv
Schau mal hier rein..
Chr!s ist offline  
Alt 11.11.2006, 18:01  
Erfahrener Benutzer
 
Registriert seit: 21.05.2008
Beiträge: 9.937
Zergling-new wird schon bald berühmt werden
Standard

Hallo,
diese Logik musst du selbst programmieren, ist aber nicht schwer.
Zergling-new ist offline  
Alt 11.11.2006, 19:52  
CIX88
Gast
 
Beiträge: n/a
Standard

Zitat:
aber wie mache ich sowas bei csv-Dateien!
Ich weis das es viele Anbieter (Versandhäuser) gibt, die an bestimmte Kunden einen Export ihrer Produkte als CSV oder XML anbieten.
Wenn also die Vorgabe eine CSV-Datei ist, dann versuche, die Inhalte in deine DB zu importieren.
Wenn diese Daten dann in deiner DB stehen, kannst du weit besser damit arbeiten.
 
Alt 11.11.2006, 20:05  
Erfahrener Benutzer
 
Registriert seit: 18.07.2004
Beiträge: 2.162
PHP-Kenntnisse:
Fortgeschritten
Basti
Standard

Jo, das habe ich auch immer so gehandhabt (bzw. war erst einmal eine Anforderung).

Andernfalls würde ich vielleicht etwa so rangehen (ungetestst):
PHP-Code:
<?php

class Csv
{
    protected 
$rHandle;

    public function 
__construct($sPath)
    {
        if (
file_exists($sPath) || !is_readable($sPath))
            throw new 
FileNotExistsException($sPath);

        
$this->rHandle fopen($sPath'r');
    }

    public function 
retrieve($mCondCallback null$iStart null$iLen null)
    {
        if (
is_null($iStart))
            
$iStart 0;

        
fseek($this->rHandle0);

        
$iNumResults 0;
        
$aResult = array();

        while (
false !== ($aRecord fgetcsv($this->rHandle))) {

            
$bMatching true;
            if (!
is_null($mCondCallback))
                
$bMatching call_user_func($mCondCallback$aRecord);

            if (
$bMatching && $iNumResults >= $iStart) {
                
$aResult[] = $aResult;
                
$iNumResults++;
            }

            if (!
is_null($iLen) && $iNumResults $iStart $iLen)
                continue;
        }
        return 
$aResult;
    }

    public function 
__destruct()
    {
        
fclose($this->rHandle);
    }
}

?>
Also mit einer Callback-Funktion alle Datensätze prüfen.

Basti
Basti ist offline  
Alt 15.11.2006, 19:01  
Erfahrener Benutzer
 
Registriert seit: 09.05.2005
Beiträge: 561
BartTheDevil89 kann nur auf Besserung hoffen
Standard

Zitat:
Zitat von Chr!s
http://de2.php.net/fgetcsv
Schau mal hier rein..
OK, also ich habe versucht mir jetzt mal damit ein Bild zu machen....aber bei mir kommt jetzt erstmal folgendes raus (wenn ich Zeile 2 auslese):

1 fields in line 2:
1036143;"Blub2";"";"Blub1";"Blub2";"Blub3";2897346 8;"Blub4";"Blub5";1.00;"0";"0.00"

Jetzt muss ich aber diese Daten noch irgendwie allein bekommen. Aktuell schauts jetzt so aus:

PHP-Code:
<?php
$row 
1;                                   
$handle fopen ("testdatei.csv","r");             
while ( (
$data fgetcsv ($handle1000",")) !== FALSE ) { 
                                          
   
$num count ($data);                    
                                      
   print 
"

 $num fields in line $row: 
\n"
;
   
$row++;                               
                                             
   for (
$c=0$c $num$c++) {             
       print 
$data[$c] . "
\n"
;            
   }
}
fclose ($handle);
?>
Danke für die Hilfe
BartTheDevil89 ist offline  
Alt 15.11.2006, 21:38  
moderatives Dielektrikum
 
Benutzerbild von nikosch
 
Registriert seit: 21.05.2008
Beiträge: 35.987
PHP-Kenntnisse:
Fortgeschritten
nikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunft
Standard

das hast du aber schön kopiert
hast du den quellcode bereits verstanden? Deiner Bsp-Zeile zufolge verwendet deine csv Datei Semikolons nicht Kommata.
nikosch ist offline  
 


Themen-Optionen
Thema bewerten
Thema bewerten:

Forumregeln
Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are an
Gehe zu

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
htaccess Daten abfragen PHP Tipps 2004 3 04.06.2009 20:43
Abfragen von Daten an Hand der ähnlichkeit eines Textes PHS Datenbanken 4 26.02.2007 09:08
Daten aus MySQL Datenbank abfragen trivial Datenbanken 2 29.04.2006 17:48
Session Frage - gleiches Formular 2 mal alle Daten behalten NetLook PHP Tipps 2007 1 21.11.2005 18:42
Daten auslesen und ändern Datenbanken 2 17.09.2005 19:28
Daten eintragen und auslesen Rettungsdackel Datenbanken 0 14.09.2005 16:29
daten von bildern auf einem anderen server abfragen netti PHP Tipps 2005-2 3 05.08.2005 14:27
Per Webbrowser-Login eingegebene Daten abfragen. PHP Tipps 2005-2 3 03.08.2005 10:31
[Erledigt] Daten via SSL abfragen? PHP-Fortgeschrittene 6 08.07.2005 18:20
Alle Daten aus einer Spalte auflisten Datenbanken 15 25.02.2005 08:42
[Erledigt] Wie Daten richtig abfragen ? Datenbanken 9 22.12.2004 20:56
Abfragen und Auswerten von Daten verschiedener Tabellen duerov Datenbanken 1 24.09.2004 11:20
Abfragen und Auswerten von Daten verschiedener Tabellen duerov PHP Tipps 2004 3 24.09.2004 10:12
array_push nur in begrenzter Anzahl ausführen ? PHP Tipps 2004 2 07.09.2004 09:05
[Erledigt] mysql Daten abfragen und sortieren von b Datenbanken 2 11.06.2004 09:15

Besucher kamen über folgende Suchanfragen bei Google auf diese Seite
php csv abfrage, csv daten abfrage php, php abfragen csv datensatz, php abfrage aus csv, eingegebenen daten aufzählen php, benutzer auflisten csv, mit php werte aus csv abfragen, php csv daten abfragen, php datensätze csv abfragen, php csv abfrage -sql, csv abfrage php, csv auflisten php, csv daten auflisten, r daten auflisten, csv per php abfragen

Alle Zeitangaben in WEZ +2. Es ist jetzt 12:54 Uhr.




Powered by vBulletin® Version 3.7.2 (Deutsch)
Copyright ©2000 - 2012, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO 3.2.0
Aprilia-Forum, Aquaristik-Forum, Liebeskummer-Forum, Zierfisch-Forum, Geizkragen-Forum

Creative Commons License
Dieser Inhalt ist unter einer Creative Commons-Lizenz lizenziert.