Random nummer zonder herhaling

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Junior .NET developer

Functie Als junior .NET Developer start jij in een team met 15 developers. In het team is er genoeg senioriteit om ervoor te zorgen dat jij de juiste begeleiding krijgt. Jij begint als eerst alle software pakketten en processen eigen te maken. Vervolgens ga jij deze software programmeren, onderhouden en testen. Ook ga jij research doen naar nieuwe mogelijkheden en zoek jij uit hoe je dit kan implementeren. Jullie werken intern op project basis en afhankelijk van het project werken jullie wel of niet iedere ochtend met een standup. Je gaat als Full stack developer aan de slag en gaat

Bekijk vacature »

Developer Low-code

Dit ga je doen Low-code ontwikkeling van software voor landelijk bekende organisaties; Opleveren van mooie eindproducten, middels de Agile methodiek; Samenwerken in een team van 10 collega's; Direct contact met de eindklant over de gewenste oplossingen. Hier ga je werken Als Developer kom je te werken in de regio van Lelystad bij een organisatie die met toonaangevende klanten uit heel Nederland samen werkt. De producten en diensten van de organisatie bereiken miljoenen Nederlanders. Hierbij komt een grote hoeveelheid informatie kijken en deze moet discreet en veilig verwerkt worden. De processen die hierbij horen worden door het IT team vormgegeven. De

Bekijk vacature »

C#.NET-developer - JUNIOR

Functie omschrijving Voor een leuke opdrachtgever in omgeving Brielle zijn wij op zoek naar een junior developer. Werk jij graag met de volgende tools & technieken? C#, .NET, ASP.NET, MVC en SQL? Kijk dan snel of dit iets voor jou is! Als programmeur bij een productiebedrijf zal je voornamelijk nieuwe software schrijven maar ook bestaande software verbeteren. Verder werk je veel samen in back end projecten met leuke collega's. Bedrijfsprofiel Met een team van ruim 130 personen staan ze elke dag weer klaar om IT en Business te combineren door het ontwikkelen van producten op maat. Er zijn 3 teams,

Bekijk vacature »

Medior Java developer (fullstack)

Wat je gaat doen: Of beter nog, wat wil jij doen? Binnen DPA GEOS zijn we dan ook op zoek naar enthousiaste Java developers om ons development team te versterken. Als Java developer werk je in Agile/Scrum teams bij onze klanten en daarbij kun je eventueel ook andere ontwikkelaars begeleiden in het softwareontwikkelproces. Verder draag je positief bij aan de teamgeest binnen een projectteam en je kijkt verder dan je eigen rol. Je gaat software maken voor verschillende opdrachtgevers in jouw regio. Je bent een professional die het IT-vak serieus neemt en kwaliteit levert. Je leert snel vanwege je diepgaande

Bekijk vacature »

C# developer

Functie Als ervaren Software Engineer wordt jij verantwoordelijk voor het bedenken en ontwikkelen van technische (maatwerk) oplossingen voor onze klanten en dit samen met de klant af te stemmen. Jij wordt o.a. verantwoordelijk voor de doorontwikkeling het software pakket welke voor ons enorm belangrijk is. Dit pakket zorgt er namelijk voor dat wij complete productielijnen kunnen aansturen en monitoren. Daarnaast heb jij actief contact met onze hoofdvestiging om het software achter een van onze systemen te verbeteren en te herschrijven. Momenteel zijn onze C# applicaties geschreven met o.a. Winforms. Echter hebben wij de actieve ambitie om dit te gaan herschrijven

Bekijk vacature »

Front-end Developer Magento 2/Wordpress

Voor het aantrekkelijk houden en steeds vernieuwen van de huidige websites en webshops en het meedenken in de marketing zijn wij per direct op zoek naar een ervaren Front-end developer met gedegen kennis van Magento 2 (webshops) en Wordpress (websites). Wat bieden wij jou Mooi salaris! Meteen op contract bij de opdrachtgever! Gezellig, Kempisch bedrijf! 35 uur per week! Auto van de zaak! Wie ben jij Van een front-end developer verwachten wij: Een afgeronde Bachelor ICT opleiding met profiel ICT & Media Design. Dat je in het bezit bent van een Magento 2 professional front-end developer certificaat; Je hebt ruime

