mt_rand()

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

AngularJS Developer

Wat je gaat doen: Of beter nog, wat wil jij doen? Bij DPA GEOS werken onze consultants als Developer in Agile teams bij onze klanten en zijn ze verantwoordelijk voor de grotere webapplicaties. Wil jij dit ook, want we zijn op zoek naar enthousiaste Developers om ons development team te versterken. Je bent creatief en draagt met je enthousiasme positief bij aan de teamgeest binnen een projectteam. Je gaat webapplicaties 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 interesse in het applicatie landschap.

Bekijk vacature »

Medior PHP developer gezocht!

Bedrijfsinfo Voor een informele organisatie die zich richt op onder andere webdevelopment met name binnen de sociale sector ben ik op zoek naar een medior PHP developer. Binnen deze organisatie krijg je veel vrijheden maar wordt ook veel van je gevraagd! Ze werken voornamelijk aan webapplicaties ter ondersteuning van de sociale sector waarbij de focus ligt op hoogstaande kwaliteit, veiligheid en langdurige samenwerkingsverbanden met het oog op een gestage groei van de organisatie. Functie-omschrijving Je komt te werken in een team van 5 ontwikkelaars en een designer. Binnen dit team draag je veel verantwoordelijkheid voor jouw projecten. Een klein onderdeel

Bekijk vacature »

Medior ASP.NET ontwikkelaar

Bedrijfsinfo Als ASP.NET ontwikkelaar ga je aan de slag bij de een van de grondleggers van de Nederlandse registratiesoftware. Deze organisatie heeft bijna 30 jaar geleden het initiatief genomen om o.a. de urenregistratie te gaan digitaliseren. Door de jaren heen is deze organisatie gigantisch gegroeid en is het assortiment aan software die zij aanbieden continue vergroot. Zo is de organisatie ooit begonnen met slechts één oplossing, heeft de organisatie nu de focus verlegd naar meerdere opties. Dit pakket is ontwikkeld naar een totaalpakket die zij leveren aan diverse ondernemingen in heel Nederland. Enkele aanvullingen op de standaard software zijn o.a.

Bekijk vacature »

Junior PHP developer Maatwerkplatform

Organisatie De business partner waarmee wij in contact staan is gevestigd in Lelystand en marktleider in hun niche. Naast dat het kantoor van alle gemakken is voorzien zit het op een locatie die ook nog is gemakkelijk te bereiken is. Op dit moment bestaan zij ruim 15 jaar en hebben zo’n 50 man in dienst. Hun missie is het leven van de klanten makkelijker te maken. Hun manier van werken omschrijven zij als eenvoudig, eerlijk en eigenwijs. Zij bieden betrouwbare producten en diensten van hoge kwaliteit zodat jij er zelf iets moois van kunt maken zonder afhankelijk te zijn van

Bekijk vacature »

Ervaren Data Engineer Advanced Analytics

CGI heeft de slagkracht en de grootte om zelfs de meest ambitieuze IT-carrières vorm te geven. Doordat wij een stabiele en groeiende organisatie zijn, kunnen wij je uitstekende kansen bieden om in een ondersteunende omgeving te werken aan projecten die daadwerkelijk impact hebben op onze wereld. CGI heeft voor haar locatie in Rotterdam een vacature voor een Ervaren Data Engineer Advanced Analytics Fulltime Wat ga je doen als Data Engineer? Als ervaren Data Engineer ga jij in ons team verder bouwen aan de ontwikkeling en het onderhoud van dataplatforms en werk jij mee aan het uitvoeren van de architectuur van

Bekijk vacature »

C# developer gezocht, inhouse functie (C#, Winform

Je bent C# developer en op zoek naar een nieuwe baan? Het liefst in de regio Rotterdam? Binnen een sterk bedrijf dat zich al een aantal decennia heeft bewezen? En bij voorkeur een bedrijf met een platte organisatie, directe lijnen en informele sfeer? Mogelijk dat deze baan dan iets voor jou is. Voor een Rotterdams software bedrijf ben ik namelijk op zoek naar een medior of senior C# developer. Het bedrijf richt zich op automatiseringssoftware voor met name het MKB. Hiervoor hebben ze een standaardproduct ontwikkeld dat continue doorontwikkeld wordt en inmiddels duizenden gebruikers kent over tientallen branches. Door zich

Bekijk vacature »

Ervaren .NET Back-End Developer

