Anfänger Frage zum löschen

killerpixel

Grünschnabel
Hallo, ich habe mir ein kleines "script" zum Text einlesen geschrieben. Hier mal meine Idee.

<?php
$ds = 0;
$i = 0;
$filename = "daten.txt";
echo "<br>".$filename;
$handle = fopen ($filename, "r");
while (!feof($handle)) {
$z++;
$buffer = fgets($handle, 4096);
$buffer = trim ($buffer);

if (strlen($buffer) == 0) {
$merk++;
if ($merk >= 2) {
//neuer DS
if (isset($arry)) {
$zeile[$ds] = $arry; // erst altes speichern
unset ($arry); //variableninhalte löschen
$i = 0;
$ds++;
}
}
} else {
// einzelnen Datenbestandteil ins Array schreiben, Datenart prüfen
echo "<br>Bearbeite Zeile: ".$z." => '".$buffer."': " ;
echo "'".substr($buffer,0,5)."'";

// $pos = strrpos ($buffer, " ");

$ff = explode ($buffer,";");

// if (substr($buffer,0,5)==".jpg ") {$i=6; } // bild erkannt
// if (substr($buffer,0,1)=="Beschreibung ") {$i=2; } // Beschreibung erkannt
// if (strlen(strstr($buffer,"Preis:"))) {$i=3; } // Preis erkannt
//unset($buffer[""]);

$arry[$i] = $buffer;
$i++;
$merk = 0;
}
}
fclose ($handle);

$zeile[$ds] = $arry; // allerletzten Datensatz auch noch speichern



echo "<br>z=".$z;
echo "<br>arry=".$arry[$i];
echo "<br>Zeilearray=";print_r($zeile);

Mein Problem ist, das in der daten.txt die Wörter mit " getrennt werden. Sieht dann so aus

"Bild.jpg";"Beschreibung";"Preis"

Wenn ich die Texte jetzt in ein Array schreibe, stehen die " ja mit drin. was muss ich machen damit die weg sind ? Ich habe es schon mal mit unset($buffer[""]); versucht, das hat aber leider nichts gebracht.

Über Eure Hilfe würde ich mich echt freuen.

cya
 
stimmt, daran habe ich garnicht gedacht. Wenn du mir jetzt noch schnell sagen könntest, wo ich das hin basteln muss. *g*
 
<?php
$ds = 0;
$i = 0;
$filename = "daten.txt";
echo "<br>".$filename;
$handle = fopen ($filename, "r");
while (!feof($handle)) {
$z++;
$buffer = fgets($handle, 4096);
$buffer = trim ($buffer);

if (strlen($buffer) == 0) {
$merk++;
if ($merk >= 2) {
//neuer DS
if (isset($arry)) {
$zeile[$ds] = $arry; // erst altes speichern
unset ($arry); //variableninhalte löschen
$i = 0;
$ds++;
}
}
} else {
// einzelnen Datenbestandteil ins Array schreiben, Datenart prüfen
echo "<br>Bearbeite Zeile: ".$z." => '".$buffer."': " ;
echo "'".substr($buffer,0,5)."'";

// $pos = strrpos ($buffer, " ");

$ff = explode ($buffer,";");

// if (substr($buffer,0,5)==".jpg ") {$i=6; } // bild erkannt
// if (substr($buffer,0,1)=="Beschreibung ") {$i=2; } // Beschreibung erkannt
// if (strlen(strstr($buffer,"Preis:"))) {$i=3; } // Preis erkannt


Ich habe es jetzt mal hier rein gebaut. Funkt aber nicht so ganz.

Bekomme diese Fehlermeldung:

Parse error: syntax error, unexpected $end in N:\apachefriends\xampp\htdocs\import\import.php on line 53







$ff = str_replace('"','',$buffer);






//$bodytag = str_ireplace("%body%", "black", "<body text=%BODY%>");

$arry[$i] = $buffer;
$i++;
$merk = 0;
}
}
fclose ($handle);

$zeile[$ds] = $arry; // allerletzten Datensatz auch noch speichern



echo "<br>z=".$z;
echo "<br>arry=".$arry[$i];
echo "<br>Zeilearray=";print_r($zeile);
 
Hast Du vielleicht am Ende das ?> vergessen?

Und bitte benutz, im Sinne der besseren Lesbarkeit, die Tags zum Highlighten von PHP-Sourcen.
[ php ]PHP-Code[ /php]
Beispiel:
PHP:
if ($text!="")
 {
  echo $text;
 }
Und so sieht's ohne aus:

if ($text!="")
{
echo $text;
}

Schrecklich, oder?
 
Zuletzt bearbeitet:
Alles klar. Werde mich ab sofort dran halten *g*

Aber leider funktioniert es immer noch nicht so wie ich es brauche :(
 
Zuletzt bearbeitet:
Zurück