Geht das einfacher??

Feldhofe

Erfahrenes Mitglied
Hi,

es geht hier um ein Script, mit welchem man die Reihenfolge von Tabellenzellen vertauschen kann.

Es gibt 5 Zeilen, hinter denen jeweils ein Eingabefeld ist ($neu), in das man die Zeilen-Nummer eingibt, in der die Zeile neuerdings stehen soll.

Beispiel:
Variable $neu01 ist 02 wenn alte Zeiles 01 und neue 02 sein soll, $neu04=01 wenn 04 01 werden soll.

$zahl[xx] ist immer das der Inhalt der betreffenden Zeile!

Alles klar?



Momentan sieht der bearbeitende Scriptteil so aus:

PHP:
// 1er-Reihe

if ($neu01=='02')
{
$zahl02=$zahl01;
}

if ($neu01=='03')
{
$zahl03=$zahl01;
}

if ($neu01=='04')
{
$zahl04=$zahl01;
}
if ($neu01=='05')
{
$zahl05=$zahl01;
}


// 2er-Reihe



if ($neu02=='01')
{
$zahl01=$zahl02;
}
if ($neu02=='03')
{
$zahl03=$zahl02;
}
if ($neu02=='04')
{
$zahl04=$zahl04;
}

usw.

Das ist ein bißchen aufwenig (funktionieren tut es aber!), bei 5 Zeilen sind das immerhin 20 if-Bedingungen, bei 25 Zeilen schon 600...das wird irgendwie nix. :-(


Wäre schön, wenn jemand einen Trick wüßte.

Gruß
Feldhofe
 
Hm... wie wäre es mit Arrays?
PHP:
// Arrays erstellen
// z.B.:
$neu = array($neu01, $neu02, $neu03...);
$zahl = array($zahl01, $zahl02, $zahl03...);
// am besten wäre es allerdings, dies schon im Formular zu erledigen, also statt neu01 neu[1], statt neu02 neu[2] usw. und dementsprechend statt zahl01 zahl[1], statt zahl02 zahl[2] usw.

// neu ordnen
for ($i=1;$i<=sizeof($neu);$i++)
{
  $zahlneu[$neu[$i] = $zahl[$i];
}

// im Array $zahlneu stehen jetzt die sortierten Werte
So würde ich das machen.

MfG
Reima
 
Hm...danke!
Von Arrays habe ich keine Ahnung. :rolleyes:

Aber mir ist aufgefallen, daß ich da irgendwie einen prinzipiellen Denkfehler reingebaut habe: Das ist eigentlich nicht sonderlich sinnvoll, diese neue Sortierung auf diese Weise von der alten abhängig zu machen...dann muß man jedes Mal die alte Tabelle durchsuchen, wo die entsprechende Zeile da stand.

Aber trotzdem Danke!!

Feldhofe
 

Neue Beiträge

Zurück