Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> random z arraya- czemu to nie dziala?
pt4siek
post 19.02.2003, 21:27:51
Post #1





Grupa: Zarejestrowani
Postów: 4
Pomógł: 0
Dołączył: 20.01.2003

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


mam skrypt:
<? include("common.php");
mysql_connect($Host, $User, $Pass);
mysql_select_db($DB);
$typ=www;
$result = mysql_query("select thmb from picks where typ='" . $typ . "'");
$r=mysql_fetch_row($result);

$a = count($r)-1;

srand((double)microtime()*1000000);

$randomNo = rand(0,$a);

$opis = $r[$randomNo];

echo "$opis<br>";
echo "$a<br>";

?>
i %$#%$# mnie strzela i nie moge dojsc dlaczego poprawnie nie losuje
w picks mam dwa rozne rzedy z wartoscia thmb=www
a ten raz wywala pierwsza a raz pusta wartosc
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 3)
kurtz
post 20.02.2003, 20:34:24
Post #2





Grupa: Przyjaciele php.pl
Postów: 786
Pomógł: 0
Dołączył: 18.03.2002
Skąd: Wroclaw/Warszawa

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


Cytat
[..]$result = mysql_query("select thmb from picks where typ='" . $typ . "'");
[..]
$opis = $r[$randomNo];  
[..]
i %$#%$# mnie strzela i nie moge dojsc dlaczego poprawnie nie losuje
w picks mam dwa rozne rzedy z wartoscia thmb=www
a ten raz wywala pierwsza a raz pusta wartosc
nie rozumeim skad te nerwy. raz tylko wykonujesz fetch_row wiec pobierasz do $r zaawrtosc jednego wiersza. count($r) zwraca LICZBE_KOLUMN ktore wybrales mysql_query a nie liczbe wierszy - do tego sluzy mysql_num_rows()
wyglada na to ze trzeba wrocic do deski kreslarskiej i od nowa zaprojektowac skrypt - przykro mi.

ps
string poprawnie deklaruje sie otoczajac go np uszami
$typ ="www";
skladnia
$typ = www
oznacza ze zmiennej $typ bedzie przyisana wartosc stalej www.


--------------------
.. make web your home ..
Go to the top of the page
+Quote Post
DeyV
post 20.02.2003, 21:26:29
Post #3





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




Znaczenie lepszym rozwiązaniem jest wyciąganie tylko losowego wiersza z MySQL'a.
Składnia: Select * from table order by RAND() limit 1


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





Grupa: Zarząd
Postów: 3 503
Pomógł: 28
Dołączył: 17.10.2002
Skąd: Wrocław




tylko zeby nie wyszlo cos takiego: http://forum.php.pl/viewtopic.php?p=8951&h...highlight=#8951


--------------------
scanner.info
Warto pamiętać: KISS, DRY
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 Wersja Lo-Fi Aktualny czas: 19.07.2025 - 11:27