Waarom werkt dit niet?
Pagina: « vorige 1 2 3 volgende »
Kijk eens naar: Ok, ik heb die array aangepast naar array_push maar het werkt nog steeds niet :(
Gewijzigd op 01/06/2013 17:27:05 door - Ariën -
volgens mij gaat het met de code gewoon ergens mis bij die rand()...
De rest bovenaan lijkt me in orde!
Quote:
min The lowest value to return (default: 0)
Quote:
max The highest value to return (default: getrandmax()
Is het niet een beter idee om eens naar deze tutorial te kijken;
http://www.phptuts.nl/view/39/
Hij is weliswaar wel Nederlandstalig, maar aan de Engelse taal ontkom je nooit met programmeren. 99% van de manuals die je tegenkomt is Engels. En zelfs is PHP op Engels gebaseerd met functions, if, else, en statements.
Gewijzigd op 01/06/2013 17:38:13 door - Ariën -
Code (php)
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
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
<?php
// We maken een array met onze beste vrienden en familie
$names = array ("vriend 2", "vriend 1", "mama", "papa");
// We soteren de array
sort ($names);
/* We maken een variable aan met de winner erin
het lijkt lastig, maar is opzich redelijk logisch.
We hebben een array waarbij we bijvoorbeeld vriend 1 kunnen oproepen d.m.v. de volgende variable: $names[2]
Maar we moeten een random naam hebben, dus gebruiken we de functie rand (start, eind). Hiermee kunnen we een random nummer
genereren. We gebruiken 0 als start cijfer, omdat de array bij 0 begint. Vervolgens tellen we alle items in de array met de functie count ($names).
Deze geeft ons het aantal items in de array terug, maar hij telt de 0 als een 1. Dit houd in dat je een cijfer krijgt van 4 (terwijl de array 0, 1, 2 en 3 is).
Daarom halen we 1 van het resultaat af count ($names) - 1. Dit allemaal tussen haakjes, zodat we zeker weten dat dit eerst word uitgerekend. (count ($names) - 1) */
$winner = $names[rand (0, (count ($names) - 1))];
// Vervolgens maken we van de naam, die we geselecteerd hebbem, hoofdletters met de functie strtoupper.
$winner = strtoupper ($winner);
// En als laatst knallen we de output naar de browser.
echo $winner;
?>
// We maken een array met onze beste vrienden en familie
$names = array ("vriend 2", "vriend 1", "mama", "papa");
// We soteren de array
sort ($names);
/* We maken een variable aan met de winner erin
het lijkt lastig, maar is opzich redelijk logisch.
We hebben een array waarbij we bijvoorbeeld vriend 1 kunnen oproepen d.m.v. de volgende variable: $names[2]
Maar we moeten een random naam hebben, dus gebruiken we de functie rand (start, eind). Hiermee kunnen we een random nummer
genereren. We gebruiken 0 als start cijfer, omdat de array bij 0 begint. Vervolgens tellen we alle items in de array met de functie count ($names).
Deze geeft ons het aantal items in de array terug, maar hij telt de 0 als een 1. Dit houd in dat je een cijfer krijgt van 4 (terwijl de array 0, 1, 2 en 3 is).
Daarom halen we 1 van het resultaat af count ($names) - 1. Dit allemaal tussen haakjes, zodat we zeker weten dat dit eerst word uitgerekend. (count ($names) - 1) */
$winner = $names[rand (0, (count ($names) - 1))];
// Vervolgens maken we van de naam, die we geselecteerd hebbem, hoofdletters met de functie strtoupper.
$winner = strtoupper ($winner);
// En als laatst knallen we de output naar de browser.
echo $winner;
?>
En als ik array aanpas naar array_push zegt ie did you remember to use array() in your code...
Quote:
En wie zegt dat je dat aan moest passen? Ik raad je aan om de documentatie eens grondig te bekijken...
Kijk eens op php.net/array_push hoe die functie werkt. De eerste example #1 is al vrij duidelijk.
Gewijzigd op 01/06/2013 17:46:07 door - Ariën -
Gezien je vorige fouten met je vorige 'opdracht', begin ik me af te vragen wat voor webserver / php jij gebruikt. Aangezien deze, en de eerder genoemde fouten, nergens op slaan..
als we die volledige cursus doorlopen kunnen 6 van de 20 punten verdienen van ons examen...
Toch wel de moeite om even te doorlopen.
Ik ben het ook beu dat die zo'n fouten geeft maar ik heb het zelf niet in de hand en kan even alle hulp gebruiken :)
Gewijzigd op 01/06/2013 17:51:17 door - Ariën -
Ik weet het is vreselijk maar ik moet door deze laatste oefening. Er moet 100 % voltooid komen staan anders is het bye bye punten :(
Letterlijk vertaald staat er dus:
Ben je vergeten om array_push() in je code te verwerken?
Plaats die functie dus in je code, op de juiste manier.
Gewijzigd op 01/06/2013 17:55:33 door - Ariën -
Toevoeging op 01/06/2013 17:59:36:
GRRRRRRRR!!!!!!!!!!!!!
Het scherm geeft telkens vriend2, papa, mama enzo weer...
Maar de foutmelding blijft!
In de opdracht die je ons liet zien staat niks in over de functie array_push. Ik neem aan dat dat niet je hele opdracht is?
Dat bedoel ik dus dat het nergens opslaat...
Ik moet helemaal geen array_push gebruiken...
Ik ga hier totaal niet uitkomen éh... :(
Het staat er toch echt: "did you remember to use array_push() in your code?"
Waarom denk jij dat het dan juist weer NIET moet?
Gewijzigd op 01/06/2013 18:04:53 door - Ariën -
Terwijl ik dat allemaal doe!
Ik zou, zoals Aar het ook al aangeeft, de functie erin plaatsen en kijken wat er gebeurd. Nog steeds niet opgelost? dan zou ik het probleem bij je leraar neer leggen.. Aangezien er foutmeldingen komen die niet gerelateerd zijn aan de opdracht.
Ik vind het echt niet aangenaam... Ik wil jullie allemaal van harte bedanken voor jullie hulp!
Lieve groetjes, Keke.
Pagina: « vorige 1 2 3 volgende »