我想知道如何通过使用列的值从数据库中检索项目,我有一个数据库项目,其中包含一个名为sid的列,根据应该使用的内容具有不同的值,我有一个带有"描述"的sid的项目另一个sid值为" profile_view"。 如何通过使用php PDO获取具有描述值的那个,这是我尝试使用的代码:
try {
$GetSettings = $db->prepare("SELECT * FROM `profile_settings` WHERE profileId=?");
$GetSettings->bindValue(1, $profileId, PDO::PARAM_STR);
$GetSettings->execute();
$SettingsData = $GetSettings->fetchAll(PDO::FETCH_ASSOC);
foreach ($SettingsData as $SettingsRow) {
$description = $SettingsRow['sid']['description'];
$profile_view = $SettingsRow['sid']['profile_view'];
}
} catch (PDOException $e) {
}
答案 0 :(得分:0)
$SettingsRow['sid']
不是关联数组,它是该行中sid
列值的字符串。因此,您需要将其与您要查找的值进行比较,然后从另一列中获取值。
foreach ($SettingsData as $settingsRow) {
$sid = $SettingsRow['sid'];
$value = $SettingsRow['value']; // I'm just assuming this is the name of the column with the relevant data
if ($sid == 'description') {
$description = $value;
} elseif ($sid == 'profile_view') {
$profile_view = $value;
}
}