Organisatie Ben jij een programmeur die houdt van het afleveren van producten in hoog tempo? Niet tot in den treuren werken aan iets wat daarna misschien wel, misschien niet gebruikt wordt. Dan wil je gegarandeerd verder lezen! Dit in een industrieel gelegen pand gevestigde bedrijf focust zich volledig op de ontwikkeling van apps en websites. Hierbij werken ze intensief binnen het zelf gecreëerde CMS systeem. In deze high-paced omgeving moet je snel schakelen. Ze hebben een ontzettend groot klantenbestand die allemaal de producten willen afnemen. Om dit te realiseren werken ze in de .NET omgeving. Jouw functie richt zich volledig

Bekijk vacature »

Senior PHP Developer Amazon, AliExpress, Zalando

Organisatie Je komt te werken in een bedrijf dat in de begindagen van het internet een kans zag, die heeft gegrepen en inmiddels is uitgegroeid tot het grootste online cashback platform van Nederland. Daar blijft het niet bij ze zitten buiten Nederland namelijk ook in: België, Polen, Frankrijk en Duitsland. Ze werken ook niet met de minste namen. Ondertussen zijn er meer dan 2000 webshops door heel Europa bij ze aangesloten waaronder: Amazon, Zalando, booking.com en AliExpres. In Nederland alleen zijn deze al goed voor zo’n 10.000 transacties per dag. Op dit moment zijn er 20 mensen dagelijks werkzaam om

Bekijk vacature »

PHP Developer / Marketing Intelligence

Organisatie Wil jij aan de slag in een toonaangevend bedrijf op het gebied van online marketing om mee te bouwen aan een high tech systeem op het gebied van online marketing? Hecht je waarde aan een informele cultuur en wil je daarin klaargestoomd worden tot top developer? Wil je graag werken in een prachtig pand te centrum Amsterdam? Reageer dan snel! Deze volwassen organisatie is al lange tijd een van de marktleiders in de online marketing branche. Omdat er in Nederland zo’n 4500 andere organisaties zijn waarmee ze concurreren dachten ze: Dat kan anders! In plaats van de online marketing

Bekijk vacature »

Technisch Ontwerper / Applicatieontwikkelaar max.

Uitdagende projecten, afwisseling, de zekerheid van een vast contract en groei is wat CIMSOLUTIONS jou onder andere biedt. Benieuwd hoe wij dit aanpakken? Kom op woensdag 17 april naar ons ICT Professional Event, op 7 locaties in Nederland. Tijdens deze avond kun je naast een hapje en een drankje onze sfeer komen proeven. Maak kennis met CIMSOLUTIONS, onze collega’s en beleef de ervaringen van onze ICT specialisten én de projecten waar zij het verschil maken. Kijk voor meer informatie en/of aanmelden op: https://www.cimsolutions.nl/nl/Evenement/CIMSOLUTIONS-ICT-Professionals-Event Wie zoeken we? Je bent de beste in je vak of hebt de ambitie en de potentie

Bekijk vacature »

Android Developer met mooie doorgroeimogelijkheden

Functieomschrijving Bij deze organisatie kom je te werken aan verschillende opdrachten, zowel aan opdrachten van de klanten van deze organisatie als aan eigen producten van deze club. Je krijgt veel verantwoordelijkheden binnen jouw functie, daarom zijn ze op zoek naar iemand met een groot verantwoordelijkheidsgevoel en iemand die graag meedenkt. Hiervoor ben je onder andere goed op de hoogte van de laatste ontwikkelingen in jouw vakgebied. Beschik jij daarnaast ook over een flinke dosis creativiteit, bedenk jij graag oplossingen en heb je een goed gevoel voor design? Dan kan het maar zo dat ze op zoek zijn naar jou! Functie-eisen

Bekijk vacature »

Python Developer vacature

Jij volgt ontwikkelingen op de voet. Sterker nog: je bent er onderdeel van. Jij loopt voorop. Jij denkt met klanten mee en helpt hen innoveren. Zo kun jij een bijdrage leveren aan de Rabobank-app, de beveiliging van treinen voor Pro-rail verbeteren of de website van ING een boost geven. Vergaderen? Liever gewoon zorgen dat het werkt! Hoe omschrijft men een Sogetist? Gedreven, resultaatgericht en niet snel tevreden. Wat niet wil zeggen dat je nooit met hem of haar kunt lachen. Integendeel. Plezier hoort wat ons betreft net zo goed bij werken. Maar we gaan op de eerste plaats voor de

