Du befindest Dich im Archiv vom ABAKUS Online Marketing Forum. Hier kannst Du Dich für das Forum mit den aktuellen Beiträgen registrieren.

Einträge nach Alphabet ausgeben

Ajax, Hijax, Microformats, RDF, Markup, HTML, PHP, CSS, MySQL, htaccess, robots.txt, CGI, Java, Javascript usw.
Neues Thema Antworten
Michael1967
PostRank 9
PostRank 9
Beiträge: 2158
Registriert: 26.10.2005, 23:51

Beitrag von Michael1967 » 07.09.2009, 09:40

Hallo,

benötige mal wieder etwas Hilfe.

In meiner Datenbank stehen Begriffe - diese möchte ich nach dem Alphabet ausgeben.

Ich suche eine Funktion - die das Alphabet (A B C usw.) ausgibt. Nach dem Klick auf einen Buchstaben, sollen alle Begriffe angezeigt werden - die mit dem Buchstaben beginnen.

Auf der ersten Seite sollen alle Begriffe mit "A" stehen. Irgendwie finde ich da nichts - weil ich nicht genau weiß - nach was ich suchen muss.

Hat jemand ein Beispiel oder so für mich?

Danke!

Anzeige von ABAKUS

von Anzeige von ABAKUS »


Hochwertiger Linkaufbau bei ABAKUS:
  • Google-konformer Linkaufbau
  • nachhaltiges Ranking
  • Linkbuilding Angebote zu fairen Preisen
  • internationale Backlinks
Wir bieten Beratung und Umsetzung.
Jetzt anfragen: 0511 / 300325-0

slider
PostRank 4
PostRank 4
Beiträge: 115
Registriert: 11.06.2004, 07:47

Beitrag von slider » 07.09.2009, 10:31

Code: Alles auswählen

SELECT * FROM tabelle WHERE name LIKE 'a%'

Michael1967
PostRank 9
PostRank 9
Beiträge: 2158
Registriert: 26.10.2005, 23:51

Beitrag von Michael1967 » 07.09.2009, 10:34

slider hat geschrieben:

Code: Alles auswählen

SELECT * FROM tabelle WHERE name LIKE 'a%'
Das wäre eine Lösung für die erste Seite. Und für alle anderen Buchstaben schreibe ich nun ein neues Select? Und wie gebe ich das Alphabet inklusive der Verlinkung aus?

Ich blicke das leider nicht! *schäm*

Anzeige von ABAKUS

von Anzeige von ABAKUS »

Content Erstellung von ABAKUS Internet Marketing
Ihre Vorteile:
  • einzigartige Texte
  • suchmaschinenoptimierte Inhalte
  • eine sinnvolle Content-Strategie
  • Beratung und Umsetzung
Jetzt anfragen: 0511 / 300325-0

JohnBi
PostRank 10
PostRank 10
Beiträge: 2957
Registriert: 22.02.2009, 20:31

Beitrag von JohnBi » 07.09.2009, 10:37

Code: Alles auswählen

SELECT * FROM tabelle WHERE 1 ORDER BY name ASC
Das müsste ne alphabetische Sortierung bewirken.
Probleme mit Google & Co.? Hier die Lösung! - Linktausch?! | Projekt kaufen?! |
-------------------------------------------
Der PostRank und das Anmeldedatum stehen in keinem Verhältnis zur Qualität der Antworten einiger User. {JohnBi, 2009}

Michael1967
PostRank 9
PostRank 9
Beiträge: 2158
Registriert: 26.10.2005, 23:51

Beitrag von Michael1967 » 07.09.2009, 10:47

Nene, so meinte ich das nicht.

Also ich brauche eine Navi - A B C D E F usw.

Klickt nun beispielsweise jemand auf auf den Buchstaben "B" sollen alle Einträge die mit "B" beginnen angezeigt werden. Bei "C" alle mit "C" usw.

JohnBi
PostRank 10
PostRank 10
Beiträge: 2957
Registriert: 22.02.2009, 20:31

Beitrag von JohnBi » 07.09.2009, 10:57

dann

Code: Alles auswählen

SELECT * FROM tabelle WHERE name LIKE 'a%' ORDER BY name ASC LIMIT 0,10
Das sortiert alle Einträge die mit a beginnen alphabetisch und zeigt 10 Stück an ...
Zuletzt geändert von JohnBi am 07.09.2009, 10:58, insgesamt 1-mal geändert.
Probleme mit Google & Co.? Hier die Lösung! - Linktausch?! | Projekt kaufen?! |
-------------------------------------------
Der PostRank und das Anmeldedatum stehen in keinem Verhältnis zur Qualität der Antworten einiger User. {JohnBi, 2009}

