Avatar billede allandk Nybegynder
20. juni 2013 - 20:00 Der er 8 kommentarer og
1 løsning

Hjælp til UPDATE/REPLACE med to WHERE-klausuler ønskes

Er det muligt at lave en udgave af denne, som altså virker:

UPDATE theme
SET theme_chosen = '0' WHERE theme_chosen = '1'
AND theme_chosen='1' WHERE theme_name ='$theme_name'

Tabel:

theme_id | theme_name | theme_chosen
AI            fx red    0 eller 1

Jeg bruger alternativ-knapper til at vælge og når man klikker på Gem-knappen skulle den gerne nulstille det tidligere og indsætte det nye.

Kan nogen hjælpe med det?
Avatar billede arne_v Ekspert
20. juni 2013 - 22:02 #1
2 x SQL:

UPDATE theme SET theme_chosen = '0' WHERE theme_chosen = '1'


UPDATE theme SET theme_chosen = '1' WHERE theme_name = '$theme_name'

?
Avatar billede allandk Nybegynder
20. juni 2013 - 23:26 #2
Øv, hvor enkelt. Mange tak.
Avatar billede arne_v Ekspert
20. juni 2013 - 23:52 #3
Husk at bundle begge i en enkelt transaction hvis det skal vaere atomic.
Avatar billede arne_v Ekspert
20. juni 2013 - 23:52 #4
og et svar
Avatar billede allandk Nybegynder
21. juni 2013 - 00:40 #5
Som i:

$sqlThemea = "UPDATE theme SET theme_chosen = '0' WHERE theme_chosen = '1'";
$sqlThemeb = "UPDATE theme SET theme_chosen = '1' WHERE theme_name = '$theme_name'";
   
$resultTheme=mysql_query($sqlThemea) or die(mysql_error());
$resultTheme=mysql_query($sqlThemeb) or die(mysql_error());

?
Avatar billede arne_v Ekspert
21. juni 2013 - 00:45 #6
Avatar billede allandk Nybegynder
21. juni 2013 - 01:06 #7
Avatar billede arne_v Ekspert
21. juni 2013 - 01:12 #8
Nej - de har ikke faaet den dokumenteret, men det andet link bruger ogsaa den foerste metode.
Avatar billede allandk Nybegynder
21. juni 2013 - 01:13 #9
Tak for natlæsning. Jeg følger op med spørgsmål i morgen, hvis du gider mere.
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester