ERLEDIGT
JA
JA
ANTWORTEN
9
9
ZUGRIFFE
674
674
EMPFEHLEN
-
Hallo.
Folgendes Problem.
Ich habe zwei Textdateien.
1. navi.txt
2. Datei soundso.txt
navi.txt enthält eine zeilenweise Linkliste mit HTML TAGs die in Flash verarbeitet werden und so aussehen:Da insbesondere der <a href> Tag ausserhalb vom AS in Flash keinen Sinn macht, sollen alle HTML TAGsHTML-Code:<a href='asfunction:load_file,Datei soundso'><u>Datei soundso</u></a><br>
ignoriert und ausgeblendet werden.
Das Ergebnis von echo ist wie gewünscht der String: Datei soundsoPHP-Code:$fp = fopen("navi.txt","r");
$zeile[] = fgets (strip_tags($fp,100)); //strip_tags() unterbindet das HTML im String
echo strip_tags($zeile[0]);
Die HTML TAGs werden weder angezeigt noch ausgeführt.
Nun möchte ich aber mit Hilfe dieser Auswahl das zum Eintrag gehörige Textfile auslesen.Aber genau das funktioniert nicht. Obwohl wie oben zu sehen die Variable:PHP-Code:$fp_neu = fopen(strip_tags($zeile[0]).".txt","r");
strip_tags($navi) dem String "Datei soundso" entspricht und demnach die Zeile doch so interpretiert werden müsste:bekomme ich eine Fehlermeldung die ich nicht verstehe.PHP-Code:$fp_neu = fopen("Datei soundso.txt,"r");
Code :1
Warning: file(Datei soundso): failed to open stream: No such file or directory in /mnt/be2/03/753/00000012/htdocs/min_test/aktuelles/x_fopen_problem/senden.php on line 13
Weis jemand wie man das richtig schreibt?Geändert von Spelmann (22.07.06 um 22:16 Uhr)
-
Arrgh.
Scheint doch richtig zu sein jedenfalls im Kleinen.
Sorry
-
Eigentlich sollte doch schon am Syntax-Highlighting zu erkennen sein was hier
falsch ist.PHP-Code:$fp_neu = fopen("Datei soundso.txt,"r");
Es fehlt vor dem Komma das schliessende Paar Anfuehrungsstriche.
Es muss also so
aussehen.PHP-Code:$fp_neu = fopen("Datei soundso.txt","r");
PHP Class Collection - PHP-Klassen fuer PHP 5 (und Teilweise auch fuer PHP 4)
Updates: Catcher 1.1, FTPConnection 1.2, MultiSQL 1.1, RSS2 1.1, SMTPConnection 1.4
__________________
EasyLFS - Hintergrundinformationen, Installationsanleitung, Softwareliste und Download
EasyLFS Projektthread - Informationen, Status und Diskussion zu meiner Linux-Distribution
__________________
__________________Ich bin die Schildkroete, mein Sohn. Ich habe das Universum erschaffen, aber bitte mach mir daraus keinen Vorwurf; ich hatte Bauchschmerzen.
Zitat von Friedrich Nietzsche
-
24.07.06 05:19 #4
Hallo!
Ich würde nach Möglichkeit auch auf Leerzeichen verzichten..... die könnten evtl. Probleme bereiten.
Nimm statt dessen lieber das "_" Zeichen..... in Deinem Beispiel also Datei_soundso.txt.
Gruss Dr DauSchri-Schra-Schrödi *g*
mehrspaltiges/zeiliges Seitenlayout mit DIV's und CSS
Dinge, die mit Tabellen besser klappen als mit CSS
Ausgabe von Datum/Zeit unabhängig von der Server Zeitzone [php]
Meine Links zum Thema Linux (Last update: 29.10.2011)
Kein Busen ist so flach wie das Niveau dieser Party!
----
Alte Weisheit: wer uns in den Arsch kriecht wird beschissen!
----
Ich habe 3 Kinder und kein Geld!
Warum kann ich nicht keine Kinder haben und 3 Geld?! (Homer Jay Simpson)
-
@Dennis Wronka
Danke für den Hinweis. War aber nur ein Flüchtigkeitsfehler im Beispiel, der nichts mit meinem eigentlichen Problem zu tun hat. Im Prinzip funktioniert das Skipt ja so wie ich es mir gedacht hab. Jedenfalls in der Miniversion hier. Nur im eigentlichen Projekt hakelts noch.
@ Dr Dau.
Das mit den Leerzeichen gefällt mir selbst nicht. Der User schreibt den Titel eines zu speichernden Artikels in ein Textfeld und die Textdatei soll unter diesem Titel abgespeichert werden.
Gibt es denn vielleicht eine Möglichkeit Leerstellen automatisch mit Unterstrichen füllen zu lassen?
Danke euch Beiden.
-
Hi,
die Möglichkeit gibt es:
schiesePHP-Code:$suchen[0] = " ";
$ersetzen[0] = "_";
$textneu = str_ireplace($suchen, $ersetzen, $text);
-
24.07.06 11:12 #7
Hmm, keine Ahnung ob es eleganter geht.
Aber ich würde es mit str_replace() machen.
Dazu würde ich den Titel in einem seperaten <input type="text"> angeben lassen.
Allerdings würde ich str_replace() auch nur auf Datei-/Verzeichnisebene ansetzen..... in der Datei selbst lässt Du die Funktion also weg.
Ich habe es jetzt nicht probiert, aber ich meine so müsste es funktionieren:
PHP-Code:$fp_neu = fopen(str_replace(" ", "_", $_POST['titel']).".txt", "r");
Schri-Schra-Schrödi *g*
mehrspaltiges/zeiliges Seitenlayout mit DIV's und CSS
Dinge, die mit Tabellen besser klappen als mit CSS
Ausgabe von Datum/Zeit unabhängig von der Server Zeitzone [php]
Meine Links zum Thema Linux (Last update: 29.10.2011)
Kein Busen ist so flach wie das Niveau dieser Party!
----
Alte Weisheit: wer uns in den Arsch kriecht wird beschissen!
----
Ich habe 3 Kinder und kein Geld!
Warum kann ich nicht keine Kinder haben und 3 Geld?! (Homer Jay Simpson)
-
Klasse.
das wird mir später weiterhelfen
(Kämpfe momentan noch mit anderen Prolemen)
-
Ich komme nicht weiter und bin so langsam echt am verzweifeln.
Ich habe mein skript jetzt nochmal aufs nötigste zusammengestaucht um mein Problem zu schildern und hoffe sehr, daß mir jemand helfen kann.
Ich habe also eine Datei navi.txt
Ihr Inhalt ist:
Code :1 2 3 4
navi= <a href='asfunction:load_file,texte/aktuelles/Das_ist_die_Datei_1'><u>Das_ist_die_Datei_1</u></a><br> <a href='asfunction:load_file,texte/aktuelles/Die_zweite_Datei'><u>Die_zweite_Datei</u></a><br> <a href='asfunction:load_file,texte/aktuelles/Datei_Nummer_3'><u>Datei_Nummer_3</u></a><br>
Folgendes Skript funktioniert nur wenn $zeile[x] die jeweils letze Zeile in navi.txt anspricht.
Im Augenblick also bei:bei $zeile[0] bis $zeile[2] Bekomme ich die Fehlermeldung das die zu öffnende Datei nicht existiert.PHP-Code:<?
$navi = fopen("texte/aktuelles/navi.txt","r");
while(!feof($navi))
{
$read=fgets($navi,1000);
$zeile[] = $read;
}
echo strip_tags($zeile[3]);
$artikel = fopen("texte/aktuelles/".strip_tags($zeile[3]).".txt","r");
$content = fread($artikel,5000);
echo "<br>".$content;
?>
Warning: fopen(texte/aktuelles/Die_zweite_Datei.txt): failed to open stream: No such file or directory in /mnt/be2/03/753/00000012/htdocs/min_test/aktuelles/edit.php on line 9
Wohl bemerkt, die Pfade zu den Dateien stimmen ja. Wenn ich aus navi.txt die letzte Zeile lösche wird das Sript nur noch mit der Variablen $zeile[2] fehlerlos ausgeführt und so weiter.
Ich bitte um Hilfe.
-
Mir wurde geholfen.
Das Problem besteht darin, daß der Zeilenumbruch in navi.txt im Rückgabewert enthalten ist.
Da es in der jeweils letzten Zeile keinen Umbruch gibt, gab nur es da keine Probleme.
Also muß der fopen() Befehl so aussehen:
PHP-Code:fopen("texte/aktuelles/".trim(strip_tags($zeile[3])).".txt","r");
Ähnliche Themen
-
PHP5: fopen() ,dynamisches Pfad.
Von PositivDenker im Forum PHPAntworten: 4Letzter Beitrag: 13.12.09, 20:32 -
Vertracktes Problem bei Differenz in einem Array
Von Spelmann im Forum PHPAntworten: 2Letzter Beitrag: 27.06.09, 20:22 -
Invalid Argument bei fopen und UNC-Pfad
Von TheVinc im Forum PHPAntworten: 1Letzter Beitrag: 24.11.06, 12:12 -
vertracktes xsl namespace Problem
Von Inspector im Forum XML TechnologienAntworten: 0Letzter Beitrag: 01.09.05, 07:55 -
fopen - Problem
Von ultrakollega im Forum PHPAntworten: 5Letzter Beitrag: 31.10.03, 12:21





Zitieren
Login






[PHP][Snippet] Array zu XML konvertieren