random script

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

SCO

SCO

27/10/2006 12:21:00
Quote Anchor link
Hoi allemaal,

Ik heb een vraagje. Ik heb een script op mijn site die via een sql query random een case uit de database haalt, en via een echo een foto (var 'show').

mysql_connect('');
mysql_select_db('');
// random case uit tabel halen en zet die in de query
$sql = "SELECT * FROM vlinders ORDER BY RAND() LIMIT 0,1";
$var = mysql_query($sql);
$row = mysql_fetch_assoc($var);
echo "<a href='" .$row['url']. "'><img src='". $row['show'] ."'width='288' 'height='212' border='0'></a><br>\n";

Mijn tabel ziet er als volgt uit

id show foto1 foto2 foto3 aantal fotos
------------------------------------------------
id1 1.jpg 1.jpg 2.jpg 2
id2 1.jpg 1.jpg 1
id3 1.jpg 1.jpg 2.jpg 3.jpg 3

etc

Per case verschilt dus het aantal foto's. Het script wat ik nu heb gebruikt alleen variabele 'show', en dus wordt steeds alleen 1.jpg van iedere case weergegeven. Nou wil ik graag al mijn foto's in de random banner hebben, dus ook foto3 van id 202 en foto12 van id23 etc. Is er een manier om dit te doen? Via MySQL?

Alvast bedankt!
Gewijzigd op 01/01/1970 01:00:00 door SCO
 
PHP hulp

PHP hulp

19/11/2024 06:38:39
 
Jan Koehoorn

Jan Koehoorn

27/10/2006 12:27:00
Quote Anchor link
Het kan wel met MySQL, maar dan moet je je datamodel aanpasssen. Veldnamen als 'foto1', 'foto2' enz. wijzen altijd op een verkeerd datamodel.
 
Jan Koehoorn

Jan Koehoorn

27/10/2006 12:34:00
Quote Anchor link
Ik zou het zo doen:

fotos
---------------
id
foto

shows
---------------
id
show

fotos_shows
---------------
foto_id
show_id

Stel nu dat je in fotos dit hebt:
1 - foto1.jpg
2 - foto2.jpg
3 - foto3.jpg

en in shows dit:
1 - show1
2 - show2
3 - show3

Dan kun je in de tabel fotos_shows dit doen:
1 - 1 (foto 1 zit in show 1)
1 - 2 (foto 1 zit in show 2)
2 - 2 (foto 2 zit in show 2)
1 - 3 (foto 1 zit in show 3)
2 - 3 (foto 2 zit in show 3)
3 - 3 (foto 3 zit in show 3)

Als je dan alle foto's uit show 3 nodig hebt, doe je:

SELECT fotos.foto
FROM fotos, fotos_shows
WHERE fotos_shows.show_id = 3
AND fotos.id = fotos_shows.foto_id
ORDER BY fotos.foto ASC
Gewijzigd op 01/01/1970 01:00:00 door Jan Koehoorn
 
SCO

SCO

27/10/2006 12:50:00
Quote Anchor link
Hoi Jan!

Heel erg bedankt, ik ga het vanavond eens proberen!
 
M Ypma

M Ypma

27/10/2006 12:59:00
Quote Anchor link
[sarcast mode] Jan niet bumpen he;)[/sarcast mode]
 
Jan Koehoorn

Jan Koehoorn

27/10/2006 13:03:00
Quote Anchor link
@ michel: oeps, pardon.
 
SCO

SCO

29/11/2006 13:28:00
Quote Anchor link
Jan ik heb je tips opgevolgd en een nieuwe database opgezet , even tijdsinvestering maar zeker de moeite waard. Bedankt!
 



Overzicht Reageren

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.