Plaatje vaker laten zien dan het andere plaatje

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Pagina: 1 2 volgende »

Suzanne Brok

Suzanne Brok

05/10/2015 09:32:11
Quote Anchor link
Goede dag.
Onderstaande kom ik niet uit.
Ik moet het ene plaatje vaker laten zien dan het andere plaatje. Bijvoorbeeld het ene plaatje 50% van de keren, andere 20% en overige 10%.
Hoe kan ik dat doen?

Hieronder het script zoals ik het nu heb en dus uitgebreid moet worden met bovenstaande. Ik heb al vanalles bekeken en geprobeerd maar zonder het gewenste resultaat. Zal vast heel makkelijk zijn omdat ik vaak te moeilijk na denkn.

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
// Random Image With Link
function display_random_img($array) {
    $key = rand(0 , count($array) -1);
    $link_url = $array[$key]['url'];
    $alt_tag = $array[$key]['alt'];
    $random_img_url = $array[$key]['img_url'];
    list($img_width, $img_height) = getimagesize($random_img_url);
    return "<a href=\"$link_url\"><img src=\"$random_img_url\" width=\"$img_width\" height=\"$img_height\" alt=\"$alt_tag\" /></a>";
}


// Hier staat de informatie van de plaatjes
$images_array = array(
    array(
        'url' => 'http://g-voetbal.eu/',
        'alt' => 'Suzanne trapt de bal op g-voetbaldag Barendrecht',
        'img_url' => 'http://g-voetbal.eu/test/wp-content/uploads/2013/09/38002_426707400237_3215939_n1.jpg'
    ),
    array(
        'url' => 'http://g-voetbal.eu/wat-is-g-voetbal/',
        'alt' => 'Suzanne lacht tijdens toernooi',
        'img_url' => 'http://g-voetbal.eu/test/wp-content/uploads/2013/09/196192_10150950009280238_1807472408_n.jpg'
    ),
    array(
        'url' => 'http://g-voetbal.eu/mij/',
        'alt' => 'Suzanne trapt de bal tijdens internationaal toernooi',
        'img_url' => 'http://g-voetbal.eu/test/wp-content/uploads/2014/10/1918353_197460475237_6263653_n.jpg'
    )
);


echo display_random_img($images_array);
?>
 
PHP hulp

PHP hulp

29/03/2024 02:10:33
 
Ward van der Put
Moderator

Ward van der Put

05/10/2015 10:07:32
Quote Anchor link
>> Bijvoorbeeld het ene plaatje 50% van de keren, andere 20% en overige 10%.

Hoe kom je dan op 100%? ;-)

Conceptueel krijg je zoiets:

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
<?php
// Percentages/kansen verdelen van 1 t/m 80:
$percentage = mt_rand(1, 80);
if ($percentage <= 50) {
    // Kans 50%
    $image = images_array[0];
}
elseif ($percentage <= 70 {
    // Kans 70% - 50% = 20%:
    $image = images_array[1];
}
else {
    // Restkans 80% - 70% = 10%:
    $image = images_array[2];
}

?>
Gewijzigd op 05/10/2015 10:08:40 door Ward van der Put
 
Ozzie PHP

Ozzie PHP

05/10/2015 10:21:16
Quote Anchor link
Ward van der Put op 05/10/2015 10:07:32:
>> Bijvoorbeeld het ene plaatje 50% van de keren, andere 20% en overige 10%.

Hoe kom je dan op 100%? ;-)

Afbeelding
 
Suzanne Brok

Suzanne Brok

05/10/2015 12:56:51
Quote Anchor link
Dankjewel Ward.
Tja van die 100% zag ik inderdaad. Was typefoutje. Ik snap natuurlijk wel dat het totaal op 100% moet komen.

Toevoeging op 05/10/2015 14:11:26:

