2017-02-25 35 views
0

我試圖執行以下查詢簡單的MySQL查詢中顯示誤差

DROP TABLE IF EXISTS `developer_messenger`; 
CREATE TABLE `developer_messenger` (
    `id` int(10) NOT NULL, 
    `title` varchar(45) NOT NULL, 
    `username` varchar(45) NOT NULL, 
    `message` varchar(45) NOT NULL, 
    `type` varchar(45) NOT NULL, 
    `date_time` varchar(45) NOT NULL, 
    `status` varchar(45) NOT NULL 
) ENGINE=InnoDB DEFAULT CHARSET=latin1; 

但是這個簡單的查詢顯示我的錯誤在PHP

無法獲取的數據:您有一個錯誤的SQL語法;檢查對應於你的MySQL服務器版本的權利 語法使用附近的 手冊 'CREATE TABLE developer_messengerid INT(10) NOT NULL,title VARCHAR(' 在行1

我是新手,很抱歉,如果它的愚蠢,

幫助表示讚賞

+0

您是否試圖在PHP調用中或直接在SQL中執行此操作? –

+0

適合我。請參閱 - http://rextester.com/ZTM29051 – GurV

+1

您可以在哪裏運行此查詢來顯示您的完整php代碼 –

回答

0

在回答您的第二個問題關於magic_quotes的:

if (!get_magic_quotes_gpc()) { //checks php ini if magic_quotes is not on 
$title = addslashes($_POST['title']); 
} 
else 
{ 
$title = stripslashes($_POST['title']); 
} 

addslashes();http://php.net/manual/en/function.addslashes.php

stripslashes();http://php.net/manual/en/function.stripslashes.php

不知道這是否有助於但它可能你不這樣不得不改變的php.ini 只是$data將被輸入到SQL

+0

有沒有一種方法可以在不編輯PHP.ini文件的情況下實現同樣的功能,甚至可以在編寫我的代碼的PHP文件中實現(由於一些限制,我幾天之後無法訪問它),I.E.直接在MYSQL查詢中(做一些改變),逃避不需要的斜線!幫助讚賞 – Webmaster

0

您查詢是正確的,嘗試令人興奮的DROP並逐一創建。

此代碼可能對您有所幫助。

<?php 
$servername = "localhost"; 
$username = "username"; 
$password = "password"; 
$dbname = "myDB"; 

// Create connection 
$conn = new mysqli($servername, $username, $password, $dbname); 
// Check connection 
if ($conn->connect_error) { 
die("Connection failed: " . $conn->connect_error); 
} 

// sql to create table 
$sql = "CREATE TABLE `developer_messenger` ( 
`id` int(10) NOT NULL, 
`title` varchar(45) NOT NULL, 
`username` varchar(45) NOT NULL, 
`message` varchar(45) NOT NULL, 
`type` varchar(45) NOT NULL, 
`date_time` varchar(45) NOT NULL, 
`status` varchar(45) NOT NULL 
) ENGINE=InnoDB DEFAULT CHARSET=latin1"; 

if ($conn->query($sql) === TRUE) { 
echo "Table MyGuests created successfully"; 
} else { 
echo "Error creating table: " . $conn->error; 
} 

$conn->close(); 
?>