Philip: Variablen Wert bei Checkboxauswahl übergeben?

Beitrag lesen

Hi,

also mit "besser" meinte ich eben, ob die eine oder andere Variante schneller arbeitet. Wie gesagt, kenn mich mit PHP kaum aus, daher kann ich nicht sagen wann ich überhaupt switch und wann eine if-Abfrage nehmen sollte.

Vermutlich ist meine Lösung auch viel zu umständlich, denn ich hätte das jetzt so gelöst:

Ich überprüfe, ob ein Bereich durchsucht werden soll. Falls ja, wird der Inhalt der Datendatei dieses Bereichs in eine neue Datei geschrieben. Und so werden alle weiteren zu durchsuchenden Bereiche in diese Datei geschrieben. So habe ich immer eine entsprechende Datendatei für die gewählten Bereiche.

<?php

$dateiname="./admin/data.txt"; //altes Datenfile löschen
unlink($dateiname);

$suchbereich = $_POST['suchbereich'];

for($i=0;$i<count($suchbereich);$i++)
{

if($suchbereich[$i] == 1)
  {
  $FilePointer = fopen("./admin/1.txt", "r");
  $Dateiinhalt = fread($FilePointer, filesize("./admin/1.txt"));

$Dateiname = "./admin/data.txt";
  $Schreiben = $Dateiinhalt;
  $FilePointer = fopen($Dateiname, "a+");
  fwrite($FilePointer, $Schreiben."\n");
  fclose($FilePointer);
  }
 if($suchbereich[$i] == 2)
  {
  $FilePointer = fopen("./admin/2.txt", "r");
  $Dateiinhalt = fread($FilePointer, filesize("./admin/2.txt"));

$Dateiname = "./admin/data.txt";
  $Schreiben = $Dateiinhalt;
  $FilePointer = fopen($Dateiname, "a+");
  fwrite($FilePointer, $Schreiben."\n");
  fclose($FilePointer);
  }
 if($suchbereich[$i] == 3)
  {
  $FilePointer = fopen("./admin/3.txt", "r");
  $Dateiinhalt = fread($FilePointer, filesize("./admin/3.txt"));

$Dateiname = "./admin/data.txt";
  $Schreiben = $Dateiinhalt;
  $FilePointer = fopen($Dateiname, "a+");
  fwrite($FilePointer, $Schreiben."\n");
  fclose($FilePointer);
  }
 if($suchbereich[$i] == 4)
  {
  $FilePointer = fopen("./admin/4.txt", "r");
  $Dateiinhalt = fread($FilePointer, filesize("./admin/4.txt"));

$Dateiname = "./admin/data.txt";
  $Schreiben = $Dateiinhalt;
  $FilePointer = fopen($Dateiname, "a+");
  fwrite($FilePointer, $Schreiben."\n");
  fclose($FilePointer);
  }
 if($suchbereich[$i] == 5)
  {
  $FilePointer = fopen("./admin/5.txt", "r");
  $Dateiinhalt = fread($FilePointer, filesize("./admin/5.txt"));

$Dateiname = "./admin/data.txt";
  $Schreiben = $Dateiinhalt;
  $FilePointer = fopen($Dateiname, "a+");
  fwrite($FilePointer, $Schreiben."\n");
  fclose($FilePointer);
  }
 if($suchbereich[$i] == 6)
  {
  $FilePointer = fopen("./admin/6.txt", "r");
  $Dateiinhalt = fread($FilePointer, filesize("./admin/6.txt"));

$Dateiname = "./admin/data.txt";
  $Schreiben = $Dateiinhalt;
  $FilePointer = fopen($Dateiname, "a+");
  fwrite($FilePointer, $Schreiben."\n");
  fclose($FilePointer);
  }
}
 $datendatei = "./admin/data.txt";
 $bereich = "bereich";

...
?>

Das ist bis dato das längste und anspruchsvollste, von mir selbst geschriebene Script.

Kann man mit sowas grausamem leben, oder ginge das auch viel eleganter :D

So wie ich dich verstehe, würdest du das ganze irgendwo "on the fly" machen, also ohne alle Datendateien zwischenzuspeichern!?