CSV runterladen und eintragen
Moin.
Ich möchte gerne so eine Art Börsensimulation machen.
Von Yahoo gibt es die Möglichkeit sich die benötigten Daten als CSV zu ziehen.
Dazu gibt es ne URL die man aufrufen kann.
z.B.:
http://quote.yahoo.com/d/quotes.csv?s=CF….DE&f=nl1d1c1p2
Dabei kommt dann folgende CSV Datei raus:
Die muss ich nun in ne Datenbank eintragen.
Trennen mache ich halt mit explode.
Die Frage ist halt, wie kann ich das so automatisieren, das beim Klick auf einen Link "Aktualisieren" die Daten auf den Server gezogen und in die Datenbank eingetragen werden ( nicht neu, sondern die alten halt überschreiben).
Mein Problem ist das speichern bzw. ziehen des CSV auf dem Server und das eintragen von da in die Datenbank und das anschließende löschen der CSV Datei.
Ich habe keine rechte Idee wie ich das machen soll.
Jan
Ich möchte gerne so eine Art Börsensimulation machen.
Von Yahoo gibt es die Möglichkeit sich die benötigten Daten als CSV zu ziehen.
Dazu gibt es ne URL die man aufrufen kann.
z.B.:
http://quote.yahoo.com/d/quotes.csv?s=CF….DE&f=nl1d1c1p2
Dabei kommt dann folgende CSV Datei raus:
Zitat
"CONSTANTIN FILM",11.00,"9/15/2006",0.00,"0.00%"
"DEUTSCHE TELEKOM ",11.70,"9/15/2006",+0.03,"+0.26%"
"EBAY",22.12,"9/15/2006",-0.22,"-0.98%"
"GRANT LIFE SCIENC",0.043,"9/14/2006",+0.018,"+72.00%"
"METRO",43.86,"9/15/2006",+0.10,"+0.23%"
Die muss ich nun in ne Datenbank eintragen.
Trennen mache ich halt mit explode.
Die Frage ist halt, wie kann ich das so automatisieren, das beim Klick auf einen Link "Aktualisieren" die Daten auf den Server gezogen und in die Datenbank eingetragen werden ( nicht neu, sondern die alten halt überschreiben).
Mein Problem ist das speichern bzw. ziehen des CSV auf dem Server und das eintragen von da in die Datenbank und das anschließende löschen der CSV Datei.
Ich habe keine rechte Idee wie ich das machen soll.
Jan
"Fehler sind immer zu Verzeihen, wenn man den Mut hat, diese auch zu zugeben." Lee Jun-Fan
hier kannst du mir mal ein beispiel anschauen.
jedoch ist es soweit ich weiß auf manchen servern deaktiviert per fopen(); auf andere server zuzugreifen, bzw ich weiß nicht ob das fopen(); mit den parametern der csv datei funktioniert.
jperl
jedoch ist es soweit ich weiß auf manchen servern deaktiviert per fopen(); auf andere server zuzugreifen, bzw ich weiß nicht ob das fopen(); mit den parametern der csv datei funktioniert.
jperl
Konfuzius [chinesischer Philosoph (551 - 479 v. Chr.)]
Das Entscheidende am Wissen ist, daß man es beherzigt und anwendet.
Das Entscheidende am Wissen ist, daß man es beherzigt und anwendet.
Zitat
Original von Jan Schattling
Wo hier?
sry, link wohl nicht gepostet.
http://de.php.net/manual/de/function.fgetcsv.php
jperl
Konfuzius [chinesischer Philosoph (551 - 479 v. Chr.)]
Das Entscheidende am Wissen ist, daß man es beherzigt und anwendet.
Das Entscheidende am Wissen ist, daß man es beherzigt und anwendet.
Super... danke...
Habe folgenden Code von da verwendet um es zu testen:
das funktioniert tatsächlich... leider nur auf meinem Heimserver.
Wenn ich es online mache bekomme ich folgende Fehlermeldung.
Was ist das Problem?
Jan
Habe folgenden Code von da verwendet um es zu testen:
|
|
PHP-Quelltext |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 |
<?php
$row = 1; // Anzahl der Arrays
$handle = fopen ("test.csv","r"); // Datei zum Lesen öffnen
while ( ($data = fgetcsv ($handle, 1000, ",")) !== FALSE ) { // Daten werden aus der Datei
// in ein Array $data gelesen
$num = count ($data); // Felder im Array $data
// werden gezählt
print "<p> $num fields in line $row: <br>\n";
$row++; // Anzahl der Arrays wird
// inkrementiert
for ($c=0; $c < $num; $c++) { // FOR-Schleife, um Felder
print $data[$c] . "<br>\n"; // des Arrays auszugeben
}
}
fclose ($handle);
?>
|
das funktioniert tatsächlich... leider nur auf meinem Heimserver.
Wenn ich es online mache bekomme ich folgende Fehlermeldung.
Zitat
Warning: fopen(): URL file-access is disabled in the server configuration in /var/www/web35/html/test.php on line 3
Warning: fopen(http://quote.yahoo.com/d/quotes.csv?s=CF….DE&f=nl1d1c1p2): failed to open stream: no suitable wrapper could be found in /var/www/web35/html/test.php on line 3
Warning: fgetcsv(): supplied argument is not a valid stream resource in /var/www/web35/html/test.php on line 4
Warning: fclose(): supplied argument is not a valid stream resource in /var/www/web35/html/test.php on line 15
Was ist das Problem?
Jan
"Fehler sind immer zu Verzeihen, wenn man den Mut hat, diese auch zu zugeben." Lee Jun-Fan
Zitat
Original von Jan Schattling
Zitat
Warning: fopen(): URL file-access is disabled in the server configuration in /var/www/web35/html/test.php on line 3
Warning: fopen(http://quote.yahoo.com/d/quotes.csv?s=CF….DE&f=nl1d1c1p2): failed to open stream: no suitable wrapper could be found in /var/www/web35/html/test.php on line 3
Warning: fgetcsv(): supplied argument is not a valid stream resource in /var/www/web35/html/test.php on line 4
Warning: fclose(): supplied argument is not a valid stream resource in /var/www/web35/html/test.php on line 15
Was ist das Problem?
Zitat
Original von jperl
jedoch ist es soweit ich weiß auf manchen servern deaktiviert per fopen(); auf andere server zuzugreifen
auf dem server den du verwendest ist dieses feature wie von mir bereits gesagt deaktiviert.
wenn es aktiviert wäre müsste es funktionieren.
jperl
Konfuzius [chinesischer Philosoph (551 - 479 v. Chr.)]
Das Entscheidende am Wissen ist, daß man es beherzigt und anwendet.
Das Entscheidende am Wissen ist, daß man es beherzigt und anwendet.


