Autor | Zpráva | ||
---|---|---|---|
Milan1236000 Profil |
#1 · Zasláno: 10. 7. 2015, 01:41:13
Zdravím,
proč, když mám několik tagů <?php ... ?> v html, se při každém dalším tagu musím pokaždé znovu připojovat k databázi? Myslel jsem, že dokud tam nenapíšu $pripojeni->close(); , spojení se nepřeruší.
|
||
Alphard Profil |
#2 · Zasláno: 10. 7. 2015, 02:01:47
Platnost proměnných se zachovává, připojení k databázi také. Problém bude jinde.
|
||
Milan1236000 Profil |
#3 · Zasláno: 10. 7. 2015, 02:33:31
Alphard:
Aha, mrknu se na to. $vysledek = $pripojeni->query("SELECT * FROM `tabulka` WHERE Id=\"5\""); printf("%s - %s", $vysledek->fetch_object()->Interpret, $vysledek->fetch_object()->Skladba); |
||
Alphard Profil |
#4 · Zasláno: 10. 7. 2015, 02:38:19
Nevím, jaká knihovna je použita, ale tipuji, že se
fetch_object() při opakovaném volání snaží přečíst další (neexistující) záznam.
|
||
Milan1236000 Profil |
Knihovna je mysqli. Je zajímavé, že tohle, i když je to skoro to samé, funguje.
$vysledek = $pripojeni->query("SELECT * FROM `tabulka` WHERE Id=\"5\""); $nadpis = $vysledek->fetch_object(); printf("%s - %s", $nadpis->Interpret, $nadpis->Skladba); |
||
Kubo2 Profil |
#6 · Zasláno: 10. 7. 2015, 07:09:32
Milan1236000:
Takže problém je to, čo uviedol Alphard [#4]. |
||
Joker Profil |
#7 · Zasláno: 10. 7. 2015, 07:39:13
Milan1236000:
„Je zajímavé, že tohle, i když je to skoro to samé, funguje.“ Není to to samé. Jak píše [#4] Alphard: Volání fetch_object() čte další záznam, takže kód v [#5] vypíše dva atributy téhož záznamu, kód v [#3] vypíše atribut Interpret jednoho záznamu, pokusí se načíst další záznam (který zřejmě neexistuje) a vypsat jeho atribut Skladba. |
||
tiso Profil |
#8 · Zasláno: 10. 7. 2015, 08:59:08
Milan1236000: „i když je to skoro to samé“
Je rozdiel medzi: vyber papier s tlačiarne, otoč stránku, prečítaj prvý riadok, otoč stránku, prečítaj druhý riadok vyber papier s tlačiarne, otoč stránku, prečítaj prvý riadok, prečítaj druhý riadok |
||
Milan1236000 Profil |
#9 · Zasláno: 10. 7. 2015, 10:54:47
Díky všem za odpověď. Dobře, chápu, budu si na to muset zvyknout, že to tak prostě je.
Vypadá to, že právě tohle byla ta chyba, kdy se zbytek nezobrazoval. Myslel jsem, že to je přerušením spojení při uzavření tagu <?php ... ?> .
|
||
Časová prodleva: 10 let
|
0