gpt4 book ai didi

php - 从 SELECT * FROM $table 中排除一个字段

转载 作者:行者123 更新时间:2023-11-29 05:13:09 24 4
gpt4 key购买 nike

我需要从 SELECT * FROM $table; 中排除字段“密码”,其中 $table 是一个 PHP 变量。

四个可能的表中只有一个有“密码”字段。

这是我的:

function myData($table)
{
include "conf.php";
$con = mysqli_connect($host, $user, $password, $db);
$sql = "SELECT * FROM $table;";
$resul = mysqli_query($con, $sql);
return $resul;
}

有什么想法吗?

编辑:这是我处理返回数据的方式:

$resulFields    =   myFields($table);
$resulData = myData($table);

while ($fields = mysqli_fetch_array($resulFields, MYSQLI_ASSOC)) {
$field = $fields['Field'];
$header .= "<th>$field</th>";

while ($data_array = mysqli_fetch_array($resulData, MYSQLI_ASSOC) ) {
$body .= "<tr id='$data_array[id]'>";
foreach ($data_array as $data){
$body .= "<td>$data</td>";
}
}
}

抱歉,如果有点乱,我才刚刚开始学习编程。

最佳答案

我知道您想要一个 PHP 函数来返回给定表中的所有结果。也许不是返回 $resul 变量并在返回后解析数据,您应该在返回之前将其解析为关联数组。你可以尝试这样的事情:

function myData($table) {
include "conf.php";
$con = mysqli_connect($host, $user, $password, $db);
$sql = "SELECT * FROM {$table}";

$resul = mysqli_query($con, $sql);
$row = $resul->fetch_assoc();
unset( $row['password'] );

return $resul;
}

虽然我觉得为了正确的编码实践和单一责任,注意重要的是,您应该为每个要运行的查询提供特定的数据访问函数。我不建议使用一个只返回表中所有内容的函数。函数也应该被命名,这样你就知道它们在做什么。 “myData”非常缺乏描述性,因此对于数据访问函数来说是一个非常糟糕的名称。

此外,如果您要将变量命名为 $resul,只需继续输入“t”并将其命名为 $result FFS。

关于php - 从 SELECT * FROM $table 中排除一个字段,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36773543/

24 4 0