mt_rand()

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

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 »

Low Code Developer - Consultant

Functie omschrijving Wil jij fungeren als een spin in het web en samenwerken met klanten? Voor een leuke en interessante opdrachtgever in omgeving Leiden zijn wij op zoek naar een Low Code developer die zich bezig gaat houden met het optimaliseren van bedrijfsprocessen bij klanten en het leiden van projecten. Ben jij toe aan een nieuwe uitdaging en heb jij verstand van datamodellering en NO CODE Platformen? Lees dan snel verder! Bij deze rol horen de volgende werkzaamheden: Je gaat geen code kloppen maar bedenken hoe applicaties eruit moet komen te zien. Je gaat werken met een non code platform,

Bekijk vacature »

Back-end .NET Developer

Functie omschrijving C# / .NET Developer gezocht voor een dynamische organisatie in de regio Houten! Voor een leuke organisatie in de regio Houten zijn wij op zoek naar een Back-end developer die klaar is voor een nieuwe uitdaging. In deze functie werk jij aan verschillende projecten en ga je vaak bij klanten op bezoek. Binnen deze functie kun je een grote mate van uitdaging, diversiteit en verantwoordelijkheid treffen. Bedrijfsprofiel Waar ga je werken? Het bedrijf waar je gaat werken is gespecialiseerd in het ontwerpen en implementeren van procesautomatisering en procesinformatisering. Zij doen dit onder andere voor de (petro)chemie, pharma, infra,

Bekijk vacature »

C# .NET Developer

Dit ga je doen Ontwikkelen van de Back-end in .NET6 / C# en WebAPI (Focus);) Ontwikkelen van de Front-End in Nodje.js en Angular (secundair); Ontwikkelen in Blazor; Opstellen van een technisch ontwerp; Testen, documenteren en implementeren van de nieuwe applicatie; Verzorgen van de nazorg, na de implementatie. Hier ga je werken Binnen deze organisatie werken duizenden mensen binnen allerlei verschillende disciplines. Tevens hebben zij veel specialiteiten in huis, waaronder ook .Net Developers. Ter uitbreiding van een nieuw team en ter ondersteuning van het project zijn ze opzoek naar een nieuwe collega voor het team. Als C#.NET Developer zal jij je

Bekijk vacature »

.NET Developer

Functieomschrijving Ben jij klaar voor de volgende stap in jouw carrière? Kom werken bij dit kleine softwarebureau en werk aan de gaafste maatwerk projecten. Je komt te werken in een klein development team en werk nauw samen met elkaar, om maatwerk software te leveren en bij te dragen aan bedrijfsautomatiseringen. Je gaat werken met de Microsoft stack en technieken als .NET, C#, Entity, MVC, SQL server. In de functie krijg je veel vrijheid om zelf beslissingen te nemen en je hebt impact op de bedrijfsprocessen. Bedrijfsprofiel Dit familiebedrijf bestaat al ruim 20 jaar. Zij hebben een vast netwerk van klanten,

Bekijk vacature »

Senior Fullstack Developer (GOLang, TypeScript)

Bedrijfsomschrijving Our client is one of the large worldwide accounting firms. Functieomschrijving We are looking for a senior (all-round) developer (Project On Demand / Tax Technology) Uses as much as possible technology in support of the development process: Git, Jenkins, Docker, npm, skaffold, helm, etc. We are looking for a real hands-on developer; ie not a team lead or other managerial-style role; Acts with integrity both internally and externally and takes personal responsibility in this respect; Curious about the developments within their field and driven to make a difference with the team; Able to empathize with colleagues and stakeholders and

Bekijk vacature »

Developer Full Stack

Functie omschrijving Full Stack Developer gezocht! Wij zijn op zoek naar een Full Stack Developer voor een bedrijf in de regio Nijkerk. Je maakt in deze functie onderdeel uit van een groeiend team met een goede ambitie waarbij eenheid, betrokken en overtreffen de belangrijkste kernwaardes zijn. Het bedrijf werkt volgens de AGILE/SCRUM methode, wat je o.a. terug vindt in de tweewekelijkse sprints, retrospectives en een daily standup. Je takenpakket bestaat uit: Bijdragen aan het door ontwikkelen, onderhouden en optimaliseren van een Saas applicatie; Bijdragen aan de innovatie van het bedrijf en hun klanten; Het ontwikkelen op de laatste technologie van

Bekijk vacature »

Senior Java developer

Als Senior Developer bij Sogeti ben je onderdeel van onze toonaangevende best-gecertificeerde Java community. Deze bestaat uit ruim 100 gepassioneerde professionals. In teamverband lever je mooie prestaties. Daarmee draag je aan bij de meerwaarde die wij leveren aan onze top-opdrachtgevers. Geen werkdag is hetzelfde! Je bent voortdurend bezig met het oplossen van allerlei complexe vraagstukken binnen bedrijfskritische systemen. Een voorbeeld hiervan is een cliënt-volgsysteem bij Reclassering Nederland. Andere klanten waar wij onder andere voor werken: KPN, Philips, Nationale-Nederlanden, Kamer van Koophandel, ABN AMRO, Bovemij, Aval en de Nationale Politie. Natuurlijk krijg jij de mogelijkheid je verder te certificeren in dit vakgebied. We

Bekijk vacature »

Software Developer Mendix / Maatschappelijk Betrok

