Eurokicker
-


Hinweise


Antwort
 
LinkBack Themen-Optionen Thema durchsuchen Thema bewerten
Alt 28.02.2005, 16:36   #1
TP-Senior
 
Benutzerbild von ZombyWoof
 
Registriert seit: May 2002
Ort: Saarbrücken
ZombyWoof macht alles soweit korrekt
Unhappy

Import Skript CSV->mySQL


Hallo Leuts,

ich habe hier ein Problem was mir echt zu hoch ist irgendwie ...
Also ich importiere eine Textdatei in eine mySQL-Datenbank:

PHP-Code:
$fp fopen ($dateiname"r"); #öffnen
 
while (!feof($fp)) {     # ende?
       
$zeile fgets($fp,1024); # einlesen
       
$zeile chop ($zeile);
                                  list (
$IDproduct,
                
$ID_Hauptgruppe,  
             
$Name_Hauptgruppe
             
$ID_Untergruppe
             
$Name_Untergruppe
             
$BestellNr
             
$Name
             
$Text,
             
$Preis_Beutel,
             
$Preis_Beutel_2,
             
$Preis_Beutel_3,
             
$Preis_Blister,
             
$IDgruppe,
             
$IDuntergruppe
             
             
) = explode (";",$zeile); // Felder aufspalten
       
$zeile "'".str_replace(",","','",strstr($zeile,","))."'";
       
$Preis_Beutel   str_replace(",",".",$Preis_Beutel); 
       
$Preis_Beutel_2 str_replace(",",".",$Preis_Beutel_2); 
       
$Preis_Beutel_3 str_replace(",",".",$Preis_Beutel_3); 
       
$Preis_Blister  str_replace(",",".",$Preis_Blister); 
       
$sql "INSERT INTO $produkte (IDproduct,BestellNr,Name,Text,Preis_Beutel,Preis_Beutel_2,Preis_Beutel_3,Preis_Blister,IDgruppe,IDuntergruppe) VALUES ('IDproduct', '$BestellNr', '$Name', '$Text', '$Preis_Beutel', '$Preis_Beutel_2', '$Preis_Beutel_3', '$Preis_Blister' ,'$ID_Hauptgruppe','$ID_Untergruppe')";
       
$result mysql_query ($sql,$db); 
soweit funktioniert das auch wunderbar.
In ein paar Datensätzen ist die Artikelbeschreibung ($Text) jedoch formatiert, d.h. Tabstops und/oder Returns etc. ... und genau bei diesen Datensätzen steigt der Importvorgang komplett aus und ab der Zeile wird dann nur noch Müll importiert. Warum datt denn? Irgendwie werde ich da nicht schlau draus ..
Wäre Weltklasse wenn mir jemand einen Tipp geben könnte wie ich das hinbekommen könnte ....

Gruß Frank
ZombyWoof ist offline   Mit Zitat antworten


Alt 28.02.2005, 16:54   #2
TP-Special Mod
 
Benutzerbild von steffenk
 
Registriert seit: Feb 2005
Ort: Haan / NRW
steffenk lebt für das TP und seine Usersteffenk lebt für das TP und seine Usersteffenk lebt für das TP und seine Usersteffenk lebt für das TP und seine Usersteffenk lebt für das TP und seine Usersteffenk lebt für das TP und seine Usersteffenk lebt für das TP und seine Usersteffenk lebt für das TP und seine User
in der gerade erschienen Version von MySQLDumper ist CSV-Import drin, kannst Du Dir ja mal anschauen.

Es liegt wahrscheinlich an den Steuerzeichen.
Wandel die nach dem Schema um:

$line=str_replace('\\r', "\015",$line);
$line=str_replace('\\n', "\012",$line);
$line=str_replace('\\t', "\011",$$line);
__________________

Typo3 · MySQLDumper · dislabs
·
manche Mühlen mahlen schneller ...
"Ich habe Rücken"
Horst Schlämmer

Geändert von steffenk (28.02.2005 um 16:59 Uhr).
steffenk ist offline   Mit Zitat antworten
Alt 28.02.2005, 19:44   #3
TP-Senior
 
Benutzerbild von ZombyWoof
 
Registriert seit: May 2002
Ort: Saarbrücken
ZombyWoof macht alles soweit korrekt
Hallo St@eff.en,

danke für den Tipp.
Ich habe noch etwas rumgespielt und es liegt in jedem Fall an den Sonderzeichen, sobald die Zeile mit den Umbrüchen dran kommt ist Sense ...
Den Code von dir habe ich mal eingebaut, leider immer noch das gleiche Drama, $zeile = str_replace ("\r\n","<br>",$zeile); bringt auch nix.

Deprimiert,
Frank
ZombyWoof ist offline   Mit Zitat antworten
Alt 01.03.2005, 00:49   #4
TP-Special Mod
 
Benutzerbild von steffenk
 
Registriert seit: Feb 2005
Ort: Haan / NRW
steffenk lebt für das TP und seine Usersteffenk lebt für das TP und seine Usersteffenk lebt für das TP und seine Usersteffenk lebt für das TP und seine Usersteffenk lebt für das TP und seine Usersteffenk lebt für das TP und seine Usersteffenk lebt für das TP und seine Usersteffenk lebt für das TP und seine User
beim Auswerten kannst Du auch mit rtrim($zeile) die Umbrüche eliminieren.
Ersetze chop mal durch rtrim

ich habs mal umgeschrieben, aber ungeprüft:
Code:
while (!feof($fp)) {     # ende? 
	$zeile = fgets($fp,1024); # einlesen 
    $zeile = rtrim($zeile); 
    $arr=explode (";",$zeile); // Felder aufspalten 
    
	$sql = "INSERT INTO $produkte (IDproduct,BestellNr,Name,Text,
		   Preis_Beutel,Preis_ Beutel_2,Preis_Beutel_3,Preis_Blister,IDgruppe,IDuntergruppe) 
			VALUES (
			'$arr[0]','$arr[1]','$arr[2]','$arr[3]','$arr[4]','$arr[5]',
			'$arr[6]','$arr[7]',".str_replace(",",".",$arr[8]).",".str_replace(",",".",$arr[9]).",".str_replace(",",".",$arr[10]).",
			".str_replace(",",".",$arr[11]).",'$arr[12]','$arr[13]');
			)";    
	$result = mysql_query ($sql,$db); 
}
Du musst halt noch bei den Zahlen die ticks entfernen.

