每当我尝试执行程序时,我都会收到解析器错误。
Parse error: parse error, unexpected '.' in /var/www/html/spywgc/adm/ctshell/getproduct/getproduct.php on line 9
这是代码
$select_url= " select product_id from sp_url where url like '%.$url.%'";
$ url是一个字符串,我想从数据库中检索它以将其分配给$ select_url。
答案 0 :(得分:3)
您发布的行在语法上是正确的。真正的错误是在该行之前的某个地方,您有一个未终止的'
字符串。
$somevar = 'blah blah <--missing ' here
... blah blah blah ...
$select_url = "...... '% <---string closes here
所以你最终得到了
$somevar = 'big long string select product_id .... ' % .
%是模运算符,通常很好,但接着是a。这是无效的。
"string modulo concatenate"
正如其他人所说,你的字符串内部不正确。您使用的是双引号字符串,因此不需要在字符串中尝试连接。
答案 1 :(得分:1)
我不确定你是否打算在那里留点,但你可以做以下任何一点:
$select_url= "select product_id from sp_url where url like '%.{$url}.%'";
$select_url= "select product_id from sp_url where url like '%." . $url . ".%'";
答案 2 :(得分:0)
根据你上面提到的内容,我假设你想做这样的事情
/* Assuming you have a database connection already */
$result = mysql_query("SELECT product_id FROM sp_url WHERE url LIKE '%".$url."%'";
$row = mysql_fetch_assoc($result);
$select_url = $row['product_id'];
编辑:您可能也想要转义$ url mysql_real_escape_string($ URL)
答案 3 :(得分:0)
甚至不需要点,你可以用这样的东西结束:
$select_url= "SELECT product_id FROM sp_url WHERE url LIKE '%$url%'";
然后使用此字符串创建mysql_query。