![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 102 Pomógł: 0 Dołączył: 21.08.2012 Ostrzeżenie: (0%) ![]() ![]() |
A więc mam taki kod:
Co zrobić, aby cyfra z zakresu 1 - 38 losowała się co 24h? Jak będzie godzina 0.00 to liczba zmienia się sama. Tak samo.. jak zrobić, aby było, np. że cyfra 14 i 17 ma 30% na wylosowanie się? (IMG:style_emoticons/default/smile.gif) |
|
|
![]()
Post
#2
|
|
Grupa: Moderatorzy Postów: 15 467 Pomógł: 1451 Dołączył: 25.04.2005 Skąd: Szczebrzeszyn/Rzeszów ![]() |
cron i zapisuj sobie wynik w pliku.
|
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 1 890 Pomógł: 339 Dołączył: 14.12.2006 Skąd: Warszawa Ostrzeżenie: (0%) ![]() ![]() |
Rozumiem, że poza wylosowaniem, coś z tym numerem dalej robisz - np. zapisujesz w bazie. Bo inaczej to chyba nie ma sensu go losować i zostawiać w pamięci RAM (IMG:style_emoticons/default/snitch.gif)
Masz dwa wyjścia: 1. CRON odpalany co 24 godziny 2. Za każdym razem przy odpaleniu skryptu sprawdzać, czy danego dnia została już wylosowana liczba. Jeśli nie, to najpierw ją losujesz. Jeśli tak, to po prostu odczytujesz. Co do drugiej części pytania: |
|
|
![]()
Post
#4
|
|
Grupa: Zarejestrowani Postów: 102 Pomógł: 0 Dołączył: 21.08.2012 Ostrzeżenie: (0%) ![]() ![]() |
Zastosowanie skryptu jest takie:
- Szczęśliwy numerek w szkole. Jaki numerek wylosuje to osoba z tym numerkiem nie będzie, np. pytana. CRON - nie mam pojęcia jak to zrobić, ogólnie z pisania skryptów jestem dość słaby. Serwer na którym stoi strona szkoły nie ma bazy danych. Propo 25% szans wychodzi tylko dla liczby 1, a jak zrobić, aby było dla liczby 11, a w tym, aby losowało ten zakres 1-38. Ten post edytował mateŁusz 1.10.2012, 14:54:57 |
|
|
![]()
Post
#5
|
|
Grupa: Zarejestrowani Postów: 116 Pomógł: 8 Dołączył: 21.11.2008 Ostrzeżenie: (0%) ![]() ![]() |
to zapisuj do pliku
Cytat 25% szans wychodzi tylko dla liczby 1, a jak zrobić, aby było dla liczby 11, a w tym, aby losowało ten zakres 1-38. a czy szansa na wylosowanie 1, 11 czy 99999 jest rozna?... 38 * 25% = 9.5 czyli Ten post edytował kyku 1.10.2012, 15:03:57 |
|
|
![]()
Post
#6
|
|
Grupa: Zarejestrowani Postów: 102 Pomógł: 0 Dołączył: 21.08.2012 Ostrzeżenie: (0%) ![]() ![]() |
No dobra, teraz kwestia zrobić tak, aby cyfra zmieniała się co 24h.. (IMG:style_emoticons/default/nerdsmiley.png)
|
|
|
![]()
Post
#7
|
|
Grupa: Zarejestrowani Postów: 116 Pomógł: 8 Dołączył: 21.11.2008 Ostrzeżenie: (0%) ![]() ![]() |
cronem:
crontab -e i dopisujesz * 0 * * * php /sciezka/do/skryptu.php >/dev/null 2>&1 |
|
|
![]()
Post
#8
|
|
Grupa: Zarejestrowani Postów: 102 Pomógł: 0 Dołączył: 21.08.2012 Ostrzeżenie: (0%) ![]() ![]() |
Dobra, i tak nie rozumiem nic z tego co piszesz.
Wolę już zlecić komuś, zapłacić i wiedzieć, że będzie działać niż się wkurwiać. |
|
|
![]()
Post
#9
|
|
Grupa: Zarejestrowani Postów: 1 933 Pomógł: 460 Dołączył: 2.04.2010 Skąd: Lublin Ostrzeżenie: (0%) ![]() ![]() |
Moim zdaniem liczba nie musi losować się automatycznie, bo wystarczyłoby, że jak ktoś wejdzie na stronkę to w tym momencie dopiero sprawdza czy liczba nie jest ta sama dłużej niż 24h i wtedy losuje nową. Jako godzinę wyjściową ustalić np. 00:00.
Data ustalenia pierwszej liczby: 2012-10-01 00:00:00, z datą ważności do 2012-10-01 23:59:59, kolejna byłaby od 2012-10-02 00:00:00, itd. Jeśli przez dzień lub dwa nikt by na stronkę nie wchodził to oczywistym jest, że nie wygenerowałoby kolejnej liczby, ale raczej ludzie bezpośrednio w bazie danych tego sprawdzać nie będą? Ogólnie rzecz biorąc wystarczy ustalić datę ważności nowej liczby na dzień dzisiejszy, do godz 23:59:59, jeśli data ważności poprzedniej już wygasła. Myślę, że to dosyć prosta metoda. A co do większej szansy na wylosowanie danej liczby to dodaj wagi liczb, ale wtedy mt_rand się nie sprawdzi, będziesz potrzebował tabeli z liczbami i ich wagami.
takie coś mi do głowy przyszło w związku z losowaniem jednej liczby ze zwiększoną szansą. Ten post edytował b4rt3kk 1.10.2012, 15:34:23 |
|
|
![]()
Post
#10
|
|
Grupa: Zarejestrowani Postów: 116 Pomógł: 8 Dołączył: 21.11.2008 Ostrzeżenie: (0%) ![]() ![]() |
szkoda kasy na cos takiego, trzymaj
Ten post edytował kyku 1.10.2012, 15:28:23 |
|
|
![]()
Post
#11
|
|
Grupa: Zarejestrowani Postów: 102 Pomógł: 0 Dołączył: 21.08.2012 Ostrzeżenie: (0%) ![]() ![]() |
O stary, dzięki wielkie.
Wrzucę to na serwer, aby zobaczyć czy się po godzinie 23.59 zmieni cyfra (IMG:style_emoticons/default/smile.gif) Jakby coś nie działało to napiszę tutaj, jeszcze raz wielkie dzięki (IMG:style_emoticons/default/smile.gif) |
|
|
![]()
Post
#12
|
|
Grupa: Zarejestrowani Postów: 127 Pomógł: 3 Dołączył: 22.04.2012 Skąd: Warszawa Ostrzeżenie: (0%) ![]() ![]() |
no tak ... ale musisz w takim razie uruchamiać go za każdym razem... samo się zmieniać nie będzie.
|
|
|
![]()
Post
#13
|
|
Grupa: Zarejestrowani Postów: 116 Pomógł: 8 Dołączył: 21.11.2008 Ostrzeżenie: (0%) ![]() ![]() |
wystarczy wejść na stronę jeżeli wszystko jest w indexie (a chyba jest)
|
|
|
![]()
Post
#14
|
|
Grupa: Zarejestrowani Postów: 13 Pomógł: 0 Dołączył: 23.01.2011 Ostrzeżenie: (0%) ![]() ![]() |
szkoda kasy na cos takiego, trzymaj
Mógłby mi ktoś przerobić ten skrypt, żeby losował 3 liczby z 15? |
|
|
![]()
Post
#15
|
|
Grupa: Zarejestrowani Postów: 455 Pomógł: 49 Dołączył: 12.04.2010 Ostrzeżenie: (0%) ![]() ![]() |
|
|
|
![]()
Post
#16
|
|
Grupa: Zarejestrowani Postów: 13 Pomógł: 0 Dołączył: 23.01.2011 Ostrzeżenie: (0%) ![]() ![]() |
Niestety liczyłem na tzw. gotowca, wiem, jestem leniem patentowanym, ale nigdy nie zagłębiałem się w PHP, ponieważ nie jest mi aż tak bardzo potrzebne, tylko od czasu do czasu potrzebuję mniejsze skrypty, licząc na gotowce, więc jeśli ktoś byłby chętny zmienić mi ten kod na "gotowo", to bardzo bym prosił. |
|
|
![]() ![]() |
![]() |
Aktualny czas: 22.08.2025 - 14:38 |