php.de

Zurück   php.de > Webentwicklung > Datenbanken

Datenbanken SQL und Co

Antwort
 
LinkBack Themen-Optionen Thema bewerten
Alt 19.05.2008, 20:33  
Neuer Benutzer
 
Registriert seit: 16.05.2008
Beiträge: 7
michaelxxx befindet sich auf einem aufstrebenden Ast
Standard SQL Ausgabe anpassen

Hallo,

ich hätte ein Frage. Ich möchte mit einer sql Abfrage eine Art Tagcloud ausgeben.

Code:
...
$query = sprintf("SELECT name, ordner FROM photographers order by rand(now()) Limit 20");
$result = @mysql_query($query);
while ($row = @mysql_fetch_array($result)) {
  echo "<font size='2'><a href='../".$row[ordner]."' title='".$row[name]."'>".$row[name]."</a>&nbsp;";
  echo "<font size='1'><a href='../".$row[ordner]."' title='".$row[name]."'>".$row[name]."</a>&nbsp;";
  }
?>
Hier hätte ich es gerne, das er in der while Schleife den ersten Namen mit size=2 ausgibt, den nächsten Namen aber nur noch mit size=1.

So wie ich es hier habe, schreibt er mir logischerweise den gleichen Namen 2mal hin - einmal mit size=2 und dann mit size=1.

Wie müsste ich das abändern?

Wäre für Tips dankbar.

Grüße
Michael
michaelxxx ist offline   Mit Zitat antworten
Sponsor Mitteilung
PHP Code Flüsterer

Registriert seit: 21.08.2005
Beiträge: 4682
PHP-Kenntnisse:
Fortgeschritten

Alt 19.05.2008, 20:35  
Erfahrener Benutzer
 
Registriert seit: 28.03.2008
Beiträge: 1.847
HPR1974 wird schon bald berühmt werden
Standard

ein zähler mitlaufen lassen und entsprechend verwenden Also wenn Zähler == 1 dann size 2 sonst size 1
HPR1974 ist offline   Mit Zitat antworten
Alt 19.05.2008, 20:41  
Neuer Benutzer
 
Registriert seit: 16.05.2008
Beiträge: 7
michaelxxx befindet sich auf einem aufstrebenden Ast
Standard

klingt gut und logisch, hilft mir aber noch nicht ganz weiter, da ich nicht weiß, wie ich das anstellen soll.

kannst du mir da bitte helfen?
michaelxxx ist offline   Mit Zitat antworten
Alt 19.05.2008, 21:05  
Erfahrener Benutzer
 
Registriert seit: 28.03.2008
Beiträge: 1.847
HPR1974 wird schon bald berühmt werden
Standard

zB so:
$i=1;
while ($row = mysql_fetch_array($result)) {
echo '<font size="'.($i==1?'2':'1').'"><a href="../'..$row[ordner].'" title="'.$row[name].'">'.$row[name].'</a>&nbsp;';
$i++;
}
HPR1974 ist offline   Mit Zitat antworten
Alt 19.05.2008, 21:08  
Erfahrener Benutzer
 
Registriert seit: 28.03.2008
Beiträge: 1.847
HPR1974 wird schon bald berühmt werden
Standard

btw
was soll das bringen:
$query = sprintf("SELECT name, ordner FROM photographers order by rand(now()) Limit 20");
und hier:
$result = @mysql_query($query);
gewöhn Dir mal gleich das @ab und mach immer ein mysql_error() an Deine mysql_query
HPR1974 ist offline   Mit Zitat antworten
Alt 19.05.2008, 21:39  
Neuer Benutzer
 
Registriert seit: 16.05.2008
Beiträge: 7
michaelxxx befindet sich auf einem aufstrebenden Ast
Standard

ok, mit dem mysql_error hab ich hoffentlich richtig eingebaut.

Code:
$result = mysql_query($query) OR die(mysql_error());
$i=1;
while ($row = @mysql_fetch_array($result)) {
  echo '<font size="'.($i==1?'2':'1').'"><a href="../'.$row[ordner].'" title="'.$row[name].'">'.$row[name].'</a>&nbsp;';
$i++;
  }
?>
Aber Deine Zähl-Schleife scheint noch nicht ganz richtig zu sein. Momentan schreibt er mir so nur das erste Wort in size=2, den ganzen rest aber wieder nur in size=1...

