2017-06-20 330 views
-1

你好,我有使用PHP它給錯誤您的SQL語法錯誤;檢查對應於你的MySQL服務器版本的手冊正確的語法使用near'update

您的SQL語法錯誤運行的查詢;檢查對應於你的MySQL服務器版本的手冊正確的語法以線附近使用 '更新,請注意,stream_a)VALUES(' https://upload.wikimedia.org/wikipedia/ar/thu'2

PHP代碼:

$logo  = $_POST['logo']; 
$name  = $_POST['name']; 
$content = $_POST['content']; 
$country = $_POST['country']; 
$satellite = $_POST['satellite']; 
$position = $_POST['position']; 
$frequency = $_POST['frequency']; 
$system = $_POST['system']; 
$fec  = $_POST['fec']; 
$quality = $_POST['quality']; 
$lang  = $_POST['lang']; 
$url_ch = $_POST['url_ch']; 
$stream = $_POST['stream']; 
$update = $_POST['update']; 
$note  = $_POST['note']; 
$stream_a = $_POST['stream_a']; 
$id  = $_POST['id']; 
$gpageid = intval($_GET['id']); 


####################### 

if(isset($_POST['add']) and $_POST['add'] == 'newch') { 
    $addnewpage = mysql_query("insert into channels 
    (logo,name,content,country,satellite,position,frequency,system,fec,quality,lang,url_ch,stream,update,note,stream_a) 
    values 
    ('$logo','$name','$content','$country','$satellite','$position','$frequency','$system','$fec','$quality','$lang','$url_ch','$stream','$update','$note','$stream_a') 
    ") or die(mysql_error()); 
    if(isset($addnewpage)){ 
     die(" 
      <center>Done</center> 
      <meta http-equiv='refresh' content='2; url=?cpages=channels' /> 
     "); 
    } 
} 
+3

更新是SQL中的一個保留關鍵字,您需要像'''update'一樣放回它,但是用back ticks而不是''。另外,你應該在mysqli中寫這個,因爲mysql已經被棄用,除非你當前的環境沒有爲PHP5 +設置,你需要學習mysqli – clearshot66

+1

不要浪費你的時間去學習傳統的mysql擴展。它幾年前就被棄用了,它不再是自PHP/7以來的語言的一部分。 –

+1

將查詢輸出到屏幕並查看它的外觀。此外,不要將帖子值放入查詢中。如果我提交''; DELETE FROM channels;'作爲名稱會發生​​什麼? – Pickle

回答

0

更新在SQL保留關鍵字,你需要把反勾周圍

...,stream,`update`,note,... 

此外,你應該在的mysqli因爲MySQL的是寫這已棄用。所以除非你的當前環境沒有爲PHP5 +設置,否則你需要學習mysqli函數。

+0

它的工作最後,謝謝:) –

+0

@BinSalem在解決這個問題之前,還有一些其他嚴重問題需要解決。這只是其中之一。 – tadman

相關問題