Bekijk vacature »

.NET developer die ERP software maakt

Organisatie Deze organisatie is al ruim 25 jaar een grote speler als het gaat om ERP oplossingen voor onder meer de bouw- en installatiebranche. Deze organisatie telt meer dan 100 werknemers en is gevestigd in de omgeving van Breda. De klantgerichtheid van deze organisatie maakt het een unieke organisatie. Ze doen er alles aan om een langdurige relatie op de bouwen met de klant. Dit kan alleen als je ook echt in contact bent met de klant. Vergelijkbare bedrijven plaatsen een demo op de website over hoe de software werkt. Deze organisatie doet hier niet aan mee! Ze gaan langs

Bekijk vacature »

Frontend Midlance developer

Jij hebt al een aantal jaren werkervaring in de Frontend wereld en twijfelt over de stap naar freelancer… Want hoe lekker is het als je in overleg met de eindgebruiker je tijden kan bepalen, je veel vrijheid hebt, bij alleen toonaangevende organisaties terecht komt en ook nog eens DIK betaald krijgt? Voor veel ontwikkelaars is dit toch net een stap te ver. Zij willen gewoon lekker code kloppen en zich niet bezig houden met het regelen van opdrachten, administratieve zaken of andere randzaken. Klinkt dit bekend? Wij bieden de middenweg! Wie zijn wij? Wij zijn niet het stereotype organisatie waar

Bekijk vacature »

Product Developer

ONZE OPDRACHTGEVER Slimstock is specialist in het leveren van kennis en software op het gebied van Forecasting, Demand planning, Supply chain management en Inventory management. Ons softwarepakket Slim4 helpt klanten om de juiste voorraad op het juiste moment op de juiste plaats te krijgen. We helpen onze klanten bij het verlagen van hun voorraad en tegelijkertijd het verhogen van de servicegraad. FUNCTIEOMSCHRIJVING Doel van de functie Als Product Developer Slim4 werk je aan het (door)-ontwikkelen van onze Forecasting & Inventory Management tool Slim4. Hierbij draag je bij aan het maken/opstellen van (technische) specificaties voor onze software programmeurs. Daarnaast werk je

Bekijk vacature »
Jeroen Weij

Jeroen Weij

19/01/2019 21:35:48
Quote Anchor link
Ik heb de volgende code gemaakt waarbij ik dmv een SQL query het aantal rijen uit de database bereken.
Het aantal rijen bewaar ik in $num_rows. Met mt_rand wil ik een random waarde maken

$num_rows = mysqli_num_rows($result);
$achtergrond = mt_rand(1,$num_rows);

echo $achtergrond;

Als ik de pagina oproep gebeurt er niks.
Als ik echo $num_rows doe krijg ik wel een getal
Als ik $achtergrond = mt_rand(1,$num_rows] vervang door $achtergrond = mt_rand(1,6) krijg ik ook een random getal

Wat doe ik fout?
 
PHP hulp

PHP hulp

24/04/2019 18:58:42
Honeypot
 
- Ariën -
Beheerder

- Ariën -

19/01/2019 21:49:37
Quote Anchor link
Zet de foutafhandeling eens aan?
Ik heb het idee dat mysqli_num_rows() ergens op vastloopt.
 
Rob Doemaarwat

Rob Doemaarwat

19/01/2019 22:02:18
Quote Anchor link
Jeroen Weij op 19/01/2019 21:35:48:
Als ik echo $num_rows doe krijg ik wel een getal

En hoe groot is dat getal? Is het niet te groot voor mt_rand()?
 
Jeroen Weij

Jeroen Weij

19/01/2019 22:08:30
Quote Anchor link
@Rob Doemaarwat het getal is nu 6. (En zal misschien oplopen naar 40.000, wat is de Max waarde voor mt_rand()?)
 
Rob Doemaarwat

Rob Doemaarwat

19/01/2019 22:27:43
Quote Anchor link
6 zou in ieder geval geen probleem moeten zijn :-) Heb je de foutafhandeling al aan gezet / logs bekeken?
 
Thomas van den Heuvel

Thomas van den Heuvel

20/01/2019 00:05:56
Quote Anchor link
Een getal is een getal. Wat de oorsprong is van deze waarde maakt niets uit. Ik zou dus kijken wat de specifieke waarden zijn die worden geretourneerd (en wat het type hiervan is) van zowel mysqli_num_rows() alsook mt_rand().

