<?php
shuffle( $projecten );
en op elke plek dat je een project wilt weergeven:
$project = array_pop( $projecten );
en op een andere plek idem dito, zo heb jen ooit dubbele projecten:
$project = array_pop( $projecten );
?>
Link gekopieerd
Zoiets?
<?PHP
$DisplayArray=array();
$n=mt_rand(0,count($ProjectArray)-1);
while(count($DisplayArray)<3)){
if(!in_array($ProjectArray[$n],$DisplayArray)){
$DisplayArray[]=$ProjectArray[$n];
}
$n=mt_rand(0,count($ProjectArray)-1);
}
?>
Let wel op: deze loop blijft lopen als je minder dan 3 projecten in je projectarray hebt staan, en als je er 3 hebt, kan het lang duren voordat hij een array heeft samengesteld. Hoe meer er dus in je array zitten, hoe beter.
Edit:
@boven was sneller, en is waarschijnlijk ook beter ;)
Link gekopieerd
Ypma schreef op 18.12.2009 15:42
<?php
shuffle( $projecten );
en op elke plek dat je een project wilt weergeven:
$project = array_pop( $projecten );
en op een andere plek idem dito, zo heb jen ooit dubbele projecten:
$project = array_pop( $projecten );
?>
Is lekker kort :)
maar ik krijg wél dubbele projecten. ik denk dat ik er ook maar een check op moet gooien of het project_id al bestaat.
ik had ook net op internet gezien dat je een array kan
returnen in een functie. (bij:
Returning Multiple Values From A Function )
dan kan ik bovenaan mn pagina de functie aanroepen, en op de juiste plekken die variabelen printen (is dat correct??)
Link gekopieerd
Tamara schreef op 18.12.2009 16:17
[quote='Ypma schreef op 18.12.2009 15:42']<?php
shuffle( $projecten );
en op elke plek dat je een project wilt weergeven:
$project = array_pop( $projecten );
en op een andere plek idem dito, zo heb jen ooit dubbele projecten:
$project = array_pop( $projecten );
?>
maar ik krijg wél dubbele projecten.
[/quote]
Dan zitten er al dubbele in het array().
Link gekopieerd
dat kan niet, want mn array bestaat uit unieke IDs.
Link gekopieerd
Kan volgens mij niet anders.
shuffle( $projecten ) schudt het array() door elkaar.
$project = array_pop( $projecten ) haalt er 1 uit, dus die zit niet meer in het array().
Link gekopieerd
Waar komt die array vandaan?
Als het uit een database komt, zorg je er best voor dat de drie random projecten door MySQL worden geselecteerd.
Link gekopieerd
3 random projecten ophalen is voor mij geen probleem, het probleem is juist dat deze op verschillende plekken in de pagina moeten komen (1 rechts en 2 boven)
dus ik moet die 3 projecten van elkaar kunnen onderscheiden
Link gekopieerd
kan je gewoon niet, om te vermijden dat je er meerdere hebt, uw project dat je al hebt getoond verwijderen met unset()?
Link gekopieerd