Sie befinden sich hier im Forenarchiv von phpforum.de wenn Sie direkt ins Forum möchten, klicken Sie bitte hier. Zur Startseite kommen Sie hier.

problem foreach (arrays) bzw. mit file() [denke ich mal]

Hallo,
ich bin neu hier habe aber schon öfters als Gast hier sehr hilfreiche infos bekommen, nun hab ich ein problem das ich so als frage nicht finden kann, weil es um einen bestimmten (oder mehrere) fehler geht , den (die) ich nicht finde.

Also:
Ich habe eine Seite (vorseite.php), die bei Aufruf in einer Get Funktion eine variable bekommt (beispiel. Innenpolitik --> vorseite.php?thema=Innenpolitik), dann öffnet sie das verzeichnis (die Variable ist jeweils das Thema) und listet alle darin befindlichen txt dateien in einer extra textdatei auf. (ich muss mit txt dateien arbeiten da ich keine mysql für den server hab nur um kommentare zu vermeiden :) ). Dann leitet diese seite nach dem auflisten auf eine weitere Seite (liste.php) weiter.
----
Hier der code für die vorseite.php

Code:                   In Zwischenablage kopieren (nur IE)
1">

----

Auf der nächsten Seite (liste.php), werden dann die dateinamen verwendet, um die einzelnen dateien aufzulisten bzw. die inhalte der einzelnen Dateien auszugeben (verzeichnisstruktur: innenpolitik/frame/bla.txt und innenpolitik/iframe_text/bla_text.txt). Die arrays gebe ich mit einer foreach aus, das PROBLEM dabei ist, dass ...

... nur immer das letzte angezeigt wird, bei den anderen kommt immer dass er die seite nicht öffnen könne, sie nicht existieren würde, aber das stimmt ja nicht, desweiterem (es werden immer pro dateiname 2 dateien geöffnet bsp. bei bla und bla_text) hängt er bei den anderen komischerweise einfach einen punkt dahinter, so dass er die zweite, zu öffnende datei ja gar nicht finden kann, ich hab schon alles ausprobiert ich finde den fehler nicht, habe auch schon probiert jede variable mit der foreach zahl zu erweitern, aber dann läd er gar nichts mehr (endlosfunktion).
Wenn ich nur 1 datei habe, dann geht alles wunderbar, der fehler tritt erst auf, seitdem ich mehrere dateien habe (dateinamen und endungen alle richtig benannt).

----
Hier code für liste.php
Code:                   In Zwischenablage kopieren (nur IE)
2">

Zum schluss möchte ich euch noch die seite selber posten, die mir angezeigt wird (mit den fehlern)
Zitat:
Innenpolitik

Hier die einzelnen Artikel im Überblick

--------------------------------------------------------------------------------



Warning: file() [function.file]: Unable to access ../../redaktion/iframe/Innenpolitik/iframe/testseite.txt in /mnt/am1/08/461/00000020/htdocs/iframe/themen/liste.php on line 44

Warning: file(../../redaktion/iframe/Innenpolitik/iframe/testseite.txt ) [function.file]: failed to open stream: No such file or directory in /mnt/am1/08/461/00000020/htdocs/iframe/themen/liste.php on line 44

Warning: file() [function.file]: Unable to access ../../redaktion/iframe/Innenpolitik/iframe_text/testseite._text.txt in /mnt/am1/08/461/00000020/htdocs/iframe/themen/liste.php on line 49

Warning: file(../../redaktion/iframe/Innenpolitik/iframe_text/testseite._text.txt) [function.file]: failed to open stream: No such file or directory in /mnt/am1/08/461/00000020/htdocs/iframe/themen/liste.php on line 49


Zum Artikel


--------------------------------------------------------------------------------



Warning: file() [function.file]: Unable to access ../../redaktion/iframe/Innenpolitik/iframe/seitenname.txt in /mnt/am1/08/461/00000020/htdocs/iframe/themen/liste.php on line 44

Warning: file(../../redaktion/iframe/Innenpolitik/iframe/seitenname.txt ) [function.file]: failed to open stream: No such file or directory in /mnt/am1/08/461/00000020/htdocs/iframe/themen/liste.php on line 44

