Autor | Zpráva | ||
---|---|---|---|
yenkee Profil * |
#1 · Zasláno: 2. 6. 2007, 11:31:10
Ahoj, mám velký problém. Fakt už nevím jak na to..
Mám v tabulce 'produkty__vlastnosti' sloupec 'poradi' dva záznamy. Jeden s hodnotou 1, druhý 2. Zkouším je mezi sebou prohodi pomocí následujících příkazů: mysqli_query($_SESSION['mysql'],"UPDATE produkty__vlastnosti SET poradi = '0' WHERE poradi = '2'"); mysqli_query($_SESSION['mysql'],"UPDATE produkty__vlastnosti SET poradi = '2' WHERE poradi = '1'"); mysqli_query($_SESSION['mysql'],"UPDATE produkty__vlastnosti SET poradi = '1' WHERE poradi = '0'"); Vůbec to nefunguje, nevypíše se žádná chybová hláška, v DB se nic neprohodí..já fakt nevím. Připojení je OK. Funkce mysqli_error nic nevypisuje. PHP 5, MySQL 5 |
||
yenkee Profil * |
#2 · Zasláno: 2. 6. 2007, 11:44:05
Dal sem poslední dva do komentáře a provedl se pouze první. A správně!
Pak sem nechal v komentáři jen ten poslední a ten druhý se provedl špatně! Nechal sem tedy provéct pouze druhý příkaz a provedl se dobře.. chápete to??? Já NE. |
||
Michalek Profil |
#3 · Zasláno: 2. 6. 2007, 11:45:26
mysqli_query($_SESSION['mysql'],"UPDATE produkty__vlastnosti SET poradi = '0' WHERE poradi = '2'");
Nastavis zaznamum 0 a mysqli_query($_SESSION['mysql'],"UPDATE produkty__vlastnosti SET poradi = '1' WHERE poradi = '0'"); tady tem samym zaznamum nastavis 1 ne? |
||
yenkee Profil * |
#4 · Zasláno: 2. 6. 2007, 11:50:36
Jo..to funguje.
Ale já mám jeden řádek s hodnotou 'poradi' 1 a druhý s hodnotou 2. Jak je tedy mám prohodit? Chtěl bych aby v prvním byla 2 a v druhém 1. |
||
yenkee Profil * |
#5 · Zasláno: 2. 6. 2007, 12:12:55
Mám takové podezření na PHP. Když totiž provedu tyto příkazy postupně v samostatném souboru, tak je vše OK. Používám ale objekty a tady tyto příkazy se spouští jako metoda objektu. Nemůže být chyba někde tady? Mám takové tušení, jako by se to provedlo dvakrát, i když to mám ve skriptu napsané pouze jednou.
|
||
MzM Profil |
#6 · Zasláno: 4. 6. 2007, 11:15:24
no, nevím, prohazování pořadí v db tímto způsobem se mi zdá minimálně nestandardní... ale může k tomu být dobrý důvod.
řazení opačným směrem se dělá většinou tak, že se řekne order by poradi asc|desc. případné pořadí bych řešil spíš dotazem na ID řádku ve where podmínce, než na pořadí. Nevím, zdá se mi to divoké... |
||
Kajman_ Profil * |
#7 · Zasláno: 5. 6. 2007, 22:00:30
Zkusil bych to možná bez obalujících apostrofů kolem čísel, pokud je ten sloupeček číslo.
|
||
Časová prodleva: 5 měsíců
|
|||
Smajchl Profil * |
#8 · Zasláno: 17. 11. 2007, 13:45:11
nediv se, nejdriv zamenis dvojku za nulu, a pak se divis ze tam ta dvojka neni?
|
||
nightfish Profil |
#9 · Zasláno: 17. 11. 2007, 14:15:28
Smajchl
nediv se, nejdriv zamenis dvojku za nulu, a pak se divis ze tam ta dvojka neni? zamění dvojku za nulu, pak jedničku za dvojku, a pak nulu za jedničku, to je správný postup, takže údiv je na místě... a jak se tak dívám, tak reaguješ v tématu po půl roce, takže zamykám |
||
Časová prodleva: 18 let
|
Toto téma je uzamčeno. Odpověď nelze zaslat.
0