Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [MySQLi]Optymalizacja
Kubik93
post
Post #1





Grupa: Zarejestrowani
Postów: 36
Pomógł: 0
Dołączył: 20.12.2019

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


Cześć wszystkim ! (IMG:style_emoticons/default/smile.gif)

Mam tabele wyników generowaną z bazy. Każdy użytkownika może przenieść daną pozycję do swojej tabeli (korzystam z AJAXA - bez przeładowania strony (IMG:style_emoticons/default/smile.gif) )
Aktualnie jestem na etapie blokowania buttona tak aby podczas generowania wyników skrypt blokował buttony wierszy, które dany użytkownik ma w swojej tabeli.

Wiem, że mogę przy każdym generowaniu wiersza łączyć się z tabelą i sprawdzać czy dany wiersz znajduje się w bazie użytkownika aczkolwiek po np. 50 wierszach serwer będzie otrzymywać 50 zapytań na raz. przy 50 użytkownikach mamy 2500 zapytań....

Ktoś ma pomysły jak zoptymalizować dany problem?

Dzięki z góry!
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
Kubik93
post
Post #2





Grupa: Zarejestrowani
Postów: 36
Pomógł: 0
Dołączył: 20.12.2019

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


Ps.
  1. $have_in_mt_c = 'style="display: nonce;"';


tutaj jeszcze była literówka. Innych błędów nie znalazłem podczas naprawy opóźnienia (IMG:style_emoticons/default/smile.gif)

Jeśli chodzi o optymalizację to przed pętlą wyciągnąłem id z tablicy assocjacyjnej i wpychałem dane do nowej tablicy:

  1. $check_mytable = 'SELECT id FROM '.$my_id.'mytable';
  2. $result_conect_mytable = mysqli_query($db_mytable, $check_mytable);
  3. $how_many_mt_results = mysqli_num_rows($result_conect_mytable);
  4.  
  5.  
  6. $array_my_table_id = [];
  7.  
  8. for($i=1;$i<=$how_many_mt_results;$i++){
  9. $mytable_row = mysqli_fetch_assoc($result_conect_mytable);
  10. echo $mytable_row['id'];
  11. array_push($array_my_table_id, $mytable_row['id']);
  12. }


a później w pętli sprawdzałem pętlą for czy też id z głównej tablicy == id z nowej tablicy. Jeśli tak to przypisz display: block/none i break tak by nie sprawdzac kolejnych Id.

  1. for($k = 0; $k <=$how_many_mt_results; $k++){
  2. if($row['id']==$array_my_table_id[$k]){
  3. $have_in_mt_a = 'style="display: none;"';
  4. $have_in_mt_c = 'style="display: block;"';
  5. break;
  6. }else{
  7. $have_in_mt_a = 'style="display: block;"';
  8. $have_in_mt_c = 'style="display: none;"';
  9. }


Czy teraz będzie wydajnie (IMG:style_emoticons/default/biggrin.gif) ?


Go to the top of the page
+Quote Post

Posty w temacie
- Kubik93   [MySQLi]Optymalizacja   12.01.2020, 17:38:50
- - Pyton_000   Nie bardzo rozumiem jaki masz problem. Pobierasz s...   12.01.2020, 19:57:08
- - Kubik93   A to spoko. Myślałem, że to mi będzie korkować ser...   13.01.2020, 19:06:32
- - nospor   A jak ty odpalasz ten kod? To jest jakis AJAX dla ...   13.01.2020, 19:19:18
- - Kubik93   Mam tabele danych "ogólną" w sqlu. Ajaxe...   13.01.2020, 19:59:09
- - nospor   Czyli jesli dobrze zrozumialem: powiedzmy, ze masz...   13.01.2020, 20:10:18
- - Kubik93   Dobra to postaram się opisać wszystko jak najbardz...   13.01.2020, 20:19:01
- - nospor   Dalej nie kumam. Kod, ktory podales w poscie nr 3 ...   13.01.2020, 20:24:04
- - Kubik93   3 post to kod z generowanej strony który odpala si...   13.01.2020, 20:29:46
- - nospor   To nie ogarniam skad ci sie to opoznienie niby bie...   13.01.2020, 20:32:01
- - Kubik93   [PHP] pobierz, plaintext for ($i = 1; $i <=...   13.01.2020, 20:39:05
- - nospor   Czyli styl dla button nadajesz od razu, wiec nadal...   13.01.2020, 20:44:09
- - Kubik93   Opóźnienie naprawione, jakaś alternatywa dla rozwi...   13.01.2020, 20:50:12
- - nospor   To napisz jak naprawiles bo niezmiernie mnie to ci...   13.01.2020, 20:52:55
- - Kubik93   Hah a późnienie było spowodowane, że w ccsie miałe...   13.01.2020, 20:56:23
- - trueblue   Ciekawe jak to możliwe, skoro wstawiasz je jako st...   13.01.2020, 21:39:57
- - Kubik93   Ps. [PHP] pobierz, plaintext $have_in_mt_c = 'styl...   14.01.2020, 18:45:02
- - nospor   jesli w my_table bedziesz mial milion rekordow to ...   15.01.2020, 10:34:13
- - Kubik93   Okay.. [PHP] pobierz, plaintext $check_id_mytable...   16.01.2020, 17:39:31
- - trueblue   Chyba tak. https://stackoverflow.com/a/28302993   16.01.2020, 18:02:06
- - Kubik93   No już wszystko zrobione. Nie będę zakładać noweg...   16.01.2020, 19:38:50
- - mmmmmmm   Jeśli założysz indeks, to dodawanie kolejnych nowy...   17.01.2020, 09:00:22


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 Aktualny czas: 16.10.2025 - 14:18