使用带有if / else if语句的require语句

时间:2011-01-15 03:15:48

标签: php mysql if-statement require

  

可能重复:
  PHP Question: How to fix these if/elseif statements

Hello有没有办法编写if / elseif语句来使用require语句显示多个php页面。我目前正在使用rss从博客收集文章并在网页上显示链接。如何根据从mysql数据库中选择的数组值显示某个源。对不起,这很多,希望我能很好地解释我的问题。以下是显示页面上的代码:

$query = "SELECT interests FROM signup WHERE username = '$username'";
$result = mysql_query($query) or die ("no query");

$result_array = array();
while($row = mysql_fetch_array($result))
{
$result_array[] = $row['interests'];
} if ($result_array[0] = Politics) {
require 'politics.php';
} 

3 个答案:

答案 0 :(得分:2)

您只有一个=并且未引用政治。改变你最后几行看起来像这样:

if ($result_array[0] == 'Politics') {
  require 'politics.php';
} 

另外,作为旁注,您应该确保正确地转义查询变量中的$username以防止SQL注入攻击。

答案 1 :(得分:1)

您的if语句未使用比较等号或引号。它应该如下:

if ($result_array[0] == 'Politics')

答案 2 :(得分:1)

闻起来有点糟糕的设计。你最好将用户存储在用户表中,将他们的兴趣存储在一个单独的表中,以及在第三个表中存储兴趣主列表。

user: (id, name, etc...)
user_interests (user_id, interest_id)
interests (id, name, filename)

然后你可以做一些像:

SELECT interests.filename, interests.name
FROM interests
RIGHT JOIN user_interests ON interests.id = user_interests.interest_id

while($row = msyql_fetch... ) {
    include($row['filename']);
}