Grenzen der Textverarbeitung?

Steusi

Nasenbär
Grenzen der Textverarbeitung? ÿþ - Problem

Hallo Leute,
ich bearbeite mit PHP ASC-Datein, werte sie aus, editiere sie usw.
Ob nun ASC oder TXT oder sonst was ist ja für mein Problem egal!

Mein Problem, bei großen Dateien verweigert PHP die Arbeit!
Kann es daran liegen das mein Array zu groß wird?

Meine Datei ist 35 MB groß, welche auch in einem Array zwischengespeichert werden, wobei jeder Eintrag ca. 350 Zeichen enthält (eine Zeile in der ASC-Datei)

Speicher musste ich schon hoch setzten:

PHP:
ini_set("memory_limit", "70M");

Sonst läuft nix und die Datei wird ja von Tag zu Tag größer.
Mein Script verweigert bei großen Dateien nun völlig die Arbeit, hat jemand einen Rat für mich, was man verbessern oder prüfen kann.
Es Script zu posten würde glaub ich nichts bringen, da es ja nicht daran liegt?
 
Zuletzt bearbeitet:
Moin, also ich denke ich muss auf eine DB zurückgreifen. Da die Leerzeichen aber sehr wichtig sind da sie als Trennzeichen sind, die Zahl aber bei jedem Datensatz unterschiedlich ist, kann meine Tabelle nur 2 Spalten haben

ID | data

PHP:
// in DB schreiben
$db_tab = "daten2009";
$colum = "data";
$DatanameOld = "PFAD/ZUR/DATEI.ASC";

// Originaldatei öffnen (leserecht)
$DataOld = fopen($DatanameOld,"r");

 
while($oneline=fgets($DataOld,800)) {

	  $pruefen = mysql_query("SELECT * FROM ".$db_tab." WHERE ".$colum."='".$oneline."'") or die("Pruefen: ".mysql_error());
	  var_dump($pruefen);
	  
	  if(!mysql_num_rows($pruefen)) {
		   		$eintrag = "INSERT INTO ".$db_tab." (".$colum.") VALUES ('".$oneline."')";
				$eintragen = mysql_query($eintrag) or die("Eintrag: ". mysql_error()); 	
	  } 
}

Leider klappt das nicht in der DB kommt nix an und ich erhalte folgenden Fehler:
Code:
Pruefen: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '' at line 1
Aber erst ab dem 840. Datensatz, woran liegt das?
Also ASC Datein mit 820 Zeilen kommt die Fehlermeldung nicht!
Ich erhalte in meiner DB einen Datensatz, der folgendermaßen aussieht:

Code:
ÿþR

Eigentlich sollte dort RN999999999 usw.... stehen

Hoffe jemand kann mir helfen!
 

Neue Beiträge

Zurück