Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> Probrem z "rand"
slepy
post
Post #1





Grupa: Zarejestrowani
Postów: 70
Pomógł: 0
Dołączył: 27.02.2003

Ostrzeżenie: (0%)
-----


Witam mam taki malutki problemik ;]

tak wyglada moj kod:

Kod
<?php

$baner=rand(1,2,3,4);

?>

a kawalek nizej:
Kod
<p>2.<?include("$baner.txt");?></p>

kiedy otiweram strone wyskakuje mi error:
Warning: rand() expects exactly 2 parameters, 4 given in c:apachehtdocsdow.php on line 94
;]
z tego co sie domyslam chodzi oto ze moga byc maxksymalnie 2 teksty do wybotu.
Czy jest mozliwosc zrobienia wiekszej ilosci questionmark.gif
bardzo prosze o pomoc.
Go to the top of the page
+Quote Post
Jabol
post
Post #2





Grupa: Przyjaciele php.pl
Postów: 1 467
Pomógł: 13
Dołączył: 22.02.2003

Ostrzeżenie: (0%)
-----


nie całkiem, rand przyjmuje do dwóch argumntów, pierwszy to najmniejsza liczba a drugi to największa jaką może zwrócić, jeżeli chcesz tak jak teraz to musisz zrobić tak[php:1:f3d816278e]<?php
$banners=array('nazwy', 'bannerów');
$banner=rand(0, sizeof($banners));
include($banners[$banner]);
?>[/php:1:f3d816278e]
Go to the top of the page
+Quote Post
DeyV
post
Post #3





Grupa: Zarząd
Postów: 2 277
Pomógł: 6
Dołączył: 27.12.2002
Skąd: Wołów/Wrocław




Można też tak:
Cytat
Przykład użycia array_rand()
[php:1:11001e0674]<?php
srand ((float) microtime() * 10000000);
$wejscie = array ("Neo", "Morpheus", "Trinity", "Cypher", "Tank");
$losowe_klucze = array_rand ($wejscie, 2);
print $wejscie[$losowe_klucze[0]]."n";
print $wejscie[$losowe_klucze[1]]."n";  
?>[/php:1:11001e0674]


--------------------
"Niezależnie od tego, jakie masz osiągnięcia, ktoś Ci pomaga..."
Go to the top of the page
+Quote Post
Jabol
post
Post #4





Grupa: Przyjaciele php.pl
Postów: 1 467
Pomógł: 13
Dołączył: 22.02.2003

Ostrzeżenie: (0%)
-----


q no tak, trzeba dodać srand na początku. Bez tego otrzymasz chyba zawsze tą samą liczbę. i pamiętaj, żęby inicjować rand'a wartościami losowymi, jak np. microtime()
Go to the top of the page
+Quote Post
Jabol
post
Post #5





Grupa: Przyjaciele php.pl
Postów: 1 467
Pomógł: 13
Dołączył: 22.02.2003

Ostrzeżenie: (0%)
-----


hehe, nikt nie zauważył błędu... sizeof($tablica) zwraca wartości jakby liczył od jednego więc może się pojawić pusty element, co wywoła błąd
Powinno być tak
Cytat
[php:1:6822b40e29]<?php
$banners=array('nazwy', 'bannerów');
$banner=rand(0, (sizeof($banners)-1));
include($banners[$banner]);
?>[/php:1:6822b40e29]
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 20.08.2025 - 08:44