Aoshi Geschrieben 5. Mai 2010 Geschrieben 5. Mai 2010 Hallo, habe ein kleines Problem. Follgendes: Eine datei namens test.txt soll gelesen werden und der inhalt soll dann in die SQL Datenbank geschrieben werden. Doch der inhalt der txt datei, der leider unveränderbar ist, enthält auch inhalte, die nicht in die Datenbank sollen. Der inhalt der txt sieht so ungefähr aus: "+123456789" "+987654321" "+789456123" "+321654987" Jedoch brauche ich nur die Zahlen. Also so wie hier: 123456789 987654321 789456123 321654987 Leider habe ich keine ahnung, wie ich diese sonderzeichen wie " und + weg bekomme. Hat da vllt einer eine idee? mfg Aoshi Zitieren
Aoshi Geschrieben 5. Mai 2010 Autor Geschrieben 5. Mai 2010 (bearbeitet) Habe nun was gefunden gehabt: <?php $sFile = "test.txt"; $fp = fopen($sFile, "r"); $read = fread($fp, "4096"); fclose($fp); $search1 = "+"; $search2 = ""; $replace = ""; $read1 = str_replace($search1, $replace, $read1); $read2 = str_replace($search2, $replace, $read2); $fp = fopen($sFile, "w+"); fputs($fp, $read1); fputs($fp, $read2); fclose($fp); ?>[/PHP] bei $search2 soll nun das sonderzeichen " hin, doch das geht nicht, da php einen fehler ausgibt. Dieses doofe zeichen bereitet mir echt kopfzerbrechen :confused: mfg Aoshi Bearbeitet 5. Mai 2010 von Aoshi Zitieren
Enno Geschrieben 5. Mai 2010 Geschrieben 5. Mai 2010 "\"" sollte das von dir gesuchte bewirken. Zauberwort: maskieren von Zeichen Gruß Enno Zitieren
Aoshi Geschrieben 5. Mai 2010 Autor Geschrieben 5. Mai 2010 Vielen dank, hätte ich auch selber drauf kommen können :upps Jedoch habe ich ein neues doofes Problem und kann den fehler nicht wirklich finden :confused: Er löscht den gesamten inhalt der txt (was er net soll-.-) So ist es zu beginn: "+123456789" "+987654321" "+789456123" "+321654987" So ist es, nachdem das script durchgelaufen ist: So sollte es aussehen: 123456789 987654321 789456123 321654987 So sieht momentan der Quellcode davon aus: <?php //open the txt file $sFile = "test.txt"; $sFileOpen = fopen($sFile, "r"); $sFileRead = fread($sFileOpen, filesize($sFile)); //txt file closed fclose($sFileOpen); //read the txt file and search sign in the file $sFileSearch1 = "+"; $sFileSearch2 = "\""; $sFileReplace = ""; $sFileRead1 = str_replace($sFileSearch1, $sFileReplace, $sFileRead1); $sFileRead2 = str_replace($sFileSearch2, $sFileReplace, $sFileRead2); //open the txt file $sFileOpen = fopen($sFile, "w+"); //<---- hier müsste der fehler liegen, aber ka warum //writes new sign in the txt file fputs($sFileOpen, $sFileRead1); fputs($sFileOpen, $sFileRead2); //txt file closed fclose($sFileOpen); ?>[/PHP] Wäre super wenn mir nochmals jemand helfen könnte. Zumal ich den fehler einfach nicht finden kann mfg Aoshi Zitieren
Toothrot Geschrieben 6. Mai 2010 Geschrieben 6. Mai 2010 Du liest die Datei zwar ein, nutzt aber nicht die eingelesenen Daten. $sFileRead1 = str_replace($sFileSearch1, $sFileReplace, $sFileRead1); $sFileRead2 = str_replace($sFileSearch2, $sFileReplace, $sFileRead2); [/PHP] Du ersetzt Text in $sFileRead1 und $sFileRead2. Diese Variablen sind nirgendwo gesetzt und entsprechend leer. Zitieren
Empfohlene Beiträge
Dein Kommentar
Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.