2012-10-09 103 views
0

此代码正常工作:$ batsman1name作为新值插入数据库的正确行中。MySQL查询中的PHP变量

for($count = 1; $count <= 22; ++$count) 
{ 
    $setbattingid = 'batsman' . $count . 'battingid'; 
    $$setbattingid = mysql_real_escape_string($_POST[$setbattingid]); 
    $setname = "batsman" . $count . "name"; 
    $$setname = mysql_real_escape_string($_POST[$setname]); 
    $query = "UPDATE batting_new SET batsmanname = NULLIF('$batsman1name', '') WHERE battingid = '$batsman1battingid'"; 
    $result = mysql_query($query); 
    if (!$result) die ("Database access failed: " . mysql_error()); 
} 

有了这个代码数据库没有更新,但varaible变量$$的setName和$$ setbattingid确实包含为$ batsman1name以上$ batsman1battingid相同的值。

for($count = 1; $count <= 22; ++$count) 
{ 
    $setbattingid = 'batsman' . $count . 'battingid'; 
    $$setbattingid = mysql_real_escape_string($_POST[$setbattingid]); 
    $setname = "batsman" . $count . "name"; 
    $$setname = mysql_real_escape_string($_POST[$setname]); 
    $query = "UPDATE batting_new SET batsmanname = NULLIF('$$setname', '') WHERE battingid = '$$setbattingid'"; 
    $result = mysql_query($query); 
    if (!$result) die ("Database access failed: " . mysql_error()); 
} 

任何想法?如果我没有很好地解释我的问题,让我知道吗?谢谢。

回答