Ausserdem hattest Du bei den Feldnamen komischerweise spaces dazwischen
__________________

Typo3 · MySQLDumper · dislabs
·
manche Mühlen mahlen schneller ...
"Ich habe Rücken"
Horst Schlämmer

Geändert von steffenk (01.03.2005 um 01:03 Uhr).
steffenk ist offline   Mit Zitat antworten
Antwort

  Aktuelles Thema
  TP Hilfe Forum > Web-Editoren & Coding > Traum-Dynamik
Import Skript CSV->mySQL Import Skript CSV->mySQL
« [Suche] Ganz einfaches Gallerieskipt mit Uploadfunktion | Dateien mit heutigem Timestamp zählen »

Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
 
Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche
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
html als csv abspeichern nüchtern Webdesign & Co. 1 08.02.2005 01:40
csv import über phpmyadmin: nur erste Zeile jackie_o Traum-Dynamik 8 07.02.2005 18:11
[php] bitte umhilfe: skript soll datei erstellen und schreiben gdav Traum-Dynamik 1 02.10.2004 01:57
php skript per cronjob aufrufen Rizzla Server & Provider 3 29.09.2004 13:19


Alle Zeitangaben in WEZ +2. Es ist jetzt 07:30 Uhr.

Powered by: vBulletin Version 3.7 (Deutsch)
Copyright ©2000 - 2008, Jelsoft Enterprises Ltd. / Search Engine Friendly URLs by vBSEO 3.2.0 ©2008, Crawlability, Inc.
Traum-Projekt.com | Suchen | Archiv | Impressum | Kontakt | | | Nach oben |



1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67