PHP程序出错 Parse error: syntax error, unexpected T_STRING
提示:19行 出错
foreach ($rows as $v)
{
$n="SELECT SUM(['get_credits'],['points_deducted']) FROM 'details' where userid =".$v['name']."";
【这是19行】UPDATE customer_data SET latest_points=$n WHERE userid=$v['name'];
}
?>
追问:
还是不行!我把所有代码贴上来您看下:
<?php
ini_set("date.timezone","Asia/Chongqing");
include("./conn/mem_conn.php");
$rows="SELECT * FROM customer_data" ;
$query= mysql_query($sql);
foreach ($rows as $v)
{
$n = "SELECT SUM(get_credits,points_deducted) FROM details where userid ='".$v."'";
UPDATE customer_data SET latest_points = $n WHERE userid=$v['name'];
}
?>
你这代码写的有点乱啊,从代码中看到对数据库有三次操作:
1. SELECT * FROM customer_data 选择customer_data表的所有数据。
2. SELECT SUM(get_credits,points_deducted) FROM details where userid ='".$v."
这也不对吧?除非customer_data表中只有一列userid列,否则上面会得到什么结果呢?
3. UPDATE customer_data SET latest_points = $n WHERE userid=$v['name'];
这个是更新customer_data表字段 latest_points ?
你把数据库的操作步骤、逻辑关系先弄清楚,放上一点示例数据,这样才好编写代码。
$rows="SELECT * FROM customer_data" ;
$query= mysql_query($sql); 错误:没见到$sql的定义
foreach ($rows as $v) 错误:$rows上面定义是个字符串,而不是数组
{
下面一句只定义了语句,没进行数据库操作
$n = "SELECT SUM(get_credits,points_deducted) FROM details where userid ='".$v."'";
下面这句是不符合php语法,既不是字符串定义,也不是SQL操作。
UPDATE customer_data SET latest_points = $n WHERE userid=$v['name'];
}
答案:两个SQL语句试修改如下:
$n = "SELECT SUM(get_credits,points_deducted) FROM details where userid ='".$v."'";
$sql = "UPDATE customer_data SET latest_points=$n WHERE userid'=".$v['name']."'";
上一个:用php的Smarty模板的后台程序,如何做文件导出(导成excel文件)???
下一个:php登陆程序不管用,测试的时候显示不出页面。