Pomoc - Szukaj - U¿ytkownicy - Kalendarz
Pe³na wersja: [PHP][MYSQL]Zawieszanie sie bazy mysql
Forum PHP.pl > Forum > Przedszkole
yalus
witam

struktura mojej stronki sklada sie z dwoch plikow:

1 - index.php
2 - global.php


plik index.php:

  1. <?php
  2.  
  3. include('common/global.php');
  4.  
  5. $link = mysql_connect("serwer", "user", "psw")
  6. or die ("Could not connect to MySQL (db_connect)");
  7.  
  8. mysql_select_db ("database")
  9.  or die ("Could not select database (db_connect)");
  10.  
  11.  
  12. <body>";
  13.  
  14. if (!isset($_GET['options']))
  15. {
  16.  echo login('','');
  17. }
  18. else
  19. {
  20.  
  21. switch ($_GET['options']) {
  22.  
  23. case 'sprawdzone':
  24.  
  25.  echo sprawdzone($_GET['mobile_number'], $_GET['init'], $_GET['status'], $_GET['appNumber']);
  26. break;
  27. }
  28.  
  29. };
  30.  
  31. echo "</body></html>";
  32.  
  33. mysql_close($link);
  34.  
  35. ?>



plik global.php:
w pliku tym znajduja sie definicje stalych i wszystkie funkcje
m.inn znajduje sie taka funkcja:

  1. <?php
  2. function sprawdzone($mobileNumber,$init,$status,$appNumber)
  3. {
  4.  
  5. $zapytanie = "insert into tblcheckedtoday SET
  6. mobile_number='$mobileNumber',
  7. init='$init',
  8. status='$status',
  9. date='".date("Y-m-d H:i:s")."'";
  10.  $result = mysql_query($zapytanie) or die ("Could not select database (sprawdzone1)");
  11.  
  12.  
  13. $zapytanie= "UPDATE tblsettings, tblmain SET
  14. tblmain.status='$status',
  15. tblsettings.agreement_number='$appNumber',
  16. tblsettings.date_of_check='".date("Y-m-d")."'
  17. WHERE tblsettings.mobile_number=tblmain.mobile_number and tblsettings.mobile_num
    ber='$mobileNumber'"
    ;
  18.  $result = mysql_query($zapytanie) or die ("Could not select database (sprawdzone2)");
  19.  
  20. }
  21. ?>



wydaje mi sie ze wszystko jest jasne, tzn w zaleznosci jaki parametr jest przekazany do pliku index.php za pomoca zmiennej options to taka jest wykonywan funkcja z pliku global.php

najczesciej przekazywany jest parametr 'sprawdzone' i wykonywane sa dwa zapytania do bazy zawarte w funkcji sprawdzone() a w ciagu godziny funkcja ta wywolana jest kilka set razy - i tu jest problem
serwer mysql siada pojawia sie komunikat:
user has exceeded the 'busy_time' resource (current value: 600000000)

czy jest jakas mozliwosc aby temu zaradzic?
Cysiaczek
nazwa.pl ?

Daj przed ka¿dym zapytaniem logowanie czasu wykonania (poprzez microtime(1)) i zobaczysz tym samym, ile zajmuje pojedynczy request.

Pozdrawiam
yalus
tak nazwa.pl, a skad ten domysl czy na innych serwerach jest lepiej?



o co do logowania to masz na mysli cos takiego:

  1. <?php
  2. function sprawdzone($mobileNumber,$init,$status,$appNumber)
  3. {
  4.  
  5. $time_start = microtime();
  6.  
  7.  
  8. $zapytanie = "insert into tblcheckedtoday SET
  9. mobile_number='$mobileNumber',
  10. init='$init',
  11. status='$status',
  12. date='".date("Y-m-d H:i:s")."'";
  13.  $result = mysql_query($zapytanie) or die ("Could not select database (sprawdzone1)");
  14.  
  15.  
  16. $zapytanie= "UPDATE tblsettings, tblmain SET
  17. tblmain.status='$status',
  18. tblsettings.agreement_number='$appNumber',
  19. tblsettings.date_of_check='".date("Y-m-d")."'
  20. WHERE tblsettings.mobile_number=tblmain.mobile_number and tblsettings.mobile_num
    ber='$mobileNumber'"
    ;
  21.  $result = mysql_query($zapytanie) or die ("Could not select database (sprawdzone2)");
  22.  
  23. }
  24.  
  25.  
  26. $time_end = microtime();
  27.  
  28. $time = $time_end - $time_start;
  29. ?>


aha jeszcze jedno zauwazylem ze problem ten pojawia sie znacznie czesciej jak zamieszcze na koncu pliku index.php taka linike:
  1. <?php
  2. mysql_close($link);
  3. ?>
nitro18
daj:
Kod
mysql_close();


a zamknie aktywne po³±czenie z baz± mysql
yalus
juz doszedlem do tego co sie dzieje
na serwerach nazwa.pl mam tylko 600sec na godzine na wykonywania zapytañ liczone na bazê
To jest wersja lo-fi g³ównej zawarto¶ci. Aby zobaczyæ pe³n± wersjê z wiêksz± zawarto¶ci±, obrazkami i formatowaniem proszê kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.