2015-10-20 30 views
1

嗨我想要插入數據到數據庫,我得到一個錯誤,當它到達IP地址,似乎在IP小數點位置導致錯誤。

INSERT INTO農場(名稱,IP,金額)VALUES(somename,123.32.32.1, 432432)SQLSTATE [42000]:語法錯誤或訪問衝突:1064您 在您的SQL語法錯誤;檢查對應於 你的MySQL服務器版本使用附近的正確語法手冊「.32.1, 432432)」第2行

$servername = 'localhost'; 
$username = 'root'; 
$password = ''; 
$dbname = 'myDB'; 
$table = 'myTable'; 

$name = $_GET['name']; 
$ip = $_GET['ip']; 
$amount = $_GET['amount']; 

    try { 
    $conn = new PDO("mysql:host=$servername;dbname=$dbname", $username, $password); 
    $conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION); 
    $sql = "INSERT INTO $table (name, ip, amount) 
    VALUES ($name, $ip, $amount)"; 
    $conn->exec($sql); 
    echo "New record created successfully"; 
    } 
catch(PDOException $e) 
    { 
    echo $sql . "<br>" . $e->getMessage(); 
    } 

$conn = null; 
+0

請添加「農場」表結構,您的IP字段需要是VARCHAR或TEXT,也許是INT或NUMBER,當然這不會起作用... – Ryu

+0

[PHP PDO準備報表](http://stackoverflow.com/questions/1457131/php-pdo-prepared-statements) – Machavity

+1

行情。只是...行情。 –

回答

1
$sql = "INSERT INTO $table (name, ip, amount) 
    VALUES ('$name', '$ip', $amount)"; 

你錯過了炭/ varchar.That報價可能是問題