ABC Leiste
Michi
- php
0 Hopsel0 Michi0 Hopsel0 Der Martin0 Hopsel
0 Michi Mauch
1 dedlfix0 ES HEISST ABC_-_LEISTE!!!
Jan
Hallo zusammen
Gerne möchte ich eigentlich so eine ABC Leiste programmieren. Wenn man auf den Buchstaben C klickt, erscheinen alle Einträge die mit einem C beginnen.
Folgendes habe ich schon mal hingekriegt...ja ich weiss, nicht sehr viel.
$myabc = array ("A","B","C","D","E","F","G","H","I","J","K","L","M","N","O","P","Q","R","S","T","U","V","W","X","Y","Z");
$strich = implode(" | ", $myabc);
echo $strich;
Wie kriege ich da nun einfach die verschiedenen Links rein.
Bin dankbar für jeden Tipp.
Danke und Gruss
Michi
Hi Michi!
Wieso nutzt du nicht foreach und baust die Ausgabe gleich zusammen?
MfG H☼psel
Wieso nutzt du nicht foreach und baust die Ausgabe gleich zusammen?
Gute Frage...vielen vielen Dank, ein erster kleiner Liste verlieft schon mal super. Jetzt muss ich noch mit implode ein | dazwischenfügen und dann wars das ja schon fast.
Nochmals Danke für deinen Tipp.
Gruss
Michi
Hi Michi!
Um Gottes Willen...
Wozu? :)
<?php
$x = 0;
foreach($array as $value) {
echo "<a href="\link\">$value</a>
if($x < count($array) - 1)
echo "|";
$x++;
}
?>
MfG H☼psel
Hallo,
<?php
$x = 0;
foreach($array as $value) {
echo "<a href="\link">$value</a>
if($x < count($array) - 1)
echo "|";
$x++;
}
?>
Nicht schlecht... auf den ersten Blick habe ich mich gefragt, was du in einer foreach-Schleife auch noch mit $x als Zählvariable willst. Beim genaueren Hinsehen war's dann klar.
Allerdings solltest du die Reihenfolge der '\' und '"' nochmal kritisch kontrollieren. Sieht irgendwie merkwürdig aus, oder nicht? ;-)
Schönen Abend noch,
Martin
--
Ungeschehene Ereignisse können einen katastrophalen Mangel an Folgen nach sich ziehen.
(Unbekannter Politiker)
Hi Martin!
Nicht schlecht...
Danke.
auf den ersten Blick habe ich mich gefragt, was du in einer foreach-Schleife auch noch mit $x als Zählvariable willst. Beim genaueren Hinsehen war's dann klar.
Und das habe ich mir nur mal so aus dem Ärmel geschüttelt. Der reine Wahnsinn, was? ;-)
Allerdings solltest du die Reihenfolge der '' und '"' nochmal kritisch kontrollieren. Sieht irgendwie merkwürdig aus, oder nicht? ;-)
Ja. :)
Ich bin zum Glück nicht perfekt.
MfG H☼psel
Hi Martin!
Nicht schlecht...
Danke.
auf den ersten Blick habe ich mich gefragt, was du in einer foreach-Schleife auch noch mit $x als Zählvariable willst. Beim genaueren Hinsehen war's dann klar.
Und das habe ich mir nur mal so aus dem Ärmel geschüttelt. Der reine Wahnsinn, was? ;-)
Allerdings solltest du die Reihenfolge der '' und '"' nochmal kritisch kontrollieren. Sieht irgendwie merkwürdig aus, oder nicht? ;-)
Ja. :)
Ich bin zum Glück nicht perfekt.
Der Fachmann wundert sich und der Laie staunt!
Vielen Dank nochmals!
Gruss
Laie :)
Hi Michi!
Um Gottes Willen...
Wozu? :)
Tja...das weiss nur der über mir ;-)
<?php
$x = 0;
foreach($array as $value) {
echo "<a href="\link">$value</a>
if($x < count($array) - 1)
echo "|";
$x++;
}
?>
Habe noch einen einfacheren Weg gefunden...unglaublich :)
~~~php
foreach ($arr as $value)
{
echo "<a href='glossar.php?funcabc=1&idabc=$value'>$value</a> | ";
}
Gruss
Michi
Hi Michi!
Habe noch einen einfacheren Weg gefunden...unglaublich :)
Wenn er funktionieren würde, könnte ich dir zustimmen. :)
Allerdings nimmst du somit in Kauf, dass am Ende noch ein "|" eingefügt wird.
MfG H☼psel
Hi Hospel!
Habe noch einen einfacheren Weg gefunden...unglaublich :)
Habs natürlich auch gemerkt...nur leider habe ich deine Schlaufe noch nicht zum laufen gebracht...irgendwie scheint bei mir heute der Wurm drin zu sein...versuche es nochmals.
Gruss
Michi
Hi Michi!
Habs natürlich auch gemerkt...nur leider habe ich deine Schlaufe noch nicht zum laufen gebracht...irgendwie scheint bei mir heute der Wurm drin zu sein...versuche es nochmals.
Das ist nicht dein Fehler, sonder meiner.
Es muss heißen:
<?php
$x = 0;
foreach($array as $value) {
echo "<a href=\"link\">$value</a>
if($x < count($array) - 1)
echo "|";
$x++;
}
?>
MfG H☼psel
Hi Hopsel!
Schon wieder falsch. :)
Natürlich so:
<?php
$x = 0;
foreach($array as $value) {
echo "<a href=\"link\">$value</a>";
if($x < count($array) - 1)
echo "|";
$x++;
}
?>
MfG H☼psel
echo $begrüßung;
Warum machst du es den überhaupt so kompliziert? $array ist doch ein Array mit einem wunderschönen numerischen Index, fortlaufend von 0 bis 25. Da das eben grad selbst angelegt wurde gibts daran auch keinen Zweifel. Es wird keine extra Zählvariable benötigt, weil der Wert aus dem Key gewonnen werden kann: foreach ($array as $x => $value)
Statt count($array) könnte man auch noch einen festen Wert nehmen. Die Anzahl der Buchstaben im Alphabet ist doch recht konstant (und das -1 spart man sich dann auch).
echo "$verabschiedung $name";
Hi dedlfix!
Statt count($array) könnte man auch noch einen festen Wert nehmen.
Sicher. Aber dann bräuchtest du auch keine foreach-Schleife.
Ich bin in der Hinsicht wesentlich abstrakter. Und das bisschen Rechenzeit macht es auch nicht aus. :)
MfG H☼psel
Hi Hospel
Nun hat es doch noch geklappt...hatte ein Wirrwarr mit den Variablenname.
Endlich ;-)
Danke und noch einen schönen Abend.
Gruss
Michi
echo $begrüßung;
Gerne möchte ich eigentlich so eine ABC Leiste programmieren. Wenn man auf den Buchstaben C klickt, erscheinen alle Einträge die mit einem C beginnen.
Folgendes habe ich schon mal hingekriegt...ja ich weiss, nicht sehr viel.
$myabc = array ("A","B","C","D","E","F","G","H","I","J","K","L","M","N","O","P","Q","R","S","T","U","V","W","X","Y","Z");
Da warst du aber fleißig. Da ich faul bin mach ich das so:
$myabc = range('A', 'Z');
Zum Anwenden einer Funktion auf alle Elemente des Arrays gibt es array_walk() und array_map()
array_walk($myabc, create_function('$a', 'return '<a href="#$a>$a</a>;'));
Und dann kommt dein
$strich = implode(" | ", $myabc);
echo "$verabschiedung $name";
Leute, Leute. Es gibt im Deutschen keine Wörter mit Leerzeichen wie "ABC Leiste". Es heißt immer "ABC-Leiste" mit Bindestrich. Lest Ihr zu viele englische Texte?
Gruß
Jan
Hallo Jan,
Leute, Leute. Es gibt im Deutschen keine Wörter mit Leerzeichen wie "ABC Leiste". Es heißt immer "ABC-Leiste" mit Bindestrich.
du hast ja so Recht. Aber derartige Unsitten sind schon so häufig, dass es mir manchmal schon gar nicht mehr auffällt.
Lest Ihr zu viele englische Texte?
Das wäre eine Erklärung - aber ich glaube nicht, dass es die richtige ist. Denn dieselben Leute neigen oft dazu, im _Englischen_ wiederum vieles mit Bindestrich zu schreiben, wo er nicht angebracht ist.
Schönen Tag noch,
Martin
Hallo Jan,
Leute, Leute. Es gibt im Deutschen keine Wörter mit Leerzeichen wie "ABC Leiste". Es heißt immer "ABC-Leiste" mit Bindestrich.
Grüße aus Nürnberg
To*scnr*bias