Zobacz temat
User has exceeded the 'max_questions'
|
|
maciequs |
Dodany dnia 23.06.2008 20:41:09
|
Przedszkolak Postów: 4 Data rejestracji: 23.06.2008 20:23 |
A dokładniej: User 'ktostam_baza' has exceeded the 'max_questions' resource php (200000) czyli zapytan limit jest 200 tys. to sporo Ten error wyświetla mi się od pewnego czasu gdy próbuje zalogować się na konto z uprawnieniami administratora i/lub superadministratora (na innych śmiga okej). Nie wiem co jest grane. Już tydzień z tym walcze. Na forum nie znalazłem odpowiedzi. (gdy się loguję to zacina się chyba w setuser.php) ale głowy nie dam. Jeżeli limit kończy się po 200 tys zapytań to co za beznadziejna pętla musi wywoływać 200 tys zapytań... aż do wyczerpania limitu. Już nie śnię po nocach tylko w głowie śmigam cały kod fusiona i nie doszedłem jak narazie co może powodować ten błąd. Proszę o pomoc Oto mój plik setuser.php: <?php $from=$_SERVER['HTTP_REFERER']; require_once "maincore.php"; if (isset($_REQUEST['logout']) && $_REQUEST['logout'] == "yes") { header("P3P: CP='NOI ADM DEV PSAi COM NAV OUR OTRo STP IND DEM'"); setcookie("fusion_user", "", time() - 7200, "/", "", "0"); setcookie("fusion_lastvisit", "", time() - 7200, "/", "", "0"); $result = dbquery("DELETE FROM ".$db_prefix."online WHERE online_ip='".USER_IP."'"); } else { if (isset($_COOKIE['fusion_user'])) { $cookie_vars = explode(".", $_COOKIE['fusion_user']); $user_pass = (preg_match("/^[0-9a-z]{32}$/", $cookie_vars['1']) ? $cookie_vars['1'] : ""); $user_name = preg_replace(array("/\=/","/\#/","/\sOR\s/"), "", stripinput($user)); if (dbcount("(user_id)", "users", "user_name='".$user_name."' AND user_password='".md5($user_pass)."'")) { $result = dbquery("DELETE FROM ".$db_prefix."online WHERE online_user='0' AND online_ip='".USER_IP."'"); } } } redirect($from); ob_end_flush(); ?> Jeżeli uznacie, że będziecie potrzebowali innych plików to podeślę. Edytowane przez maciequs dnia 23.06.2008 20:46:13 |
|
|
Wścibski Gość |
Dodany dnia 24.11.2024 15:54:49
|
Pan Kontekstualny Postów: n^x Data rejestracji: Zawsze |
|
IP: localhost | |
Grzes |
Dodany dnia 23.06.2008 21:11:21
|
Zaawansowany Postów: 1656 Pomógł: 42 Data rejestracji: 28.04.2005 20:28 |
To nie ten plik. Ciężko jest powiedzieć co to powoduje. Spróbuj zastosować ten dodatek: http://www.php-fu...&pid=98523 Będzie Ci jako administratorowi pokazywać liczbę zapytań w stopce na każdej podstronie. Będziesz mógł się zorientować gdzie najwięcej zapytań jest wykonywanych. Jeśli to jednak się wyświetla tylko i wyłącznie podczas logowania przez administratora to jeszcze przyjrzeć wypadało by się plikowi maincore.php. ps. to bardzo stara wersja fusiona, ze względów bezpieczeństwa postaraj się o aktualizacje do najnowszej wersji. Edytowane przez Grzes dnia 23.06.2008 21:11:55 Często najmądrzejszą odpowiedzią jest milczenie
|
|
|
Pieka |
Dodany dnia 23.06.2008 21:19:14
|
Postów: 19882 Pomógł: 767 v7.02.03 Data rejestracji: 23.02.2005 18:12 |
Wylacz panele lub inne dodatki, ktore sa widoczne z poziomu SA. Jesli nie potrafisz na stronie, to za pomoca phpMyAdmin. Kolega ma EP/EF, czy czystego PHP-Fusion'a?
Edytowane przez Pieka dnia 23.06.2008 21:20:28 Jestem jaki jestem
|
|
|
maciequs |
Dodany dnia 23.06.2008 22:50:52
|
Przedszkolak Postów: 4 Data rejestracji: 23.06.2008 20:23 |
To jest czysty fusion. trochę go modyfikowałem ale nie występowały takie problemy wcześniej. A gdyby coś takiego stało się po dodaniu przeze mnie jakiejs modyfikacji to raczej bym zauważył... :/ ale kto wie. A propos wyłączneia dodatkow widocznych z iADMIN to nic takiego nie ma tzn. np. na stronie glownej nie ma dodatkowych paneli dla administratorow. |
|
|
Pieka |
Dodany dnia 23.06.2008 22:53:24
|
Postów: 19882 Pomógł: 767 v7.02.03 Data rejestracji: 23.02.2005 18:12 |
maciequs napisał/a: ..A propos wyłączneia dodatkow widocznych z iADMIN to nic takiego nie ma tzn. np. na stronie glownej nie ma dodatkowych paneli dla administratorow. Jesli w/w zachowanie ma miejsce TYLKO w przypadku logowania jako SA, to musisz miec cos na stronie widoczne TYLKO dla SA. Cuda sie zdarzaja, ale nie liczylbym na to w tym przypadku. Jestem jaki jestem
|
|
|
maciequs |
Dodany dnia 23.06.2008 23:37:09
|
Przedszkolak Postów: 4 Data rejestracji: 23.06.2008 20:23 |
Błąd został pokonany :) To paskudztwo to powodowało: $i = 0; while ($data = dbarray(dbquery("SELECT * FROM ".$db_prefix."buddys WHERE buddy_to = ".$userdata['user_id']." AND buddy_status != 0 AND buddy_status !=2"))) { $data_check = dbarray(dbquery("SELECT * FROM ".$db_prefix."buddys WHERE buddy_to = ".$data['buddy_from']." AND buddy_from = ".$userdata['user_id']."")); if ($data_check['buddy_id'] != true) $i++; } if ($i > 0) $i = "<font color='red'>".$i."</font>"; to z modółu przyjaciół. (ale mi przyjaciel :D) Co tu jest nie tak? Generalnie zauważyłem że jak nikt nie ma nic w tabeli przyjaciele to jest okej ale jak juz kogos ma to klapa :) Edytowane przez maciequs dnia 23.06.2008 23:37:46 |
|
|
Grzes |
Dodany dnia 23.06.2008 23:52:11
|
Zaawansowany Postów: 1656 Pomógł: 42 Data rejestracji: 28.04.2005 20:28 |
Nie mam teraz nigdzie zainstalowanego dodatku przyjaciół ale rzeczywiście ten kod jest przyjazny :P Spróbuj tego: Jeśli się nie pomyliłem, zaznaczam jeśli to będzie teraz dobrze. Jednym zapytaniem zliczyć powinno liczbę przyjaciół. Tam jest błąd bo ten kod w kółko robił to samo (błąd w warunku dla pętli while). Jakby co to jutro zainstaluje sobie przyjaciół i poprawie to. Często najmądrzejszą odpowiedzią jest milczenie
|
|
|
maciequs |
Dodany dnia 24.06.2008 00:39:04
|
Przedszkolak Postów: 4 Data rejestracji: 23.06.2008 20:23 |
Dzięki pomogło |
|
Przejdź do forum: |