Registrovat    Přihlášení
Domů Odkazy Fórum Ke stažení Web hosting Registrace do katalogů
Přihlásit
Jméno:

Heslo:

Pamatuj si mně



Zapomenuté heslo

Nová registrace
Partner a hosting webu
zserver.cz
Spolupráce
Odkazy
česká sociální síť rexVoX.com
Informace a projekty na rodinné domy naleznete v našem blogu.

Navštívit můžete také pasivní rodinné domy - dřevostavby, kde naleznete informace o pasivních stavbách.



Kategorie a fóra

Prohlížení tohoto vlákna:   1 Anonymní uživatelé





Zkušenosti s se zápisem a vyhledáním v DB při zpracování FEEDu
Pokročilý
Členem od:
23:22 27.2.2007
Skupina:
Registrovaní uživatelé
Příspěvky: 43
Nepřipojen
Zdravím všechny pokročilé,

řeším importní modul XML FEEDu do ZC.
Zjistil jsem zvláštní situaci a nevím jak z ní ven.

Vytvářím strukturu kategorií a na vstupu zjišťuji, zda kategorie se (jménem) již existuje. SELCLT categories_id FROM categories_description WHERE categories_name = "název".
SQL je zjednodušený.

Při prvním průchodu samozřejmě nic neexistuje, tak se mi vrátí výsledek např. takto:

$v = $db->Execute($sql);
echo $v->RecordCount(); // vrati 0

Nechám kategorii zavést a ověřím zavedení načtením ID aktuálního záznamu:
$ID_kategorie = $db->insert_ID(); // vrátí při prvním průchodu 1

Když ale proběhne kód v dalším kroku a výrobek má uvedenou stejnou kategorii, tak mi RecordCount vrátí opět nulu. Stejné je to s testováním $v->EOF. EOF stále hlásí 1.

Testuji na prvních 10 položkách z XML a stále se mi vrací nula v počtu vybraných záznamů a 1 jako potvrzení konce záznamu EOF.

Když script skončí a já se podívám do tabulky, tak tam ale vidím, že jsou kategorie zavedené a pro každou se stejným jménem je vytvořen nový záznam.

Plyne mi z toho, jako by po odeslání SQL dotazu došlo ke zpracování, ale při načtení dalšího dotazu, jako zůstávala nějaká Cache, která podhazuje původní hodnotu místo aktuální. Dá se to někde nasimulovat nebo ověřit?

díky Borek

Zasláno: 19:16 21.6.2021
_________________
Borek
Přenos příspěvku do ostatních aplikací Přenos


Re: Zkušenosti s se zápisem a vyhledáním v DB při zpracování FEEDu
Pokročilý
Členem od:
23:22 27.2.2007
Skupina:
Registrovaní uživatelé
Příspěvky: 43
Nepřipojen
Tak se k mému tématu vracím opět po nějakém času.

Dnes jsem problém vyřešil.
Bylo to cachováním (kešováním) výsledků ať už z MySQL nebo z PHP.
Zkusil jsem do dotazu, který zjišťuje jestli je již kategorie zavedená,
vložit náhodnou část kódu a tím dojde ke skutečnému načtení dat z DB nikoliv z cache.

Tedy provedená úprava vypadá takto:

$RN = rand(); // generuji náhodné číslo např. 123456
$sql = "SELECT categories_id FROM categories_description WHERE categories_name = 'název' /* $RN */";

po vložení náhodného čísla vznikne
$sql = "SELECT categories_id FROM categories_description WHERE categories_name = 'název' /* 123456 */";

Náhodné číslo je v komentáři, takže neovlivní dotaz, ale dotaz je pokaždé jiný a musí se vygenerovat znovu z DB.
A tím se mi vrátí aktuální data.

Takže kdo řešil podobný problém, zde je rada jak na to.

díky Borek

Zasláno: 7.6. 11:41
_________________
Borek
Přenos příspěvku do ostatních aplikací Přenos






Můžete prohlížet témata.
Nemůžete zakládat nová témata.
Nemůžete odpovídat na příspěvky.
Nemůžete editovat Vaše příspěvky.
Nemůžete mazat Vaše příspěvky.
Nemůžete přidávat nové ankety.
Můžete hlasovat v anketách.
Nemůžete připojovat soubory k příspěvkům.
Nemůžete přispívat bez schválení.

[Rozšířené hledání]


Odkazy



Zen-Cart ke stažení

Vyšel nový Zencart 1.5.0

Originální moduly můžete stahovat na
www.zen-cart.com

Reklama
Nejaktivnější autoři
1 Melodic
Melodic
1002997
2 Kozoroh
Kozoroh
2124
3 JardaR
JardaR
1888
4 garden
garden
1419
5 Nismo
Nismo
1389
6 hbxx 1131
7 jandik01
jandik01
1070
8 PeterB
PeterB
1017
9 Dedek
Dedek
990
10 bambulko
bambulko
775