Autor | Zpráva | ||
---|---|---|---|
Perry Profil |
#1 · Zasláno: 14. 9. 2008, 12:09:00
Mám podivný problém. Pokud spustím tento dotaz
UPDATE `lide` SET `navstevnost` = (`navstevnost`+ 1) WHERE `ID` = '2'; přímo v PHPmyAdminovi, přičte se skutečně 1. Pokud ten samý dotaz ale spustím ze stránky přes mysql_query(); přičte se 2 nebo 3...... Vůbec to nechápu a jsem z toho úplně blbý. (ten mysql_query proběhne v PHP pouze 1x.. vypisuji si to) |
||
Taps Profil |
#2 · Zasláno: 14. 9. 2008, 12:56:39
Perry
ten mysql_query proběhne v PHP pouze 1x - ..a kolikrát by měl proběhnout ? |
||
Paja Profil |
#3 · Zasláno: 14. 9. 2008, 13:02:43
Taps
třeba, kdyby náhodou proběhl dotaz vícekrát, inkrementace by taky proběhla vícekrát ne? Perry dotaz je správně, chyba musí být někde ve skriptu. |
||
Mastodont Profil |
#4 · Zasláno: 14. 9. 2008, 13:03:08 · Upravil/a: Mastodont
Taps
Podle popisu problému si Perry myslí, že dvakrát nebo třikrát ... |
||
Perry Profil |
#5 · Zasláno: 14. 9. 2008, 13:09:26
Paja
No ale všechno ostatní funguje... a blbne to, i když udělám prázdnou stránku s připojením k DB a jedním mysql_query |
||
Alphard Profil |
#6 · Zasláno: 14. 9. 2008, 13:12:18
nedojde k více aktualizacím stránky?
v tom dotazu chybu nevidím |
||
Paja Profil |
#7 · Zasláno: 14. 9. 2008, 13:12:28 · Upravil/a: Paja
Pokud je tam jenom jedna query a nic jiného, pak musí být ta stránka spuštěna vícekrát. Nebo se ti automaticky refreshuje, jinak to není možné .. toť můj názor
|
||
Perry Profil |
#8 · Zasláno: 14. 9. 2008, 13:28:25
Tak jsem přišel na to, že to zřejmě dělal vložený script v hlavičce.
Měl jsem 2 za sebou script src... a když jsem otočil jejich pořadí, tak to přestalo... to fakt nechápu :/ |
||
nightfish Profil |
#9 · Zasláno: 14. 9. 2008, 13:30:34
Perry
dej si před ten dotaz echo "navstevnost pred: ".mysql_result(mysql_query("select `navstevnost` FROM `lide` WHERE `id` = 2"), 0, 0)."<br>"; // ... tvuj dotaz echo "navstevnost po: ".mysql_result(mysql_query("select `navstevnost` FROM `lide` WHERE `id` = 2"), 0, 0)."<br>"; v případě, že bude rozdíl větší než 1, tak je zřejmé, že se ti tabulka "mění pod rukama", tzn. že existuje (např.) skript, který tu tabulku permanentně aktualizuje... v takovém případě můžeš zkusit lock table, čímž si vynutíš uzamčení tabulky jen pro tvé spojení |
||
Časová prodleva: 16 let
|
0