2014-01-26 64 views
0

如果我有2 MySQL数据库具有以下字段...PHP MySQL的随机

RequestDB: 
- Username 
- Category 

DisplayDB: 
- Username 
- Category 
- Balance 
- URL 

...它可以生成一个随机URL条目;如果其他条件得到满足?也可以将来自一个数据库的值与另一个进行比较?最后,一旦生成随机字段,可以编辑来自同一条目的其他值。例如:

IF Display.Category = Request.Category 
    AND Display.Balance > 0 
THEN Print Random URL 
    AND Display.Balance = Display.Balance - 0.10 

我知道上面不是PHP。我更习惯于VB.net,但我确信上述内容可以“翻译”到PHP。谢谢你的帮助。

+1

你可以使用MySQL的['RAND()'](http://dev.mysql.com/doc/refman/5.0/en/mathematical的-functions.html#function_rand)function –

+0

你想随机的URL是任意随机数据库行中的随机URL吗?如果是这样,只需查询显示中的行即可。由于DisplayDB没有要作为主键关联的ID,我想象你必须得到一个数组中的所有URL,然后计算它们有多少行,然后才能得到你想要的那一行在数组中使用你需要使用rand(0,$ count)作为函数来创建随机选择。 –

回答

0

像这样(未经):

$result = mysql_query("SELECT requestdb.*, display.* FROM requestdb INNER JOIN display ON requestdb.category=display.category ORDER BY RAND() LIMIT 0,1") or trigger_error(mysql_error()); 
while($row = mysql_fetch_array($result)){ 
foreach($row AS $key => $value) { $row[$key] = stripslashes($value); } 
$display_url = $row['url']; 
} 
echo $display_url;