phpbar.de logo

Mailinglisten-Archive

[php] Array-Script

[php] Array-Script

Nico Haase php_(at)_phpcenter.de
Tue, 29 Jan 2002 17:37:02 +0100


Hallo Liste,
ich habe ein nettes kleines PHP-Script geschrieben. 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.... ??????
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.
mfg
Nico


und so kannst Du mich erreichen:
...per Email          nico.haase_(at)_web.de oder nico.haase_(at)_nexgo.de
...per icq            128421002
...per Telefon        06081/946034
...per Rauchzeichen   an obige Eund so kannst Du mich erreichen:
...per Email          nico.haase_(at)_web.de oder nico.haase_(at)_nexgo.de
...per icq            128421002
...per Telefon        06081/946034
...per Rauchzeichen   an obige Emailadresse


Werbung ---------------------------------
Meldet euch an bei Promio.net und verdient damit Geld! Folgt diesem Link und
ein Anmeldebonus von 1 € wird euch gutgeschrieben:
http://www.promio.net/tco_anmelden.php?f_vid=69011 .

--------------------------------- Werbungmailadresse


php::bar PHP Wiki   -   Listenarchive