bitte nochmal um hilfe (-:
michaelxxx ist offline   Mit Zitat antworten
Alt 19.05.2008, 22:13  
Erfahrener Benutzer
 
Benutzerbild von David
 
Registriert seit: 05.09.2007
Beiträge: 5.044
David wird schon bald berühmt werden
Standard

Zitat:
Zitat von michaelxxx Beitrag anzeigen
Hier hätte ich es gerne, das er in der while Schleife den ersten Namen mit size=2 ausgibt, den nächsten Namen aber nur noch mit size=1.
Das es mehr als zwei Namen gibt, kann man aus der Beschreibung nicht heraus lesen. Was soll mit den folgenden Einträgen passieren?
David ist offline   Mit Zitat antworten
Alt 19.05.2008, 22:24  
Neuer Benutzer
 
Registriert seit: 16.05.2008
Beiträge: 7
michaelxxx befindet sich auf einem aufstrebenden Ast
Standard

wie schon oben geschrieben möchte ich damit eine "Art" Tagcloud ausgeben, mit 20 zufällig ausgewählten Namen aus meiner Datenbank.

Um die Namen optisch voneinander abzuheben, hätte ich den ersten Namen deshalb in size=2, den 2. Namen in size=1, den 3. wieder in size=2 usw.

das wäre es, was ich bräuchte.
michaelxxx ist offline   Mit Zitat antworten
Alt 19.05.2008, 22:28  
Erfahrener Benutzer
 
Benutzerbild von David
 
Registriert seit: 05.09.2007
Beiträge: 5.044
David wird schon bald berühmt werden
Standard

Ah ha, also abwechselnd.
David ist offline   Mit Zitat antworten
Alt 20.05.2008, 07:02  
Erfahrener Benutzer
 
Registriert seit: 28.03.2008
Beiträge: 1.847
HPR1974 wird schon bald berühmt werden
Standard

Zitat:
Zitat von michaelxxx
Hier hätte ich es gerne, das er in der while Schleife den ersten Namen mit size=2 ausgibt, den nächsten Namen aber nur noch mit size=1.
also wenn das immer abwechselnd sein soll dann kann modulo ($i%2==0) Dein Freund werden...
HPR1974 ist offline   Mit Zitat antworten
Antwort


Themen-Optionen
Thema bewerten
Thema bewerten:

Forumregeln
Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are an
Gehe zu

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
Problem mit Ausgabe eines gifs für ein Captcha Canni HTML, Usability und Barrierefreiheit 5 15.07.2008 19:05
Problem mit der Ausgabe Kein Genie PHP Tipps 2006 5 26.11.2006 21:24
Farbe des SQL-Ergebnisses in der Ausgabe Peer PHP Tipps 2006 14 14.09.2006 08:51
Problem mit Ausgabe bzw. Abfrage mit ORDER BY mayer Datenbanken 7 02.07.2006 21:45
Array Ausgabe Nummerieren! PHP Tipps 2007 3 14.12.2005 16:43
[Erledigt] SELECT Problem - keine Ausgabe. Datenbanken 1 24.10.2005 02:06
Ausgabe der Auswahlliste PHP Tipps 2005-2 6 21.09.2005 13:43
3 Tabellen verbunden -- Ausgabe in einer Spalte Datenbanken 4 06.09.2005 10:43
PHP-Magazin - Ausgabe 5.2005 imported_Ben Off-Topic Diskussionen 1 08.08.2005 08:39
[Erledigt] Geteilte Ausgabe an den Browser... PHP-Fortgeschrittene 4 01.07.2005 13:07
date() Ausgabe in Deutsch PHP-Fortgeschrittene 8 06.02.2005 19:32
Echo ausgabe Zeitlich verzögern? medico HTML, Usability und Barrierefreiheit 14 03.01.2005 08:23
[Erledigt] formatierung der ausgabe, felder mit zeilenumbruch Datenbanken 4 25.11.2004 10:34
Ausgabe nur dann, wenn htmlspecialchars() verwendet PHP Tipps 2004 1 27.10.2004 21:17
Sortierung der Ausgabe PHP-Fortgeschrittene 3 08.10.2004 09:22

Besucher kamen über folgende Suchanfragen bei Google auf diese Seite
sql ausgabe, ausgabe sql, sql ausgabe mit text, sql datum ausgabe, sql ausgabe anpassen, ausgabename oracle sql ändern, sql ausgabe nur einmal, sql ausgabe von bis, ausgabe in sql, sql ausgabebreite, sql ausgabe ändern, sql ausgabe verändern, sql ausgabe name, sql ausgabe als, sql ergebnis anpassen, oracle sql zeilenumbruch, http://www.php.de/datenbanken/1290-sql-ausgabe-anpassen.html, slq ausgabe, sql ausgabe als ahref, textausgabe in tandem sql

Alle Zeitangaben in WEZ +2. Es ist jetzt 02:13 Uhr.




Powered by vBulletin® Version 3.7.2 (Deutsch)
Copyright ©2000 - 2012, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO 3.2.0
Aprilia-Forum, Aquaristik-Forum, Liebeskummer-Forum, Zierfisch-Forum, Geizkragen-Forum