Random Bild MYSQL

Hi, um keinen neuen Thread aufzumachen, frag ich einfach noch mal hier nach.. Ich würde gerne einen Link machen, der aus der MYSQL-Datenbank Namen ausliest.. mit dem Anfangsbuchstaben A-F beispielsweise.. Nach einem Buchstaben abfragen ist nicht so schwer.. aber wie verbinde ich das von A bis F ?

HTML:
<a href="?buchstabe=a">A</a>

PHP:
"SELECT * FROM tabelle WHERE title like ".$_GET['buchstabe']."% ORDER by title ASC";

Wenn noch jemand was über die obige Fragestellung weiß, wäre super!

Vielen Dank im voraus!
 
Ich würde versuchen das erste zeichen des strings in eine Zahl zu casten und dann einen bereich abfragen...

Code:
SELECT * FROM Tabelle WHERE (ASCII(LEFT(vergleichsspalte, 1)) >= 64 AND ASCII(LEFT(vergleichsspalte, 1)) <= 70) OR (ASCII(LEFT(vergleichsspalte, 1)) >= 97 AND ASCII(LEFT(vergleichsspalte, 1)) <= 102);
(nicht getestet - nur eine Idee)

Aber es gibt sicher eine einfachere Lösung
Einfach mal das mySQL-Manual durchforsten

Alternativ kannst du dir ja auch ne regex zusammenbasteln fürn solche Abfragen ;) Sicher einfach und leserlicher
http://dev.mysql.com/doc/refman/5.0/en/string-comparison-functions.html#operator_regexp

lg
 
Ok, danke! Werde ich gleich mal ausprobieren!! Kurz nochmal auf die obige Fragestellung zuückgekommen. Nochmal zur Erinnerung.. ich würde gerne in Thumbnail, welches aus der Tabelle "files" kommt, mit einer URL, welches aus der Tabelle artists kommt, verlinken. Beide Tabellen sind miteinander mit einer Zahl verknüpft. Die "id" aus files ist die gleiche wie die "id_kuenstler" aus der Tabelle artists. Wie frage ich nun die beiden Tabelle gleichzeitig ab, sodass ich das Thumb verlinken kann? Ich hab folgendes mal ausprobiert.. klappt aber leider nicht?!

PHP:
<?php
			include("../../config/config.php");
			mysql_connect("$dbhost","$dbuser","$dbpass");
			mysql_select_db("$dbtable");
			$result = mysql_query("SELECT * FROM files WHERE bild_pfad != '' ORDER BY rand() LEFT JOIN artists ON (id = id_kuenstler) LIMIT 1");
			
			$kuenstler = mysql_fetch_assoc($result); 
		
			if (trim($row['bild']) == "sfte_farbfeld")
			
		echo '<img src="'.$kuenstler['bild_pfad'].'" alt="'.$kuenstler['bild'].'" width="124" height="70" />';
		
	else 
		echo '<img src="'.$kuenstler['bild_pfad'].'" alt="'.$kuenstler['bild'].'" width="124" height="70" />';
 
Hi, wenn ich das so machen, dann gibt er mir eine Fehlermeldung:

mysql_fetch_assoc(): supplied argument is not a valid MySQL result resource

PHP:
<?php
			include("../../config/config.php");
			mysql_connect("$dbhost","$dbuser","$dbpass");
			mysql_select_db("$dbtable");
			$result = mysql_query("SELECT * FROM artists, files WHERE files.id = artists.id_kuenstler WHERE bild_pfad != '' ORDER BY rand() LIMIT 1"); 
			
			$kuenstler = mysql_fetch_assoc($result); 
		
			if (trim($row['bild']) == "sfte_farbfeld")
			
		echo '<img src="'.$kuenstler['bild_pfad'].'" alt="'.$kuenstler['bild'].'" width="124" height="70" />';
	else 
		echo '<img src="'.$kuenstler['bild_pfad'].'" alt="'.$kuenstler['bild'].'" width="124" height="70" />';
								
?>

Was stimmt mit

PHP:
$kuenstler = mysql_fetch_assoc($result);

nicht?
 
aber immer noch die gleiche Fehlermeldung in der Zeile mit:

PHP:
$kuenstler = mysql_fetch_assoc($result);
 
Gut das war dann wohl der erste fehler ;)
Dann solltest du statt * mal alle Felder (mit Tabellenname.Spaltenname) definieren die du auch wirklich auswertest. Und dann gucken ob wirklich alle namen von Tabellen und genutzen Spalten wirklich 100% richtig geschrieben sind!

Ich kenne die Tabellen ja auch nicht sondern musste von deinen Posts das Ding zusammenbasteln...
 
Hi, stimmte.. war ein kleiner Dreher drinnen.. Ausgabe funktioniert nun, aber die Verlinkungen klappt nicht?

PHP:
$result = mysql_query("SELECT * FROM artists, files WHERE files.id_kuenstler = artists.id AND bild_pfad != '' ORDER BY rand() LIMIT 1"); 
			
$kuenstler = mysql_fetch_assoc($result); 
if (trim($row['bild']) == "sfte_farbfeld")
echo '<img src="'.$kuenstler['bild_pfad'].'" alt="'.$kuenstler['bild'].'" width="124" height="70" />';
	else 
echo '<a href="maske.php?id=$id"><img src="'.$kuenstler['bild_pfad'].'" alt="'.$kuenstler['bild'].'" width="124" height="70" /></a>';

Es soll die id aus der Tabelle " artists " als Link hinter das Thumbnail legen.. ich glaub ich steh hier auf dem Schlauch ;) Danke für die Geduld!
 
Ohne jetzt den Rest des Threads zu lesen rate ich einfach mal ins Blaue hinein - auch wenn ich "als Link hinter das Thumbnail legen" nicht so ganz verstehe. ;)

Aus
PHP:
echo '<a href="maske.php?id=$id"><img src="'.$kuenstler['bild_pfad'].'"
muss
PHP:
echo '<a href="maske.php?id='.$kuenstler['id'].'><img src="'.$kuenstler['bild_pfad'].'"
werden?
 
Zurück