Avatar billede mpj_86 Nybegynder
22. oktober 2004 - 13:02 Der er 9 kommentarer og
1 løsning

Har problemer med en mysql_query

Hej

Nogen der kan få denne mysql_query til at virke?

if($_POST['submit']) {
$navn = addslashes($_POST['navn']);
$adresse = addslashes($_POST['adresse']);
$post_nr = addslashes($_POST['post_nr']);
$by = addslashes($_POST['by']);
$cpr = addslashes($_POST['cpr']);

if ($navn && $adresse && $post_nr && $by && $cpr) {
mysql_query("INSERT INTO kunder (navn,dato,adresse,post_nr,by,cpr) VALUES ('$navn',NOW(),'$adresse','$post_nr','$by','$cpr')") or die (mysql_error());
}
}

Fejl'en den skirver:
You have an error in your SQL syntax. Check the manual that corresponds to your MySQL server version for the right syntax to use near 'by,cpr) VALUES ('test',NOW(),'test','test','test','test')' at l
Avatar billede nikolajdu Nybegynder
22. oktober 2004 - 13:09 #1
pst pst... kald dit felt noget andet end BY - det er et reserveret ord ;-)
Avatar billede nikolajdu Nybegynder
22. oktober 2004 - 13:11 #2
og hjælper det ikke så vis os felternes struktur.
Avatar billede erikjacobsen Ekspert
22. oktober 2004 - 13:11 #3
Eller skriv
  `by`
Avatar billede mpj_86 Nybegynder
22. oktober 2004 - 13:11 #4
Takker, skriv lige et svar..
Avatar billede nikolajdu Nybegynder
22. oktober 2004 - 13:12 #5
kun hvis det hjalp :))
Avatar billede mpj_86 Nybegynder
22. oktober 2004 - 13:13 #6
erikjacobsen skal du også have nogle points for jeg har brugt din måde?
Avatar billede mpj_86 Nybegynder
22. oktober 2004 - 13:14 #7
Men nikolajdu's virker også :)
Avatar billede erikjacobsen Ekspert
22. oktober 2004 - 13:17 #8
Nej tak, jeg samler slet ikke på point.

Der er dem, der mener at man altid skal bruge `....` omkring navne i en mysql-query,
for så behøver man ikke tænke på hvad der er lovligt, reserveret, eller bliver
det en gang.
Avatar billede Slettet bruger
22. oktober 2004 - 13:32 #9
er det ikke det samme at skrive 'by', som at skrive `by`?
Avatar billede Slettet bruger
22. oktober 2004 - 19:15 #10
wicez: Nej. 'by' er en strengkonstant hvorimod `by` er en reference til en tabel eller et felt.

Prøv for eksempel at lave en testtabel, med tre felter: id, tekst1 og tekst2
Smid et par rækker i, hvor du skriver noget i tekst1
Prøv derefter disse queries, og se forskellen på tabellen bagefter hver.

UPDATE tabelnavn SET tekst2=`tekst1`

UPDATE tabelnavn SET tekst2='tekst1'
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