Is het bijvoorbeeld gegarandeerd dat de resultset altijd niet-leeg is (en geen fouten oplevert), anders resulteert num_rows() in de waarde 0 en mt_rand(1, 0) in de waarde false, want dit is hoe mt_rand() werkt.

Doe dus achtereenvolgens het volgende:
- zet het melden en weergeven van fouten aan
- observeer wat er gebeurt door waarden naar het scherm te dumpen zodat je inzicht krijgt in de toestand van je variabelen
- raadpleeg de documentatie
- rond dit punt heb je waarschijnlijk al door wat er misgaat

Een systematische aanpak helpt je bij het oplossen van deze problemen, en ik heb je zojuist het recept gegeven voor de aanpak van ca. 99 uit 100 gevallen.

NB mysqli_num_rows() bestaat niet.

EDIT: je zou natuurlijk ook een alternatieve oplossing kunnen bedenken als dit in jouw situatie van toepassing is. Je zou bijvoorbeeld de records random kunnen rangschikken en dan een enkel record op kunnen halen middels ORDER BY RAND() LIMIT 1, mogelijke performancekwesties daar gelaten uiteraard. Neemt niet weg dat je zou moeten nagaan waar dit probleem vandaan komt.
Gewijzigd op 20/01/2019 01:14:38 door Thomas van den Heuvel
 
- Ariën -
Beheerder

- Ariën -

20/01/2019 00:47:14
Quote Anchor link
mysqli_num_rows
Die bestaat gewoon hoor......
 
Thomas van den Heuvel

Thomas van den Heuvel

20/01/2019 01:13:25
Quote Anchor link
Uff, navigatie door die documentatie soms... Je hebt gelijk. Had dat ding ook al een hele lange tijd verpakt in een wrapper, dus het origineel stond me allang niet meer voor de geest :p.

... wat trouwens ook een goed idee is (het gebruik van een wrapper), op die manier voorkom je hard coding, mocht zo'n functie/methode alsnog ooit nog eens deprecated raken en/of verdwijnen.
Gewijzigd op 20/01/2019 01:16:37 door Thomas van den Heuvel
 
- Ariën -
Beheerder

- Ariën -

20/01/2019 08:29:29
Quote Anchor link
"ORDER BY RAND() LIMIT 1" is ook erg handig, maar i.c.m met een uitgebreide query met wat WHERE en AND en ik geloof een JOIN erbij, kreeg ik ooit wel steeds bepaalde getallen die vaak terugkeerden dat het niet echt random leek. Het is een oud project verder dus de code heb ik even geen query meer.

Ik heb geen idee waar dat mee te maken had. Maar ik zou het toch even goed testen bij gebruik. Misschien herkent iemand precies wat er gebeurde??
Gewijzigd op 20/01/2019 08:31:27 door - Ariën -
 
Jeroen Weij

Jeroen Weij

20/01/2019 08:38:59
Quote Anchor link
Opgelost! Bedankt.
Had een aanpassing gedaan en meerdere waarden met $result gebruikt. ($reslut1,$result2) En dit niet aangepast in dit stukje code. :-(
Dit moest het zijn:
$num_rows = mysqli_num_rows($result1);
$achtergrond = mt_rand(1,$num_rows);

Bedankt voor de hulp, had nog nooit van de error log gehoord, dit op gezocht en kon precies zien waar het fout ging:
 
- Ariën -
Beheerder

- Ariën -

20/01/2019 08:52:36
Quote Anchor link
Daarom: Altijd foutafhandeling bij je queries.

Ikzelf gebruik de object-georiënteerde van MySQLi waarbij ik de foutafhandeling in een extended-class afhandel in een gekloonde query-functie.
 
Ward van der Put
Moderator

Ward van der Put

22/01/2019 11:58:22
Quote Anchor link
Jeroen Weij op 20/01/2019 08:38:59:
$num_rows = mysqli_num_rows($result1);
$achtergrond = mt_rand(1,$num_rows);


Als je maar geen SELECT * uitvoert om op $result1 te komen.

Je kunt rijen in een tabel beter met SELECT COUNT(*) tellen.

Leuke vergelijking van Stackoverflow:

Quote:
Think of it like the following pseudo scenarios:

SELECT COUNT(*)

Hey Bob, how many people are in the class room?

mysql_num_rows

Hey Bob, send all the people from the classroom over to me, ... I'll count them to get the number of people myself
 



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.