Bekijk vacature »

Outsystems Developer Medior

Dit ga je doen Bouwen aan nieuwe en innovatieve applicaties; Maken van koppelingen tussen Outsystems en het bestaande applicatielandschap; Troubleshooting op bestaande software. Hier ga je werken De organisatie is internationale speler binnen de bouwbranche en richt zich op de infrastructuur, zowel boven als onder de grond. Ze zijn ruim 1100 man groot en maken op IT vlak een mooie groei door. Als ervaren Developer kom je te werken op een IT-afdeling van zo'n 25 man groot. Een aantal jaar geleden hebben ze de keuze gemaakt om zich meer te gaan richten op ontwikkeling en door de groei van de

Bekijk vacature »

Android developer

De functie Schiphol is een plek om te reizen, te verblijven en te werken. Door middel van data en technologie richten we op al deze gebieden het leef- en werkklimaat optimaal in en zorgen we voor een slimmere en efficiëntere operatie. Wij ontwikkelen nieuwe producten en diensten vanuit de wensen en behoeften van onze klanten, voorspellen passagier flows en testen digitale oplossingen om rijen en andere pijnpunten in het proces te verminderen. Met slimme feedback van sensortechnologie maken we zelfs data van toiletten en stoelen inzichtelijk en bruikbaar. Het Commercial Platform bestaat uit multidisciplinaire teams met een end-2-end verantwoordelijkheid voor

Bekijk vacature »

PHP Laravel Ontwikkelaar

Functie omschrijving Weet jij alles over Laravel en krijg je energie van het developen van software hiermee? Laat het weten want wij zoeken een PHP/Laravel developer in regio 's-Hertogenbosch voor klein bedrijf welke softwareoplossingen maakt voor hun klanten. Jouw taken hierbij: Softwareapplicaties ontwikkelen en verder optimaliseren in veel diverse projecten op basis van Agile/Scrum. Documentatie schrijven over applicaties. Uitleg geven over software en applicaties Klantcontact hebben over bestaande applicaties. Techstack: PHP, Laravel, HTML, CSS, Javascript. Bedrijfsprofiel Deze organisatie zit in de regio van 's-Hertogenbosch en is een klein bedrijf. Er werken circa 15 medewerkers, verdeeld in meerdere teams, zoals back-end

Bekijk vacature »

Laravel developer

Zie jij mogelijkheden om onze tooling technisch te verbeteren en uit te bouwen? Over Jobmatix Jobmatix is een innovatieve en internationale speler op het gebied van jobmarketing. Onze jobmarketing automation tool helpt organisaties bij het aantrekken van nieuw talent door vacatures digitaal, geautomatiseerd en op een efficiënte manier te adverteren en onder de aandacht te brengen bij de doelgroep op 25+ jobboards. Volledig performance-based, waarbij organisaties betalen op basis van cost per click of cost per applicant. Maandelijks wordt onze jobmarketing automation tool al gebruikt door vele directe werkgevers, intermediairs en mediabureaus, waaronder Picnic, Rijkswaterstaat, AdverOnline, Schiphol, DPA, Teleperformance en

Bekijk vacature »

Senior Javascript developer

Functie Het platform is gebouwd in een moderne JavaScript stack, die gebruikt maakt van:  React.js  Redux  TypeScript  Node.js  Google Cloud functions (node.js)  Semantic UI Alle code wordt getest en beoordeeld door collega developers. De continuous integration pipeline maakt het mogelijk om elke dag waarde te leveren aan hun klanten. Het ontwikkelproces is pragmatisch en gebaseerd op Scrum. Wat je zult doen: Ten eerste kun je nadrukkelijk jouw eigen stempel drukken op de technologie, het product en de cultuur van het bedrijf. Je bent bezig met het uitwerken van de architectuur van nieuwe functionaliteiten op

Bekijk vacature »

Anaplan Developer

