Repeat sql output tot een bepaalde waarde
Rick Secret
12/05/2011 22:35:55Hallo,
Echt een beginnersvraag vond ik het niet dus ik post 'm hier maar :)
Ik heb een hele simpele query die alle tags op random volgorde uit een database haalt. Echter zou ik willen dat de tags worden herhaald tot een bepaalde hoeveelheid.
Als er in de database dus een tag a, een tag b en een tag c staat zou ik graag willen dat de output iets wordt van b, c, a, c, a, b, c, b etc. Repeat van random sort output dus.
Huidige code gewoon simpel:
Bij voorbaat dank voor de hulp!
Echt een beginnersvraag vond ik het niet dus ik post 'm hier maar :)
Ik heb een hele simpele query die alle tags op random volgorde uit een database haalt. Echter zou ik willen dat de tags worden herhaald tot een bepaalde hoeveelheid.
Als er in de database dus een tag a, een tag b en een tag c staat zou ik graag willen dat de output iets wordt van b, c, a, c, a, b, c, b etc. Repeat van random sort output dus.
Huidige code gewoon simpel:
Code (php)
1
2
3
4
5
6
7
2
3
4
5
6
7
$getdata = "SELECT * FROM `tags` order by rand()";
$getdatasql = mysql_query( $getdata );
while( $data = mysql_fetch_assoc( $getdatasql ) )
{
echo $data['tag'];
echo " • ";
}
$getdatasql = mysql_query( $getdata );
while( $data = mysql_fetch_assoc( $getdatasql ) )
{
echo $data['tag'];
echo " • ";
}
Bij voorbaat dank voor de hulp!
Gewijzigd op 12/05/2011 22:37:58 door Rick Secret
PHP hulp
24/11/2024 00:20:01Wouter J
12/05/2011 22:43:35Wat je zou kunnen doen is gewoon de tags eruit halen. Die in een array zetten en die door elkaar halen met shuffle deze code echoën en dan weer herhalen:
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
<?php
// Vars declareren
$tags = array();
$lijstje = '';
$sQuery = "SELECT tag FROM tags";
//Gebruik geen backtricks en selecteer wat je wilt in de query
$result = mysql_query($sQuery);
while($row = mysql_fetch_assoc($result))
{//Gegevens ophalen
$tags[] = $row['tag'];
}
for($i=0;$i < 10; $i++)
{// Code 10 keer uitvoeren
shuffle($tags); // $tags door elkaar halen
foreach($tags as $tag)
{// Voor elke tag tag in $lijstje
$lijstje .= $tag.',';
}
}
echo substr($lijstje, 0, -1); // Laatste komma weghalen
// Vars declareren
$tags = array();
$lijstje = '';
$sQuery = "SELECT tag FROM tags";
//Gebruik geen backtricks en selecteer wat je wilt in de query
$result = mysql_query($sQuery);
while($row = mysql_fetch_assoc($result))
{//Gegevens ophalen
$tags[] = $row['tag'];
}
for($i=0;$i < 10; $i++)
{// Code 10 keer uitvoeren
shuffle($tags); // $tags door elkaar halen
foreach($tags as $tag)
{// Voor elke tag tag in $lijstje
$lijstje .= $tag.',';
}
}
echo substr($lijstje, 0, -1); // Laatste komma weghalen