Het lukt nog niet helemaal. Hij geeft een foutmelding op lijn 11. Dat is waar images_array[0]; staat.
wat doe ik fout?

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
33
34
<?php
// Percentages/kansen verdelen van 1 t/m 80:
$percentage = mt_rand(1, 80);
if ($percentage <= 50) {
    // Kans 50%
    $image = images_array[0];
}
elseif ($percentage <= 70 {
    // Kans 70% - 50% = 20%:
    $image = images_array[1];
}
else {
    // Restkans 80% - 70% = 10%:
    $image = images_array[2];
}

// Hier staat de informatie van de plaatjes
$images_array = array(
    array(
        'url' => 'http://g-voetbal.eu/',
        'alt' => 'Suzanne trapt de bal op g-voetbaldag Barendrecht',
        'img_url' => 'http://g-voetbal.eu/test/wp-content/uploads/2013/09/38002_426707400237_3215939_n1.jpg'
    ),
    array(
        'url' => 'http://g-voetbal.eu/wat-is-g-voetbal/',
        'alt' => 'Suzanne lacht tijdens toernooi',
        'img_url' => 'http://g-voetbal.eu/test/wp-content/uploads/2013/09/196192_10150950009280238_1807472408_n.jpg'
    ),
    array(
        'url' => 'http://g-voetbal.eu/mij/',
        'alt' => 'Suzanne trapt de bal tijdens internationaal toernooi',
        'img_url' => 'http://g-voetbal.eu/test/wp-content/uploads/2014/10/1918353_197460475237_6263653_n.jpg'
    )
);


echo display_random_img($images_array);
?>
 
- SanThe -

- SanThe -

05/10/2015 14:15:28
Quote Anchor link
Je definieert images_array pas op regel 15.
Dat moet je voor regel 4 doen.
 
Suzanne Brok

Suzanne Brok

05/10/2015 14:23:48
Quote Anchor link
Helaas hij blijft een foutmelding geven. Of ik doe iets helemaal verkeerd.
Ik heb gedaan zoals jij zei. Heb echter heel de code verplaatst. Of moest dat niet?

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
33
<?php
// Hier staat de informatie van de plaatjes
$images_array = array(
    array(
        'url' => 'http://g-voetbal.eu/',
        'alt' => 'Suzanne trapt de bal op g-voetbaldag Barendrecht',
        'img_url' => 'http://g-voetbal.eu/test/wp-content/uploads/2013/09/38002_426707400237_3215939_n1.jpg'
    ),
    array(
        'url' => 'http://g-voetbal.eu/wat-is-g-voetbal/',
        'alt' => 'Suzanne lacht tijdens toernooi',
        'img_url' => 'http://g-voetbal.eu/test/wp-content/uploads/2013/09/196192_10150950009280238_1807472408_n.jpg'
    ),
    array(
        'url' => 'http://g-voetbal.eu/mij/',
        'alt' => 'Suzanne trapt de bal tijdens internationaal toernooi',
        'img_url' => 'http://g-voetbal.eu/test/wp-content/uploads/2014/10/1918353_197460475237_6263653_n.jpg'
    )
);

// Percentages/kansen verdelen van 1 t/m 80:
$percentage = mt_rand(1, 80);
if ($percentage <= 50) {
    // Kans 50%
    $image = images_array[0];
}
elseif ($percentage <= 70 {
    // Kans 70% - 50% = 20%:
    $image = images_array[1];
}
else {
    // Restkans 80% - 70% = 10%:
    $image = images_array[2];
}

echo $percentage ($images_array);
?>

</body>
</html>

Hij geeft nu de foutmelding op $image = images_array[0];
 
- SanThe -

- SanThe -

05/10/2015 14:25:41
Quote Anchor link
En wat is de exacte foutmelding?
 
Suzanne Brok

Suzanne Brok

05/10/2015 14:31:47
Quote Anchor link
Dit is de exacte foutmelding:
Parse error: syntax error, unexpected '[' in D:\wamp\www\IWP\Opdracht13.php on line 29
 
- SanThe -

- SanThe -

05/10/2015 14:33:49
Quote Anchor link
$image = images_array[0];

Zie ik ook nu pas maar je mist de $:
$image = $images_array[0];
 
Suzanne Brok

Suzanne Brok

05/10/2015 14:44:27
Quote Anchor link
Oops zie ik nu ook inderdaad.
Aangepast nu maar helaas nog steeds een foutmelding :(
Dit keer: syntax error, unexpected '{' in D:\wamp\www\IWP\Opdracht13.php on line 30
Dat is bij: } elseif ($percentage <= 70 {
 
- SanThe -

- SanThe -

05/10/2015 14:50:34
Quote Anchor link
elseif ($percentage <= 70 {

mist een )
elseif ($percentage <= 70) {
 
Suzanne Brok

Suzanne Brok

05/10/2015 14:56:53
Quote Anchor link
Dankjewel San The. Ik ben erachter dat ik slordig ben. IK moet echt beter opletten met de $ en de afsluiting en opening.

Hij doet het nog niet helemaal maar ik zoek het nog wel verder uit. Mocht het niet lukken horen jullie het.
Nu even rust nemen. Ik kan het even niet meer zien haha.
 
Pieter R

Pieter R

05/10/2015 15:09:57
Quote Anchor link
Klopt regel 32 wel?
-> echo $percentage ($images_array);
Moet dat niet zijn:
-> echo $images;
Gewijzigd op 05/10/2015 15:11:29 door Pieter R
 
Suzanne Brok

Suzanne Brok

05/10/2015 15:16:39
Quote Anchor link
lijkt mij dat regel 32 $images_array moet zijn aangezien er nergens $images staat. Maar hij doet het nog steeds niet.
Geeft nu deze foutmelding: Array to string conversion in D:\wamp\www\IWP\Opdracht13.php on line 37

IK ga nu echt even relaxen. Misschien dat ik daarna de fout wel zie.
 
Pieter R

Pieter R

05/10/2015 15:26:22
Quote Anchor link
Het moet inderdaad $image zijn, dus zonder 's'
En een array echo-en werkt inderdaad niet.
En als je doet -> print_r ($image);
Wat krijg je dan?
 
Suzanne Brok

Suzanne Brok

06/10/2015 18:17:47
Quote Anchor link
Helaas nog steeds een foutmelding. syntax error, unexpected '$image' (T_VARIABLE) in D:\wamp\www\IWP\Opdracht13.php on line 37
Dat is bij print_r $image;

Mijn code is nu. Zal wel iets heel stoms vergeten zijn.

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
33
<?php
// Hier staat de informatie van de plaatjes
$images_array = array(
    array(
        'url' => 'http://g-voetbal.eu/',
        'alt' => 'Suzanne trapt de bal op g-voetbaldag Barendrecht',
        'img_url' => 'http://g-voetbal.eu/test/wp-content/uploads/2013/09/38002_426707400237_3215939_n1.jpg'
    ),
    array(
        'url' => 'http://g-voetbal.eu/wat-is-g-voetbal/',
        'alt' => 'Suzanne lacht tijdens toernooi',
        'img_url' => 'http://g-voetbal.eu/test/wp-content/uploads/2013/09/196192_10150950009280238_1807472408_n.jpg'
    ),
    array(
        'url' => 'http://g-voetbal.eu/mij/',
        'alt' => 'Suzanne trapt de bal tijdens internationaal toernooi',
        'img_url' => 'http://g-voetbal.eu/test/wp-content/uploads/2014/10/1918353_197460475237_6263653_n.jpg'
    )
);

// Percentages/kansen verdelen van 1 t/m 80:
$percentage = mt_rand(1, 80);
if ($percentage <= 50) {
    // Kans 50%
    $image = $images_array[0];
}
elseif ($percentage <= 70){
    // Kans 70% - 50% = 20%:
    $image = $images_array[1];
}
else {
    // Restkans 80% - 70% = 10%:
    $image = $images_array[2];
}

print_r $image;
?>
 
Pieter R

Pieter R

06/10/2015 18:23:10
Quote Anchor link
En met haakjes? -> print_r ($image);
 
Suzanne Brok

Suzanne Brok

06/10/2015 19:10:02
Quote Anchor link
Helaas. Hij geeft nu het volgende als uitvoer, maar ik moet het plaatje laten zien: Array ( => http://g-voetbal.eu/ [alt] => Suzanne trapt de bal op g-voetbaldag Barendrecht [img_url] => http://g-voetbal.eu/test/wp-content/uploads/2013/09/38002_426707400237_3215939_n1.jpg )
 
Marthijn Buijs

Marthijn Buijs

06/10/2015 19:11:10
Quote Anchor link
Gebruik $image['img_url']
 
Suzanne Brok

Suzanne Brok

06/10/2015 19:30:34
Quote Anchor link
Nope helaas werkt niet. Krijg nog steeds dezelfde uitvoer.
 
Pieter R

Pieter R

06/10/2015 19:53:50
Quote Anchor link
Met het volgende krijg de gegevens voor je plaatje uit de verschillende arrays:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
echo $image['url'];
echo '<br>';
echo $image['alt'];
echo '<br>';
echo $image['img_url'];

Die moeten vervolgens weer in de html geplaatst worden.
Gewijzigd op 06/10/2015 20:01:44 door Pieter R
 

Pagina: 1 2 volgende »



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.