Autor Zpráva
lachim15
Profil
Zdravím,
chtěl bych poprosit o radu, jestli by nešlo nějak spojit tyto 3 'mysqli update', které mám hned pod sebou?

Ve zkratce se jedná o změnu výchozí adresy doručení.
// Prohodí v tabulce uložených adres u zákazníka v poli 'default_address' - 'yes' za 'no'.
mysqli_query($pripoj, "UPDATE delivery_others SET default_address='no' WHERE default_address='yes' AND id_client='$id_c'"); 

 // Nastaví novou výchozí adresu doručení v tabulce uložených adres (nastaví v poli 'default_address' hodnotu 'yes')
mysqli_query($pripoj, "UPDATE delivery_others SET default_address='yes' WHERE id='$protect_get_default' AND id_client='$id_c'");

// Aktualizuje u uživatele novou adresu doručení
mysqli_query($pripoj, "UPDATE page_users SET adress='$adress_get',postcode='$postcode_get', door_number='$door_number_get' WHERE id='$id_c'"); 

Tabulky:
delivery_others - nemesisup.cz/files/public/delivery_others.png
page_users - nemesisup.cz/files/public/page_users.png
Kajman
Profil
První dva by šly spojit na úkor čitelnosti (možná i rychlosti), ale osobně bych je nechal takto. Z jakého důvodu to chcete spojovat? Méně dotazů neznamená vždy vyšší rychlost.
lachim15
Profil
Snažím se zmenšit počet dotazů na mysql. Jsem měl zato, že čím méně dotazů, tím rychleji se to provede. Takže jestli by bylo jiné řešení pomalejší, tak to asi nechám takto.
pcmanik
Profil
lachim15:
Je také zlaté pravidlo, optimalizuj veci až sú pomalé :) (Samozrejme nebrať doslovne) Máš v tomto prípade problémy s rýchlosťou?
lachim15
Profil
Eshop se bude teprve spouštět a zatím vše běží rychle - v ostrém provozu se pozná, jak to pojede :D. Jenomže je to "One page" eshop, takže i na úvodní stránce je těch dotazů víc, taky kvůli tomuto důvodu jsem chtěl, aby tam těch dotazů bylo co nejméně :)
Kajman
Profil
Ano počet dotazů je dobré optimalizovat již při programování. Ale takovéto updaty (změna výchozí adresy jedno zákazníka) se neděje tak často, abyste si ničil přehlednost kódu.
lachim15
Profil
To je taky pravda :) nechám to takto. díky za odpovědi

Vaše odpověď

Mohlo by se hodit


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm:

0