当前位置:编程学习 > php >>

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']; 
}
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,