Dit ga je doen What are you going to do: Picking up Stories: Design planning had, how are we going to build it in Anaplan; Talking to the end user to build a forecasting model; Having contact with the data team about which data is needed; Being able to convert an Excel sheet into a 3, 4 or 5 dimensional modeling environment; Giving knowledge sessions about Anaplan; Solving incidents; Making instructional videos on how teams should read forecasts; Writing blogs about forecasting. Hier ga je werken We are looking for an Anaplan Builder to deliver end-to-end solutions within a big

Bekijk vacature »

Outsystems Developer Junior

Dit ga je doen Bouwen aan nieuwe en innovatieve applicaties; Maken van koppelingen tussen Outsystems en het bestaande applicatielandschap; Troubleshooting op bestaande software. Hier ga je werken De organisatie is internationale speler binnen de bouwbranche en richt zich op de infrastructuur, zowel boven als onder de grond. Ze zijn ruim 1100 man groot en maken op IT vlak een mooie groei door. Als junior Outsystems Developer kom je te werken op een IT-afdeling van zo'n 25 man groot. Een aantal jaar geleden hebben ze de keuze gemaakt om zich meer te gaan richten op ontwikkeling en door de groei van

Bekijk vacature »

Medior PHP Developer

Functie omschrijving Ben jij een getalenteerde PHP Developer en aan de slag in een gemotiveerd team? Lees dan snel verder! Voor onze opdrachtgever in de omgeving van Valkenswaard zijn we op zoek naar een ervaren PHP developer. Jij gaat hier zorg dragen voor het optimaliseren en up-to-date houden van de bestaande applicaties. Je werkt verder aan de applicaties die jij verder ontwikkelt. Dit doe je voornamelijk met PHP en MySQL. Verder ga je je bezig houden met: Het uitbouwen van het E-commerce software platform. Deelnemen aan overleggen met het team. Het ondersteunen van jouw team developers (3 man) en helpen

Bekijk vacature »

Medior Java developer (fullstack)

Wat je gaat doen: Of beter nog, wat wil jij doen? Binnen DPA GEOS zijn we dan ook op zoek naar enthousiaste Java developers om ons development team te versterken. Als Java developer werk je in Agile/Scrum teams bij onze klanten en daarbij kun je eventueel ook andere ontwikkelaars begeleiden in het softwareontwikkelproces. Verder draag je positief bij aan de teamgeest binnen een projectteam en je kijkt verder dan je eigen rol. Je gaat software maken voor verschillende opdrachtgevers in jouw regio. Je bent een professional die het IT-vak serieus neemt en kwaliteit levert. Je leert snel vanwege je diepgaande

Bekijk vacature »
Martijn K

Martijn K

23/07/2014 10:49:54
Quote Anchor link
Beste mensen,

Het maken van een random nummer in een range lukt me wel. Het enige probleem is dat dat het niet mag worden herhaald.
Ik heb een quiz gemaakt van 20 vragen.
De vragen komen 1 voor 1 op het scherm.
Bij mijn SQL gebruik ik nu: LIMIT $variabelediesteedseenmmeerword, 1;
ik wil van $variabelediesteedseenmmeerword een $variabeledie1totenmettwintigkanzijn.
Ik wil dat de vragen in random volgorde komen maar altijd maar 1 keer. Dus ik wil steeds een ander nummer in een unieke variabele hebben in een range van 1-20.


Groet,
Martijn
Gewijzigd op 23/07/2014 10:56:00 door Martijn K
 
PHP hulp

PHP hulp

23/11/2024 11:13:23
 
TJVB tvb

TJVB tvb

23/07/2014 10:56:48
Quote Anchor link
Je kunt de vragen ophalen met een order by rand() (hiervoor moet je dan wel alle vragen in 1 keer ophalen)
Of je slaat ze op in je sessie. En sluit die uit bij het ophalen.

Dan krijg je iets als
SELECT
id,
kolom1,
kolom2,
FROM vragen
WHERE id NOT IN (5,12,19)
ORDER BY RAND()
LIMIT 1
 
Martijn K

Martijn K

23/07/2014 11:02:49
Quote Anchor link
Hoi TJVB,
Ik wil niet alle vragen in een keer ophalen maar vraag per vraag laten zien. Dus LIMIT $vraagnummer, 1
 
Erwin H

Erwin H