Dit ga je doen Het bouwen van de Mendix applicaties in samenwerking met jouw team of zelfstandig; Werken met Scrum methodiek; Ontwikkelen van vooruitstrevende oplossingen; Meedenken over nieuwe applicaties en ontwikkelingen; On the job eigen maken van de Mendix omgeving. Hier ga je werken Deze dynamische en snelgroeiende organisatie begeeft zich in de recyclingbranche. Zij nemen op duurzame en efficiënte manier de recycling op zich. Vanwege hun snelle groei zijn zij op zoek naar een young professional die zich graag wilt ontwikkelen als Mendix Developer. Je komt te werken binnen een IT team van +/- 15 medewerkers. Het huidige ‘vaste’

Bekijk vacature »

Backend Developer Scrummaster .NET

Samengevat: Deze werkgever is een ambitieus internetbedrijf met een passie voor digitale communicatie. Ben jij geschikt als Backend Developer? Heb je ervaring met .NET platform? Vaste baan: Backend Developer / SCRUM Master Scrum HBO WO €3.800 - €6.000 Deze werkgever is een innovatief bedrijf met enthousiaste mensen die jarenlang ervaring hebben met het ontwikkelen internet- en intranetoplossingen. Wij houden van korte lijnen en open en eerlijke communicatie. Wij zetten graag onze jarenlange ervaring in om perfect werkende oplossingen te ontwikkelen. Wij ondersteunen dienstverlenende organisaties bij het ontwikkelen en realiseren van een effectief, adaptief communicatieplatform. Je ontwikkelt met ons de meest

Bekijk vacature »

Junior Front end developer Onderwijssoftware

Functie Als Junior front end developer kom jij terecht in een klein, maar hecht team bestaande uit 5 andere developers (waarvan 2 senioren, 2 medior en 1 junior). Met de gezamenlijke missie om “ieder kind te helpen met onze software” wordt er dagelijks gepassioneerd en hard gewerkt aan ons in-house ontwikkeld platform. Deze software is gebaseerd is op AI, machine Learning en wetenschappelijke inzichten. Dagelijks zul jij werken met onze high traffic webapplicatie. We hebben ruim 300.00 gebruikers en meer dan 2 miljard records waar je te maken mee krijgt! Verder zul jij je bezighouden met: – Het ontwikkelen van

Bekijk vacature »

Dynamische Oracle/APEX Ontwikkelaar in de logistie

Bedrijfsomschrijving De organisatie in de regio Rotterdam is gespecialiseerd in het ontwikkelen van moderne webbased software voor de ERP branche. In totaal is er 20FTE aan specialisten actief binnen de organisatie. De ICT afdeling bestaat momenteel uit 15FTE. Ze groeien ontzettend hard en daarom zoeken zij een Oracle/APEX Developer die het reeds sterke team nog sterker komt maken. Hier werken ze op projectbasis voor verschillende grote organisaties in de logistieke sector. Het is een informele organisatie waarbinnen een fijne werksfeer heerst. Zoals aangegeven willen ze het team nog sterker maken en daarvoor zoeken ze bij voorkeur medior of senior Oracle/APEX

Bekijk vacature »

Software Developer

Functie omschrijving Veel begeleiding en de kans om je verder te ontwikkelen als software developer. Dat kunnen wij jou bieden bij deelname aan deze leuke traineeship. Je krijgt een mentor toegewezen die jou alle kneepjes van het vak leert. Heb jij al wat ervaring als software developer? Daar worden wij heel blij van! Lees snel verder! Bedrijfsprofiel Als software developer neem je deel aan een trainings programma in de omgeving van Haarlem waar je persoonlijk wordt begeleidt, zodat je alle kneepjes van het vak leert. Aan de hand van jouw kennis en ervaring krijg je een persoonlijk opleidingstraject. Je gaat

Bekijk vacature »

Back-end Developer Java

Dit ga je doen Het (door)ontwikkelen van een zelfgebouwde applicatie in Java, Spring Framework, SQL, HTML, CSS en Javascript; End-to-end beheer m.b.t. de applicatie en koppelen van applicaties binnen het landschap; Ontwikkelen van rapportages voor de interne organisatie; Ontwikkelen van aanvullende functionaliteiten m.b.t. de applicatie; Uitvoeren van testen en code reviews. Hier ga je werken Binnen deze organisatie kom je te werken op de afdeling die medische gegevens verzamelt vanuit het hele land. Denk hierbij aan vertrouwelijke persoonsgegevens. Het team verwerkt al deze data met als doel het waarborgen en verbeteren van de kwaliteit van de zorg in heel Nederland.

Bekijk vacature »

Integratie Developer / Architect

Dit ga je doen Als Integratie Developer / Architect binnen deze organisatie krijg je echt de kans om impact te maken. De organisatie is groeiende maar houdt een corporate cultuur buiten de deur. Heb je een goede business case: zorg voor goede argumentatie en ga ervoor! Geen stroperig beslissingsproces dat jouw ideeën in de weg staat! Enkele van jouw taken: Je ontwerpt en ontwikkelt nieuwe integraties met behulp van interne tools (Boomi) of externe partners; Je vertaalt functionele specificaties naar technische oplossingen; Je denkt mee over strategische ontwikkelingen op het gebied van applicatie integratie; Je voert regie op leveranciers en

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

29/03/2024 11:49:14
 
- 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.