如何在PHP中使用IF(或其他)语句来查找MYSQL表?

时间:2012-04-28 20:34:46

标签: php mysql

我对PHP很陌生,所以如果这看起来像一个愚蠢的问题我会道歉。我正在使用PHP代码和MYSQL数据库。

我基本上有下面的代码,其中有一个HTML菜单,其链接由PHP变量生成。这是针对主页(此文件以“pg1”结尾)。我希望文件在我的MYSQL数据库中检查是否存在具有相同名称但以“pg2”结尾的文档。我创建了两个变量,一个是pg1($ fpname1),另一个是pg2($ fpname2)。然后,我如何在我的数据库中查找名称= $ fpname2的表?我知道如果它找到了表,我可以放一个“else”,然后是我想要包含在菜单链接中的html。

这是迄今为止的相关代码:

$fpname1 = $web_user."ID".$web_number."webID_"."pg1".".php";
$fpname2 = $web_user."ID".$web_number."webID_"."pg2".".php";

?>
<div class="menu">
<ul>
<li><a href="<?php echo $fpname1; ?>">Home</a></li>
</ul>
</div>

感谢您的帮助

5 个答案:

答案 0 :(得分:0)

SELECT * FROM table WHERE page LIKE '%variable%'

然后你会检查查询返回的行数,如果该数字大于0,则返回至少1页,否则从未找到它。

答案 1 :(得分:0)

SELECT * FROM table WHERE page LIKE '%pg_.php'

这将选择介于pg0pg9

之间的所有网页

答案 2 :(得分:0)

你有一个我认为的information_schema数据库。在那里有一个名为TABLE的表。因为保留了所有table_names。所以如果你在数据库information_schema中给出一个查询: SELECT table_schema FROM TABLES其中table_name = example 如果table_schema为null,则表示没有表,否则表中存在数据库。

答案 3 :(得分:0)

看起来您的数据库设置有误 您必须将所有页面存储在一个表中,而不是很多。

您正在遭受SQL注入直接后果。以及过于复杂和不可维护的代码。

答案 4 :(得分:-1)

您必须使用mysql_num_rows功能。

$fetch = mysql_query("SELECT * FROM example") or die(mysql_error());
$count = mysql_num_rows($fetch);

http://www.tizag.com/mysqlTutorial/index.php