PSI
PostRank 7
PostRank 7
Beiträge: 529
Registriert: 27.08.2009, 21:43

Beitrag von PSI » 07.09.2009, 10:58

Das mit der Navi musst Du auch dazuschreiben.

Die obigen Ansätze sind richtig:

1.) Zuerst sortierst Du die Datenbank

2.) Unter Navi B ziehst Du per list alle entsprechende Beiträge rein

xAaron
PostRank 5
PostRank 5
Beiträge: 329
Registriert: 23.08.2009, 18:10

Beitrag von xAaron » 07.09.2009, 11:06

So ganz verstehe ich es nicht. Hast du mehrere Seiten, wo wenn auf C geklickt wurde alles mit C beginnende angezeigt werden soll, dann sind obige Beispiele richtig, sprich auf seite i eine LIKE 'i%' oder willst du eine Seite und eine Abfrage haben, wo dann alles alphabetisch sortiert wird?
Sehr geehrter Herr SEO Guru, ich habe eine frage zu Ihren Backlink Tipps. Es ist nämlich nicht so einfach ein Raumschiff zu bauen um einen Backlink von der NASA zu bekommen... bitte antworten Sie auf meine Mails. Zitat von winman.de

Michael1967
PostRank 9
PostRank 9
Beiträge: 2158
Registriert: 26.10.2005, 23:51

Beitrag von Michael1967 » 07.09.2009, 11:21

Alles auf einer Seite.

Code: Alles auswählen


$lettersarray = 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"); 

foreach($lettersarray as $letter) {  

echo "&nbsp;&nbsp;<a href=url&letter=$letter>" . $letter . "</a>"; 

&#125; 
Das mit der Ausgabe habe ich schon. Nun übergebe ich einfach den Inhalt von $letter zur Abfrage und bekomme genau das was ich möchte.

Michael1967
PostRank 9
PostRank 9
Beiträge: 2158
Registriert: 26.10.2005, 23:51

Beitrag von Michael1967 » 07.09.2009, 11:34

Nur was mache ich jetzt mit den Begriffen die mit 0-9 beginnen?

Das Array erweitern? Geht das irgendwie mit 0-9 oder muss hier mit 1 2 3 4 usw. erweitert werden?

xAaron
PostRank 5
PostRank 5
Beiträge: 329
Registriert: 23.08.2009, 18:10

Beitrag von xAaron » 07.09.2009, 11:43

Michael1967 hat geschrieben:Alles auf einer Seite.

Code: Alles auswählen


$lettersarray = array&#40;"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"&#41;; 

foreach&#40;$lettersarray as $letter&#41; &#123;  

echo "&nbsp;&nbsp;<a href=url&letter=$letter>" . $letter . "</a>"; 

&#125; 
Das mit der Ausgabe habe ich schon. Nun übergebe ich einfach den Inhalt von $letter zur Abfrage und bekomme genau das was ich möchte.
Ok, ich blick es noch nicht. So wie das aussieht, wäre es doch jedes Mal ein eigene Seite? Der Besucher klickt auf den link index.php?url=xxxx.php&letter=C. Damit ruft er eine neue Seite vom Server ab und du kannst das Beispiel mit LIKE '$letter%' nehmen, dann schickt der Server alles mit dem Anfangsbuchstaben C zurück.

Michael1967
PostRank 9
PostRank 9
Beiträge: 2158
Registriert: 26.10.2005, 23:51

Beitrag von Michael1967 » 07.09.2009, 11:46

Jo, das funktioniert ja schon. Genauso habe ich das gemacht. Nur was mache ich mit Begriffen die mit Zahlen beginnen?

800XE
PostRank 10
PostRank 10
Beiträge: 5223
Registriert: 02.12.2004, 03:03

Beitrag von 800XE » 07.09.2009, 12:08

Michael1967 hat geschrieben:Jo, das funktioniert ja schon. Genauso habe ich das gemacht. Nur was mache ich mit Begriffen die mit Zahlen beginnen?
Wenn die Datenspalte Buchstaben enthält irgendwo, dan ist es eien Varchar-Spalte und keine interger-(Zahlen)-Spalte, aleo ... 007 ist like "0%" ... 800XE ist LIKE "8%"

so ungefähr

Code: Alles auswählen

$fornext=ord&#40;'A'&#41;; $to=ord&#40;'Z'&#41;;
while &#40; $fornext <= $to &#41;
&#123;
  $content .='<a href="/Alpha/'. chr&#40; $fornext &#41; .'.html">'. chr&#40; $fornext &#41; .'</a>';
&#125;
// plus Numeri
$fornext=ord&#40;'0'&#41;; $to=ord&#40;'9'&#41;;
// Ascii Code von 0 ist doch links von 1 oder etwa rechts von 9?
while &#40; $fornext <= $to &#41;
&#123;
  $content .='<a href="/Alpha/'. chr&#40; $fornext &#41; .'.html">'. chr&#40; $fornext &#41; .'</a>';
&#125;
bei dir dann eben als Parameter für $letter ins HTML

bei mir ist es doort auch nicht "Dateiname" sondern Ordner
www.zmudaweb.de/SYNAPS/Alpha/b/

und bedenke, du hast jetzt noch das Problem das du quasie ÄÖÜ auch noch Navigieren müstest

darum ... hl2fn ....

Code: Alles auswählen

        $headline= str_replace&#40;'ä', 'ae', $headline &#41;;
        $headline= str_replace&#40;'ö', 'oe', $headline &#41;;
        $headline= str_replace&#40;'ü', 'ue', $headline &#41;;
        $headline= str_replace&#40;'Ä', 'AE', $headline &#41;;
        $headline= str_replace&#40;'Ö', 'OE', $headline &#41;;
        $headline= str_replace&#40;'Ü', 'UE', $headline &#41;;
in der DB gibt es die Überschriften 2 mal

headline = die echte
headline_url = hll2fn

oder im WörterWalkWiki
Keyword + alpha(=hl2fn behandelt)


SQL für ABC...XYZ + sonstiges

Code: Alles auswählen


if &#40; ord&#40;$REQUEST_FILE&#41; >= ord&#40;'A'&#41;
  && ord&#40;$REQUEST_FILE&#41; <= ord&#40;'Z'&#41; &#41;
&#123;
  $FILTER = " name LIKE '". $REQUEST_FILE."%' ";
&#125;
else
&#123;
  $FILTER = " name<'A' AND name>'Z' ";
&#125;


$query ='';
$query .= ' SELECT * FROM Wörterbuch';
$query .= ' WHERE '.$FILTER;
$query .= ' ORDER BY name';
$query .= ' LIMIT '.$offset. ',10';
mysql_query&#40;$query&#41;;

Code: Alles auswählen

/***********************************************************************
 *   Headline 2 FileName -- umwandeln
 **********************************************************************/
function hl2fn&#40;$headline, $low=0&#41;
&#123;
              $headline = hl2fn2&#40;trim&#40;$headline&#41;&#41;;
  if &#40; $low &#41; $headline = strtolower&#40; $headline &#41;;
  return&#40;     $headline                         &#41;;
&#125;

/***********************************************************************
 *   Headline 2 Subdomain -- umwandeln
 **********************************************************************/
function hl2fn2&#40;$headline&#41;
&#123;
        $headline= str_replace&#40;chr&#40;153&#41;, ' TM', $headline &#41;;
        $headline= str_replace&#40;chr&#40;232&#41;, 'e', $headline &#41;;
        $headline= str_replace&#40;chr&#40;233&#41;, 'e', $headline &#41;;
        $headline= str_replace&#40;chr&#40;234&#41;, 'e', $headline &#41;;
        $headline= str_replace&#40;chr&#40;235&#41;, 'e', $headline &#41;;
        $headline= str_replace&#40;chr&#40;174&#41;, 'R', $headline &#41;;
        $headline= str_replace&#40;'â', 'a', $headline &#41;;
        $headline= str_replace&#40;'é', 'e', $headline &#41;;
        $headline= str_replace&#40;'€', 'e', $headline &#41;;
        $headline= str_replace&#40;'`', ' ', $headline &#41;;
        $headline= str_replace&#40;'²', '2', $headline &#41;;
        $headline= str_replace&#40;'_', ' ', $headline &#41;;
        $headline= str_replace&#40;'"', ' ', $headline &#41;;
        $headline= str_replace&#40;"'", ' ', $headline &#41;;
        $headline= str_replace&#40;'*', ' ', $headline &#41;;
        $headline= str_replace&#40;'%20',' ',$headline &#41;;
        $headline= str_replace&#40;'%2B',' ',$headline &#41;;
        $headline= str_replace&#40;'%', ' ', $headline &#41;;
        $headline= str_replace&#40;'+', ' ', $headline &#41;;
        $headline= str_replace&#40;'?', ' ', $headline &#41;;
        $headline= str_replace&#40;'!', ' ', $headline &#41;;
        $headline= str_replace&#40;'&', ' ', $headline &#41;;
        $headline= str_replace&#40;'@', ' ', $headline &#41;;
        //$headline= str_replace&#40;'|', ' ', $headline &#41;;
        $headline= str_replace&#40;',', ' ', $headline &#41;;
        $headline= str_replace&#40;'=', ' ', $headline &#41;;
//        $headline= str_replace&#40;'-', '', $headline &#41;;
        $headline= str_replace&#40;'<', ' ', $headline &#41;;
        $headline= str_replace&#40;'>', ' ', $headline &#41;;
        $headline= str_replace&#40;'«', ' ', $headline &#41;;
        $headline= str_replace&#40;'»', ' ', $headline &#41;;
        $headline= str_replace&#40;'&#123;', ' ', $headline &#41;;
        $headline= str_replace&#40;'&#91;', ' ', $headline &#41;;
        $headline= str_replace&#40;'&#40;', ' ', $headline &#41;;
        $headline= str_replace&#40;'&#41;', ' ', $headline &#41;;
        $headline= str_replace&#40;'&#93;', ' ', $headline &#41;;
        $headline= str_replace&#40;'&#125;', ' ', $headline &#41;;
        $headline= str_replace&#40;"'", ' ', $headline &#41;;
        $headline= str_replace&#40;';', ' ', $headline &#41;;
        $headline= str_replace&#40;'&#58;', ' ', $headline &#41;;
        $headline= str_replace&#40;'ß', 'ss', $headline &#41;;
        $headline= str_replace&#40;'ä', 'ae', $headline &#41;;
        $headline= str_replace&#40;'ö', 'oe', $headline &#41;;
        $headline= str_replace&#40;'ü', 'ue', $headline &#41;;
        $headline= str_replace&#40;'Ä', 'AE', $headline &#41;;
        $headline= str_replace&#40;'Ö', 'OE', $headline &#41;;
        $headline= str_replace&#40;'Ü', 'UE', $headline &#41;;
        
        $headline= str_replace&#40;'à', 'a', $headline &#41;;

        $headline= str_replace&#40;"\n", ' ', $headline &#41;;
        $headline= str_replace&#40;"\r", ' ', $headline &#41;;
        $headline= str_replace&#40;"\", ' ', $headline &#41;;
        $headline= str_replace&#40;'/', ' ', $headline &#41;;
        $headline= str_replace&#40;'#', ' ', $headline &#41;;
        $headline= trim       &#40;          $headline &#41;;
        $i=strlen&#40;$headline&#41;;
	while&#40;$i--&#41;
	&#123;
		if &#40; ord&#40;$headline&#123;$i&#125;&#41;>127 &#41; $headline&#123;$i&#125;=' ';
	&#125;
	$headline= str_replace&#40;' ', '-', $headline &#41;;
        $headline= str_replace&#40;'--', '-', $headline &#41;;
        $headline= str_replace&#40;'--', '-', $headline &#41;;
        $headline= str_replace&#40;'--', '-', $headline &#41;;
        $headline= str_replace&#40;'--', '-', $headline &#41;;
        $headline= str_replace&#40;'--', '-', $headline &#41;;
        $headline= str_replace&#40;'--', '-', $headline &#41;;
        $headline= str_replace&#40;'--', '-', $headline &#41;;
        $headline= str_replace&#40;'--', '-', $headline &#41;;
        $headline= str_replace&#40;'|-', '|', $headline &#41;;
        $headline= str_replace&#40;'-|', '|', $headline &#41;;
        $headline= str_replace&#40;'||', '|', $headline &#41;;

  return&#40;$headline&#41;;
&#125;
function hl2sub&#40;$headline&#41;
&#123;
        $headline=hl2fn2&#40;$headline&#41;;
        $headline= str_replace&#40;".", "-", $headline &#41;;
  return&#40;$headline&#41;;
&#125;

Michael1967
PostRank 9
PostRank 9
Beiträge: 2158
Registriert: 26.10.2005, 23:51

Beitrag von Michael1967 » 07.09.2009, 12:18

Vielen Dank 800XE. Damit lässt sich schon was machen :D

800XE
PostRank 10
PostRank 10
Beiträge: 5223
Registriert: 02.12.2004, 03:03

Beitrag von 800XE » 07.09.2009, 12:20

BUGFIX
800XE hat geschrieben:

Code: Alles auswählen

$fornext=ord&#40;'A'&#41;; $to=ord&#40;'Z'&#41;;
while &#40; $fornext <= $to &#41;
&#123;
  $content .='<a href="/Alpha/'. chr&#40; $fornext &#41; .'.html">'. chr&#40; $fornext &#41; .'</a>';
&#125;
da mus natürlich die ForNext noch weiterzählen

Code: Alles auswählen

$fornext=ord&#40;'A'&#41;; $to=ord&#40;'Z'&#41;;
while &#40; $fornext <= $to &#41;
&#123;
  $content .='<a href="/Alpha/'. chr&#40; $fornext &#41; .'.html">'. chr&#40; $fornext &#41; .'</a>';
  $fornext++;
&#125;

Antworten
  • Vergleichbare Themen
    Antworten
    Zugriffe
    Letzter Beitrag