Warning: file() [function.file]: Unable to access ../../redaktion/iframe/Innenpolitik/iframe_text/seitenname._text.txt in /mnt/am1/08/461/00000020/htdocs/iframe/themen/liste.php on line 49

Warning: file(../../redaktion/iframe/Innenpolitik/iframe_text/seitenname._text.txt) [function.file]: failed to open stream: No such file or directory in /mnt/am1/08/461/00000020/htdocs/iframe/themen/liste.php on line 49


Zum Artikel


--------------------------------------------------------------------------------



Warning: file() [function.file]: Unable to access ../../redaktion/iframe/Innenpolitik/iframe/1234567890.txt in /mnt/am1/08/461/00000020/htdocs/iframe/themen/liste.php on line 44

Warning: file(../../redaktion/iframe/Innenpolitik/iframe/1234567890.txt ) [function.file]: failed to open stream: No such file or directory in /mnt/am1/08/461/00000020/htdocs/iframe/themen/liste.php on line 44

Warning: file() [function.file]: Unable to access ../../redaktion/iframe/Innenpolitik/iframe_text/1234567890._text.txt in /mnt/am1/08/461/00000020/htdocs/iframe/themen/liste.php on line 49

Warning: file(../../redaktion/iframe/Innenpolitik/iframe_text/1234567890._text.txt) [function.file]: failed to open stream: No such file or directory in /mnt/am1/08/461/00000020/htdocs/iframe/themen/liste.php on line 49


Zum Artikel


--------------------------------------------------------------------------------


fasd
asfsafsf
Zum Artikel

Dann schonmal im foraus für alle antworten, ich komm echt ohne Hilfe nicht weiter :(
Hier gehts zum Orginal Eintrag "problem foreach (arrays) bzw. mit file() [denke ich mal]" im Forum

Antworten

lasst euch bitte nicht von der länge abschrecken leute, ich brauch hilfe, bitte


2.

ich bin kein experte aber was ist das hier
Code:                   In Zwischenablage kopieren (nur IE)
3">

??


3.

1.
Zitat:
No such file or directory
Was das wohl heißen mag.....?
Dein Pfad ist falsch!!!!

2. Setze doch mal an den Anfang aller betreffenden Scripte
Code:                   In Zwischenablage kopieren (nur IE)
4">

vielleicht schreit PHP um Hilfe und keiner hört zu :)


4.

Zitat:
($i+1);
Diese "Instruktion" (an mehreren Stellen zu finden) ist völlig sinnfrei - wozu steht das da??
Zitat:
$vorne = substr($liste[$i], 43);
Dieses Konstrukt riecht verdächtig nach Irrtum - die Anweisung substr($liste[$i], 43) gibt NICHT den vorderen Teil des Strings zurück, sondern den HINTEREN, und zwar den Rest ab der 43. Stelle - und das ist auch schon wahrscheinlich die Hauptfehlerursache.

Überhaupt sieht das Script recht chaotisch aus - wozu sind diese seltsamen substr() Anweisungen mit den "fixen" Zahlen - immer wieder andere - aber insgesamt furchtbar schlecht zu lesen und sowieso überhaupt nicht zu begreifen.


5.

Soo, erstmal danke an alle für eure Vorschläge,
1.
Zitat:
No such file or directory
Das zielverzeichnis stimmt und wenn ich den pfad kopiere und einfüge wird mir die entsprechende txt datei angezeigt
2. die substr. konstrukte sind deshalb, weil ich nicht den dateipfad sondern immer nur den namen will und nicht den kompletten pfad, da es verschiedene themen gibt, die unterschiedliche zeichenlängen haben, habe ich auch verschiedene substr, denn kino und innenpolitik haben ja verschiedene zeichenlängen, einmal wird damit der vordere teil also das iframe/redaktion... weggelöscht und dann noch von blablabla.txt das txt mit dem -4,
Zitat:
($i+1);
Diese "Instruktion" (an mehreren Stellen zu finden) ist völlig sinnfrei - wozu steht das da??

das steht da damit es immer eins hochzählt, also so stand es jedenfalls in selfhtml im untertutorial von quakenet drin, das es so mit der for each geht