23/07/2014 11:03:13
Quote Anchor link
RAND() is nogal traag (hoewel dat bij 20 rijen nog niet merkbaar is).
Een vrij simpele oplossing voor dit vaak terugkomende probleem, is een array te maken met alle mogelijke waardes. Die array met array_shuffle() overhoop te gooien en vervolgens gewoon die array doorlopen en elke keer het volgende element eruit te halen. Zo is de volgorde random en krijg je nooit hetzelfde element nog een keer.

Zolang het aantal elementen aftelbaar is werkt dit prima.
Gewijzigd op 23/07/2014 11:06:25 door Erwin H
 
Martijn K

Martijn K

23/07/2014 11:08:29
Quote Anchor link
Hoi Erwin H,

Wil je een voorbeeld in PHP schrijven voor mij? Vooral " die array doorlopen en elke keer het volgende element eruit te halen." lukt me niet.

Ik doe het trouwens niet goed denk ik. Of ik maak een denkfout. Een variabele laten optellen kan goed maar als PHP bij elke vraag een nieuw random array gaat maken dan is er ook de kans op een dubbele vraag.

Groetjes,
M
Gewijzigd op 23/07/2014 11:17:15 door Martijn K
 
Erwin H

Erwin H

23/07/2014 11:17:47
Quote Anchor link
Ik was al even met een klein voorbeeldje bezig:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
<?php
//start sessie om de info over verloop in de sessie op te kunnen slaan
session_start();

//kijk wat het element is dat nu getoond moet worden
$element = ( isset( $_SESSION['i'] ) )? $_SESSION['i']: 0;

//kijk of er al een seed is voor de random generator, zo niet dan wordt die
//aangemaakt. Dit zorgt ervoor dat je bij elke pagina request weer dezelfde
//volgorde krijgt

$rand = ( isset( $_SESSION['r'] ) )? $_SESSION['r']: rand();
srand( $rand );

//Genereer de array die de volgorde gaat bepalen
$array = range( 1, 20 );

//Gooi de array door elkaar
shuffle( $array );

//Alleen voor de test
print_r( $array );
echo '<br><br>';
echo $element.': '.$array[$element];

//Nu zou je je gegevens uit de database moeten halen, waarbij $array[$element]
//het juiste record nummer bevat

//Schrijf het huidige element en de random seed naar de sessie zodat je die bij
//de volgende kunt ophalen

$_SESSION['i'] = ++$element;
$_SESSION['r'] = $rand;
?>

Enige wat nog mist hier is wat te doen als je aan het einde bent gekomen. Dat mag je zelf uitvogelen.
Gewijzigd op 23/07/2014 11:20:06 door Erwin H
 
Martijn K

Martijn K

23/07/2014 11:21:35
Quote Anchor link
Ik ga het uitproberen!
Het werkt prima!

Ik was wat overenthousiast. Gelukkig is er een afdeling 'Beginnen met PHP' want dit is pittig voor me.

Hij blijft met nieuwe arrays komen.
ik snap ook niet wat je doet met :

$_SESSION['r'] en $_SESSION['i'] en wat het verschil is tussen die twee.

Hartelijk dank dat je me hebt geholpen. Ik moet nu nog uitvogelen hoe ik de sessie beëindig als de laatste vraag is geweest zoals je zelf al aangaf.

ik doe nu :
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
<?php
if($element>$aantalpaginas){
  unset($_SESSION['i']);
  unset($_SESSION['r']);
 }

?>

ik weet niet of dat goed is.



Dit is best nog ingewikkeld voor een beginner. Verschil tussen random volgorde vragen en opeenvolgend is nogal groot.

Hartelijk dank!
Gewijzigd op 23/07/2014 12:14:27 door Martijn K
 
Erwin H

Erwin H

23/07/2014 12:27:54
Quote Anchor link
$_SESSION is een array. $_SESSION['i'] is een element in de $_SESSION array, $_SESSION['r'] is een ander element.
 
Martijn K

Martijn K

23/07/2014 14:14:33
Quote Anchor link
Bedankt Erwin,

Het was een leerzame les in de wereld van de SESSIONS. Ik ben blij dat ik nu weet hoe dat werkt.

Groet,
Martijn
 



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.