Warnung: file_put_contents(/home/www/web1/html/php_dev/test.txt) [function.file-put-contents]: failed to open stream: Permission denied in /home/www/web1/html/php_dev/sys/lib.activity.php (Zeile 58)
Anzeige bleibt leer [Archiv] - PHP-Scripte PHP-Tutorials PHP-Jobs und vieles mehr

- Ad -
php-resource




Archiv verlassen und diese Seite im Standarddesign anzeigen :
Anzeige bleibt leer


 
mirkot.
25-02-2004, 22:13 
 
Ich habe folgendes txt-file:

1#nachname1#vorname1#alter1#ort1#<img src="/bilder/logoklein.gif" /><br />
2#nachname2#vorname2#alter2#ort2#<img src="/bilder/logoklein.gif" /><br />
3#nachname3#vorname3#alter3#ort3#<img src="/bilder/logoklein.gif" /><br />

und da möchte ich in einer bestimmten Zeile die Werte auslesen und anzeigen. in diesem Fall wird id=3 vorgegeben.
folgendes habe ich probiert

<?php
$wert = "3";
$data = file("nrgtest.txt");
foreach ($data as $line) {
list($id,$nn,$vn,$alter,$ort,$bild) = explode("#",$line);
if($id == $wert) {
echo "$ort"; //jetzt alle werte in eine Tabelle o.ä.
}
}
?>

aber irgendwie bleibt die Tabelle leer.
Wenn ich $ort in html einfüge wird nur die erste zeile gelesen. bzw alles in eine. <br /> wird gar nicht beachtet. Auch das Bild wird nicht angezeigt.
Was mach ich falsch? Bin nicht sehr bewandert mit php, habe schon viel recherchiert und bin trotzdem nicht weitergekommen. Brauche wirklich Hilfe:confused: :confused: :confused:

 
toshi
26-02-2004, 01:39 
 
versuch mal so


<?php
$iWert = "3";
$aData = file("nrgtest.txt");
foreach ($aData as $sLine)
{
$aLine = explode("#", $sLine);
if($aLine[0] == $iWert)
{
echo "Nachname: ". $aLine[1];
echo "Vorname: ". $aLine[2];
echo "Alter: ". $aLine[3];
echo "Ort: ". $aLine[4];
echo "Bild: ". $aLine[5];
}
}
?>


die txt-datei sollte dann aber auch so aussehen:
1#nachname1#vorname1#alter1#ort1#<img src="/bilder/logoklein.gif">
2#nachname2#vorname2#alter2#ort2#<img src="/bilder/logoklein.gif">
3#nachname3#vorname3#alter3#ort3#<img src="/bilder/logoklein.gif">

ohne <br> - nur Zeilenumbruch reicht (das <br> ist da unnötig)

 
socket_shock
26-02-2004, 01:45 
 
Hmmmm.... das gleiche Post hab ich vorhin bei tutorials.de beantwortet... *wunder*....

Aber

list()

funktioniert mindestens genau so gut wie alles innen Array zu packen... besonders wenn das noch einzeln ausgegeben werden soll... Also ist

$aLine = explode("#", $sLine);

nicht unbedingt nötig...

 
mirkot.
26-02-2004, 09:20 
 
Bitte nicht wundern, ich versuche einfach nur eine Lösung zu finden (egal wie).

Was ihr mir anbietet ist mir soweit klar, funzt aber nicht, weil alles in nur eine Zeile gelesen wird. Es werden die Zeilenumbrüche nicht erkannt und daher gibt es auch im array nur die ersten werte wobei wenn ich das Bild ausgebe (welches immernoch nicht angezeigt wird) schon die nächste Zeilennummer dran hängt.

Ich komme hier einfach nicht weiter und danke für die bisherige Hilfe. Hab da echt schon viel gelernt, aber wohl noch nicht genug.

(Ich arbeite übrigens unter MacOs X 10.2.8 mit dem Apache), habe es online noch nicht getestet.

- -

Alle Zeitangaben in WEZ +2. Es ist jetzt 04:38 Uhr.