2014-03-06 20 views
0

现在我试图在多表中搜索,但现在我的问题如何知道哪个表,你有数据?从多表通过php和我的sql搜索错误

$query="(SELECT name FROM news WHERE name like '%$SER%') 
     UNION ALL 
     (SELECT name FROM media WHERE name like '%$SER%') "; 
$res=mysql_query($query); 
while($row=mysql_fetch_array($res)){ 
echo $row[prog]."<br>"; 
} 
mysql_num_rows($res); 

如何知道从哪个表中得到的结果!!!

+0

它看起来并不像你做任何[SQL逃逸(http://bobby-tables.com/php)在这里和你有一些严重的[SQL注射虫](http:// bobby-ta bles.com/)。 [PDO不难学](http://net.tutsplus.com/tutorials/php/why-you-should-be-using-phps-pdo-for-database-access/),并提供了一个简单,可靠向查询添加数据的方式。 'mysql_query'不应该用在新的应用程序中。这是从PHP的未来版本中删除的不推荐使用的界面。像[PHP The Right Way](http://www.phptherightway.com/)这样的指南概述了推荐的最佳实践。 – tadman

回答

2

从第二选择添加一个额外的列

​​

的东西都会有2$row["FromTable"]

您还需要了解SQL注入,以及使用的mysqli的API,而不是理想(?节省了解析时间,逃避时间以及需要逃跑!)