WN

WN (https://www.wn.se/forum/index.php)
-   Serversidans teknologier (https://www.wn.se/forum/forumdisplay.php?f=4)
-   -   mySQL problem ? (https://www.wn.se/forum/showthread.php?t=37452)

youheardit 2009-06-16 13:35

Hej gott folk :)
Har ett litet problem med att köra insert into i mySQL!

Så här ser koden ut:
Kod:

$con = mysql_connect("localhost","peter","abc123");
if (!$con)
 *{
 *die('Could not connect: ' . mysql_error());
 *}

mysql_select_db("my_db", $con);

$sql="INSERT INTO products (name, desc, points, img)
VALUES
('".$_POST['name']."','".$_POST['desc']."','".$_POST['points']."','".$_POST['img']."')";

if (!mysql_query($sql, $con))
 *{
 *die('Error: ' . mysql_error());
 *}

echo "Added!";
}

och får error:
Kod:

Error: 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 '2, 3, 4) VALUES ('1','2','3','4')' at line 1
Men detta funkar till en annan tabell men inte annars!

Kod:

$result = mysql_query("INSERT INTO table (1, 2, 3, 4)
VALUES ('".$_POST['1']."', '".$_POST['2']."', '".$_POST['3']."', '".$_POST['4']."')");

Mysql Connect är längst upp på sidan!

Tacksam för svar!

//Philip Andersson :)

allstars 2009-06-16 13:46

har du fältnamn som är siffror?
Det är kanske det som är problemet.
prova annars
Kod:

INSERT INTO table (`1`, `2`, `3`, `4`)

youheardit 2009-06-16 13:51

Citat:

Originally posted by allstars@Jun 16 2009, 13:46
har du fältnamn som är siffror?
Det är kanske det som är problemet.
prova annars
Kod:

INSERT INTO table `1`, `2`, `3`, `4`

ojojojoj!!! den får jag ju inte lov och missa! Tack så mycket allstars!
:D
Problemet löst!
Ha det bra!
//Philip Andersson!

bivald 2009-06-16 16:14

Värt att poängtera att detta gäller även för fältnamn som mysql anser är reserverade

FredrikNas 2009-06-16 18:32

generellt så skulle jag också avråda från fältnamn i form av siffror, eftersom att det efter ett tag kan bli väldigt oöversiktligt, och väldigt svårläst kod.

Lycka till

allstars 2009-06-16 22:35

Jag sätter gärna ` runt alla mina fältnamn för att undvika just detta.

etanders 2009-06-16 22:38

Har du en tabell som heter "table"? Det skulle jag nog avråda från.

Även om det verkar funka nu så bäddar det för lätta missförstånd, t.ex. när du behöver använda kommandon som CREATE TABLE eller ALTER TABLE.

youheardit 2009-06-16 22:46

Citat:

Ursprungligen postat av bivald
Värt att poängtera att detta gäller även för fältnamn som mysql anser är reserverade

Citat:

Originally posted by -FredrikNas@Jun 16 2009, 18:32
generellt så skulle jag också avråda från fältnamn i form av siffror, eftersom att det efter ett tag kan bli väldigt oöversiktligt, och väldigt svårläst kod.
Lycka till

Citat:

Originally posted by -allstars@Jun 16 2009, 22:35
Jag sätter gärna ` runt alla mina fältnamn för att undvika just detta.

Tack för era tips! :)

Citat:

Ursprungligen postat av etanders
Har du en tabell som heter table? Det skulle jag nog avråda från.
Även om det verkar funka nu så bäddar det för lätta missförstånd, t.ex. när du behöver använda kommandon som CREATE TABLE eller ALTER TABLE.

och nej den heter inte table :P bara som jag skrev in här i tråden! samt 1,2,3,4 kolumerna heter inte så


Alla tider är GMT +2. Klockan är nu 14:37.

Programvara från: vBulletin® Version 3.8.2
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Svensk översättning av: Anders Pettersson