phpbar.de logo

Mailinglisten-Archive

[php] Array-Script [die zweite]

[php] Array-Script [die zweite]

Nico Haase php_(at)_phpcenter.de
Wed, 30 Jan 2002 15:25:46 +0100


Hallo Liste,
Nochmal meine Anfrage wegen des Array-Scripts. Unter
http://nico.godau.org/buchtips.de.vu/index.php seht ihr, dass das Script
seinen Dienst verweigert. Vielleicht könnt ihr ja helfen.

Auf meinem Localhost (mit PHP-Version 4.0.2, Personal Webserver) geht alles,
aber auf dem Webserver (bei godau.org, PHP-Version 4.0.5 auf einem
Linux-Server) funktionierts nicht richtig. Ich bekommen einen Fehler in
Zeile 46. Das Problem: Die Sortierung funktioniert nicht mehr. Hier das
Script:

<h2 id="center"><a href="<?php echo
$PHP_SELF;?>?sortflag=ab&sortnr=1">aufsteigend sortieren</a><a href="<?php
echo $PHP_SELF;?>?sortflag=auf&sortnr=1">absteigend sortieren</a> &nbsp;
Autor</h2></td>
<!-- hier kommt noch mehr -->
<?php

$buch[]=array("","Kowalewska","Hanna","kowal_1.php","Polnische Sonate");
$buch[]=array("","Aakeson","Kim Fupz","aakeson1.php","Ulla und alles");
// normalerweise kommen hier noch mehr Arrays

if(_(at)_$sortnr=="") { $sortnr="1"; }
for ($pu=0; $pu < count($buch); $pu++) {
 if(count($buch[$pu]) == 5) { array_push($buch[$pu], ""); }
 $buch[$pu][0]=$buch[$pu][$sortnr];
 $pusher=$buch[$pu][$sortnr];
 array_push ($buch[$pu], $pusher);
}

// also: erstes Array-Objekt ist das angeforderte, nach dem sortiert wird
(1=Autor Nachname / 2=Autor Vorname / 3=Datei / 4=Titel)
sort($buch);                                  // hier soll das Problem
sein.... ?????? --> Zeile 46
if(_(at)_$sortflag=="auf") { array_multisort($buch, SORT_DESC); } // gegen das
Alphabet sortieren
if(_(at)_$sortflag=="ab")  { array_multisort($buch, SORT_ASC);  } // nach dem
Alphabet sortieren


// jetzt folgt die Ausgabe in einer Schleife
$start="new";
for($p=0; $p < count($buch); $p++) {
 if($start=="new") {
 echo("<tr><td id=\"center\">");
 if($buch[$p][5]!="") { echo "<a
href=\"buch.php?datei=".$buch[$p][5]."&bio=true\">"; }
 echo $buch[$p][2]." ".$buch[$p][1]."</a></td>";
 echo "\n<td id=\"center\">";
 }
 echo "<a href=\"buch.php?datei=".$buch[$p][3]."\">".$buch[$p][4]."</a>";
 $q=$p+1;
 if ($q==count($buch)) { break; }
 if($buch[$p][1] == $buch[$q][1] && $buch[$p][2] == $buch[$q][2])
  {
   $start="same";
   echo ("<br>\n");
  }
 else
  {
   $start="new";
   echo ("</td></tr>\n");
  }
 }
echo("\n</table>");
?>


Hmm, vielleicht könnt ihr mir ja helfen. Ich weiß nämlich nicht, wo das
Problem sein soll. Wenn ihr wollt, kann ich einzelnen auch den gesamten
Quellcode schicken, das mache ich so aber nicht, sonst gibts wieder einen
auf den Deckel...
mfg
Nico


php::bar PHP Wiki   -   Listenarchive