Zitat:
<?php{}?> was ist das hier ???
--> du meinst warscheinlich
Code:                   In Zwischenablage kopieren (nur IE)
5">

das da, das ist deshalb so weil ich ja nur wenn was drinnen ist die else kommt, wenn nix drinnen ist soll er auch nix machen bzw. ausgeben,

Zitat:
Überhaupt sieht das Script recht chaotisch aus - wozu sind diese seltsamen substr() Anweisungen mit den "fixen" Zahlen - immer wieder andere - aber insgesamt furchtbar schlecht zu lesen und sowieso überhaupt nicht zu begreifen.
, sag doch bitte was nicht so einleuchtend ist, weil ich es ja so einfach wie möglich machen will damit ihr mir besser helfen könnt, und chaotisch wiso, die schreibweise und formatirungen finde ich persönlich übersichtlich, und es ist ja auch nur der erste teil der wichtig ist ab dem // braucht man nicht mehr schauen ich hab es nur der vollständigkeit hingeschrieben, der teil wird erst so wie der vorherige angepasst, wenn es funktioniert
ich hab jetzt dann noch error report an gemacht, bekomme jetzt auch ne notice
Code:                   In Zwischenablage kopieren (nur IE)
6">

ansonsten schonmal danke für die hilfe aber was bedeutet das?


6.

Höchstwahrscheinlich stimmt irgend etwas mit deiner Programmlogik nicht!
Du versuchst auf Arrayzellen zuzugreifen, welche gar nicht existieren.
PHP ist so nett und sagt dir das....


7.

Zitat:
$i+1);
Diese "Instruktion" (an mehreren Stellen zu finden) ist völlig sinnfrei - wozu steht das da??

das steht da damit es immer eins hochzählt, also so stand es jedenfalls in selfhtml im untertutorial von quakenet drin, das es so mit der for each geht
Das steht dort hundertmillionenprozentig nirgends - das zählt nichts hoch, das zählt gar nix, das ist Schrott.

Zitat:
sag doch bitte was nicht so einleuchtend ist, weil ich es ja so einfach wie möglich machen will damit ihr mir besser helfen könnt, und chaotisch wiso,
Ich hatte es schon geschrieben, hier noch einmal, nur für Dich: die verschiedenen substr() Aufrufe mit den verschieden Zahlen drin - das ist total unverständlich und chaotisch. Kein Mensch versteht, was dort passiert. Offensichtlich Du selbst nicht, denn das ist (wie ich auch schon schrieb) sicherlich eine Fehlerursache.

Aus dem ganzen Kommentar entnehme ich, dass Du nicht eine einzige Deiner Zeilen überprüft hast (mit Hilfe von echo alles mögliche ausgeben lassen) - damit endet die Hilfe. Nur so könntest Du den Fehler finden, wir haben Deine Daten nicht und geben Dir nur Hinweise, was auffällig ist. Viel Glück, Du wirst es brauchen!


8.

Zitat:
joggl postete
das da, das ist deshalb so weil ich ja nur wenn was drinnen ist die else kommt, wenn nix drinnen ist soll er auch nix machen bzw. ausgeben,
http://de.php.net/continue


9.

Zitat:
das steht da damit es immer eins hochzählt, also so stand es jedenfalls in selfhtml im untertutorial von quakenet drin, das es so mit der for each geht
Stand da evtl. ++$i, $i++, $i = $i+1 oder $i+=1

:D:D:D


10.

Zitat:
con postete
Zitat:
das steht da damit es immer eins hochzählt, also so stand es jedenfalls in selfhtml im untertutorial von quakenet drin, das es so mit der for each geht
Stand da evtl. ++$i, $i++, $i = $i+1 oder $i+=1

:D:D:D
sorry @ all ich nehm alles zurück, das $i ++ war noch mit was anderem verbunden das ich weggelöscht hatte *g*, also mein fehler, aber trotzdem muss es da noch was anderes geben egal


Hier gehts zum Orginal Eintrag "problem foreach (arrays) bzw. mit file() [denke ich mal]" im Forum
 
phpforum.de | Impressum