Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [PHP]Zbyt wolny skrypt losowania
-emzetka-
post
Post #1





Goście







Witam. Mam problem ze skryptem losowania. Zrobiłem można powiedzieć "pseudo kod", bo na pewno nie jest to tak jak ma być. Chodzi mi mianowicie o wylosowanie trzech liczb z danego przedziału przy czym żadna z nich nie może być taka sama jak pozostałe. Dane powinny być zamieszczone w tablicy. Mi osobiście udało się to, bo kod działa, jednak nie wiem czemu, ale zależy na jakim serwerze. Na jednym jest wszystko ok, a na innym strona wczytuję się strasznie długo (biały ekran) aż wyświetla się błąd, że za długo musiał oczekiwać w jednej z linii kodu losowania.

Bardzo proszę o podpowiedź jak to powinno wyglądać aby działało szybko i nie sprawiało żadnych problemów ?
Oto kod:
  1. function losuj()
  2. {
  3. $randnum[0] = mt_rand(0, $this->numberofr);
  4.  
  5. do{
  6. $randnum[1] = mt_rand(0, $this->numberofr);
  7. }while($randnum[0] == $randnum[1]);
  8.  
  9. do{
  10. $randnum[2] = mt_rand(0, $this->numberofr);
  11. }while($randnum[2] == $randnum[1] || $randnum[0] == $randnum[2]);
  12.  
  13. return $randnum;
  14. }


Z góry dziękuję za odpowiedzi, pozdrawiam.
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
Zyggmunt
post
Post #2





Grupa: Zarejestrowani
Postów: 53
Pomógł: 0
Dołączył: 28.04.2009

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


Mówi, że gdy włączy przeglądarkę i pierwsze co zrobi to wejdzie na tą stronę z modułem, to nie działa (biały ekran podczas wczytywania, po 80 sek przestaje i ten biały ekran zostaje - nie wyświetla się żaden błąd), jednak gdy wejdzie najpierw na inną podstronę i później wróci do miejsca gdzie jest moduł to działa. Czy to możliwe ? Jeśli tak to jaka może być tego przyczyna ?

Prosiłbym jeszcze o spróbowanie zrobienia tego samego, czyli wyłączyć przeglądarkę, a po włączeniu wejść od razu tutaj: http://oldtimery.com/index.php?option=com_...&Itemid=323.

Czy jest w ogóle możliwe żeby coś było nie tak gdy nie ma najmniejszego błędu ? Nawet po użyciu:
Kod
ini_set( 'display_errors', 'On' );
error_reporting( E_ALL );


Wyślę jeszcze kod szablonu:
Kod
<?php defined('_JEXEC') or die('Restricted access'); ?>
<div id="katalog_module">
<?php for($i=0; $i < 3; $i++) {?>
<div class="blocks">
  <div class="image">
  <?php $image = explode(".", $dane[$i]["image"]);
  $nazwa_obr = $image[0].'_m.'.$image[1];  
  $link = $dane[$i]["link"];
  echo '<a href="'.$link.'"><img src="http://oldtimery.com/images/djcatalog/'.$nazwa_obr.'" /></a>';  
  ?>  
  </div>

  <div class="name">
  <?php $name = $dane[$i]["name"];  
  echo '<a href="'.$link.'"><p>'.$name.'</p></a>';
  ?>
  </div>

  <div class="category">
  <?php $category = $dane[$i]["cat_name"];  
  echo '<p>('.$category.')</p>';  
  ?>
  </div>
</div>

<?php } ?>

</div>


Co o tym sądzicie ?
Go to the top of the page
+Quote Post

Posty w temacie


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

 



RSS Aktualny czas: 15.10.2025 - 10:56