簡體   English   中英

PHP,如何檢查MySQL表是否有名稱

[英]PHP, how to check if a MySQL table has a name

我正在嘗試連接到MySQL數據庫以檢查表(builditblocks)以查看用戶在“name”列中是否有數據。

這是我到目前為止:

<?php
 $temp=mysqli_query($con, "SELECT * FROM `builditblocks`.`module_index`.`name`");
 $i = 0;
 while($module = mysqli_fetch_array($temp))
 {
   "moduleArray[".$i."]=\"" . $module["name"]."\";" ;
   $i++
   //stuck here I need to know how to
   //store them all in an array and check
   //to see if the input matches any array elements
 }

如果有名稱,我該如何查看表格?

首先,將名稱推送到新數組並使用in_array檢查

$modules = array();
while($module = mysqli_fetch_array($temp))
{
   $modules[] = $module['name'];
}

if(in_array($_POST['input'], $modules))
    echo "I found";
else
    echo "Not found";

您可能想嘗試將“WHERE”子句與“LIKE”結合使用。

$temp = mysqli_query($con, "SELECT * FROM `builditblocks`.`module_index`.`name` WHERE `name` LIKE '%input%'");

上面的代碼只會為您提供名稱中包含“input”的記錄。 有關更多信息,請參閱http://dev.mysql.com/doc/refman/5.0/en/string-comparison-functions.html#operator_like

要查找數據庫中是否存在名稱,您需要做的就是在SQL查詢中添加WHERE

$name = $module['name'];

"SELECT * FROM 'builditblocks'.'module_index'.'name' WHERE name = '".$name."'"

然后檢查是否返回任何內容。 如果是,則名稱存在,如果不存在則則不存在。

請嘗試以下方法:

$name = $module["name"]; // Assign your user input to a variable
$temp = mysqli_query($con, "SELECT * FROM builditblocks.module_index WHERE name = '" . $name . "'"; // Get all fields from table where the name field equals the user input.
if ($temp) {
    // If any records were returned the name exists
} else {
    // Otherwise the name doesn't exist
}

希望這可以幫助。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM