0

我正在使用一个已经创建的数据库,我可以访问,但根本没有更改数据库的权限。

我正在使用查询

select last_count, query, job_id from twitterinblack46.job where job_id in ('.$job_id_all.') order by last_count desc; 

调用三列(last_countqueryjob_id)并将它们显示在表格中。

此查询按我的意愿工作,但唯一的问题是该query列显示的数据在所需数据前面带有“%23”、“%40”、“%20”或“q=”。

在显示表格之前,我需要弄清楚如何摆脱这些字符串。

这是用于生成表的 while 语句:

while($row = mysql_fetch_array($result)){
    echo"<tr>";
    echo "<td>" . $row["job_id"] . "</td>";
    echo "<td>" . $row["last_count"] . "</td>";
    echo "<td>" . $row['query'] . "</td>";
    echo "<tr>";
}

echo "</table>";

我创建了这个查询:

select replace(replace(replace(REPLACE(query,'%23', ''),'%40',''),'q=',''),'%20','') from job; 

摆脱这些字符,它可以在我需要的时候完美运行,但是如何$result在创建表之前将此查询合并到我的另一个中?

4

2 回答 2

1
$lst_search = array("%23", "%40", "%20", "q=");
$query = str_replace($lst_search, "", $row["query"]);

然后在创建表时使用$query代替。$row["query"]

于 2013-02-22T23:39:08.073 回答
1

您可以在打印表格时删除有问题的字符串:

echo "<td>" . str_replace(array('%23', '%40', '%20"', 'q='), '', $row['query']) . "</td>";

(如果您想将删除限制在字符串开头的字符,您可以查看preg_replace

于 2013-02-22T23:42:57.237 回答