2012-04-28 63 views
-1

我對PHP很新,所以我很抱歉,如果這看起來像一個愚蠢的問題。我正在使用PHP代碼和MYSQL數據庫。如何在PHP中使用IF(或其他)語句來查找MYSQL表?

我基本上有下面的代碼有一個HTML菜單,其鏈接由PHP變量生成。這是用於主頁(此文件以「pg1」結尾)。如果有一個名稱相同但以「pg2」結尾的文檔,我希望該文件檢查我的MYSQL數據庫。我使用pg1($ fpname1)創建兩個變量,最後使用pg2($ fpname2)創建兩個變量。那麼我該如何讓它在我的數據庫中查找名稱爲$ fpname2的表?我知道那麼如果它發現表格,我可以把一個「其他」,然後我想包括在菜單鏈接的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> 

感謝您的幫助

回答

-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

+1

只是向上看,你不會將'$ count'傳遞給'mysql_num_rows'函數,所以你傳遞查詢結果,所以'$ fetch'在這種情況下。參見(doc)[http://php.net/manual/en/function.mysql-num-rows.php] – jedwards 2012-04-28 21:09:18

+0

已更新。謝謝。 – desbest 2012-04-29 08:10:59

+0

這是錯誤的回答錯誤的問題 – 2012-04-29 08:33:03

0

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

然後你會檢查查詢返回的行的數量,如果數量較大比0至少返回1頁,否則它從未被發現。

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

這將選擇範圍很廣,頁pg0pg9之間

0

你有INFORMATION_SCHEMA數據庫我相信。那裏有一張名爲TABLE的表格。因爲所有的table_name都被保留了。所以,如果你給在數據庫INFORMATION_SCHEMA查詢: SELECT TABLE_SCHEMA從表在表格名=例如 如果TABLE_SCHEMA爲null,則沒有表,否則有數據庫中的表是

0

看起來你的數據庫設置爲錯誤。
您必須將所有頁面存儲在一張表中,而不是很多。

您正在遭受SQL注入的直接後果。以及過於複雜和不可維護的代碼。