Avatar billede bacce.dk Nybegynder
25. januar 2006 - 11:44 Der er 8 kommentarer og
1 løsning

update mysql driller

Hejsa

Jeg sider med et lille problem i en update.

jeg har lavet følgende....
$query="update vare ";
$query .="set antal = antal+$row[antal] ";
$query .="where `id`='$row[vare_id]'";

antal og $row[antal] indeholder begge et tal.
den crasher lige netop i denne, men hvis jeg smider den op som
$query="update vare ";
$query .="set antal = antal+2 ";
$query .="where `id`='$row[vare_id]'";

virker den fint...
hvad er det der laver den ballade ?
Avatar billede bromer Nybegynder
25. januar 2006 - 11:58 #1
Det kan være at din værdi ikke kommer rigtigt ind i strengen. Prøv at print $query før du smider den mod databasen. Hvis det ikke ser helt forkert ud kan du jo smide den her så kan vi se på den.
Avatar billede sone Nybegynder
25. januar 2006 - 12:05 #2
$query .="where `id`='$row[vare_id]'";
Hvis feltet id i databasen er it tal, så skal du ikke have ' omkring.

Men lav en
  echo $query;
og se om SQL'en er som du forventer.
Avatar billede olebole Juniormester
25. januar 2006 - 12:13 #3
<ole>

Det har ikke noget at gøre med gåseøjne om tal eller ej  :)

Til gengæld tyder det på, variablen $row[antal] indeholder en streng. Prøv i stedet:
    $query .="set antal = antal+intval($row[antal]) ";


/mvh
</bole>
Avatar billede wetdog Nybegynder
25. januar 2006 - 12:23 #4
eller:

$query="update vare ";
$query .="set antal = antal+".$row[antal];
$query .="where id=".$row[vare_id];
Avatar billede sone Nybegynder
25. januar 2006 - 12:43 #5
Det er ligegyldigt om $row[antal] er tal eller streng, for der skal ikke udføres en regneoperation i PHP, men dattes en streng (som en database skal tolke)...
Avatar billede olebole Juniormester
25. januar 2006 - 13:47 #6
- dohhh ... det er da mig, der vrøvler ... sorry  :)
Avatar billede fireflashx Nybegynder
25. januar 2006 - 15:20 #7
Er ikke sikker, men prøv følgende:
$query = "update vare ";
$query .= "set antal = antal+".$row[antal];
$query .= " where `id` = '$row[vare_id]'";
Avatar billede bacce.dk Nybegynder
25. januar 2006 - 21:57 #8
hmm fejlen er fundet......

det var egentlig ikke min update der fejlede, men et connect til databasen...
Det var connectet, bare til den forkerte DB...
Det er åbenbart nemt at overse når man arbejder i flere db'er på samme tid...

Beklager at jeg skulle bruge jeres tid og siger tak for forsøget til jer alle
Avatar billede bacce.dk Nybegynder
25. januar 2006 - 21:59 #9
Grunden til at jeg ikke kunne se en egentlig fejl, var at jeg arbejder i classer, og denne update lå i 3. funktion og derfor ikke smed fejlen med tilbage til den funktion jeg egentlig benyttede. Hvorfor den ikke gjorde det vej jeg dog ikke
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
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

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