2011-05-19 81 views
-1
<?php 
$title = $_POST['title']; 
$date = $_POST['date']; 
$time = $_POST['time']; 
$channel = $_POST['channel']; 
mysql_connect("localhost","root",""); 
mysql_select_db("imammuda"); 
$sql=mysql_query("insert into Program (ID, Title, Date, Time, Channel) values ('NULL', $title, $date, $time, $channel); 
mysql_close(); 
?> 

这是我的POST运行PHP时插入数据为什么会出现意想不到的错误?

private void adddataintophp(String title, String date, String time, String channel){ 
    ArrayList<NameValuePair> nameValuePairs = new ArrayList<NameValuePair>(); 
    //http post 
    try{ 
     nameValuePairs.add(new BasicNameValuePair("title", title)); 
     nameValuePairs.add(new BasicNameValuePair("date", date)); 
     nameValuePairs.add(new BasicNameValuePair("time", time)); 
     nameValuePairs.add(new BasicNameValuePair("channel", channel)); 
     HttpClient httpclient = new DefaultHttpClient(); 
     HttpPost httppost = new HttpPost("http://10.0.2.2/insertprogram.php"); 
     httppost.setEntity(new UrlEncodedFormEntity(nameValuePairs)); 
     HttpResponse response = httpclient.execute(httppost); 
     HttpEntity entity = response.getEntity(); 
     is = entity.getContent(); 
    }catch(Exception e){ 
     Log.e("log_tag", "Error in http connection"+e.toString()); 
    } 
} 

,它给了我

Parse error: syntax error, unexpected $end in C:\wamp\www\InsertProgram.php on line 10 

我不知道为什么就不能结束。

请帮助我在邮政那里,我认为有一些错误,我没有找到它。

+3

正如您在语法高亮显示中看到的那样,您缺少一个引号,请确保您使用的IDE或编辑器的语法突出显示 – 2011-05-19 10:00:41

+2

@Pekka - 甚至是SO的语法高亮显示它。 - ) – 2011-05-19 10:05:47

回答

9

接近这个sql查询与)"

$sql=mysql_query("insert into Program (ID, Title, Date, Time, Channel) values ('NULL', $title, $date, $time, $channel)"); 
6

关闭双引号,把列值在单引号

$sql=mysql_query("insert into Program (ID, Title, Date, Time, Channel) 
       values ('NULL', '$title','$date', '$time', '$channel'"); 

一个侧面说明:将它们发送到MySQL服务器之前逃离用户输入。

+0

注意:未定义的索引:在第2行的C:\ wamp \ www \ InsertProgram.php中的标题 – newbie 2011-05-19 11:33:48

+0

@newbie:'$ _POST ['title']'不存在检查变量是否已设置在使用它们之前使用'isset()'方法将清除此通知 – 2011-05-19 11:36:30

+0

'nameValuePairs.add(new BasicNameValuePair(“title”,title));'我在java post中添加了这个,但是我不知道如何定义在PHP中 – newbie 2011-05-19 11:44:36

2
$sql=mysql_query("insert into Program (ID, Title, Date, Time, Channel) values ('NULL', $title, $date, $time, $channel)"); 

你忘了结束报价。

1
mysql_query("insert into Program (ID, Title, Date, Time, Channel) values ('NULL', $title, $date, $time, $channel); 

您没有结束SQL字符串。添加“在字符串的末尾

相关问题