Как скрыть столбец из моей базы данных, используя json_encodage в PHP - PullRequest
1 голос
/ 25 марта 2020

У меня есть база данных, которую я fetch в json_encode в PHP, но я хотел бы скрыть column. У меня слишком много column, чтобы позвонить на мой SQL request, поэтому я только что сделал: SELECT *. Итак, я хотел бы скрыть, например, столбцы login и password.

$bdd = $connect->query("
SELECT * FROM dmlog.dm LEFT JOIN dmlog.users ON users.id_user = dm.id_used
");
$rows = array();
while ($r = $bdd->fetch()) {
    $rows[] = $r;
}
json_encode($rows);

Ответы [ 2 ]

1 голос
/ 25 марта 2020

Вам нужно использовать PDO::FETCH_ASSOC, чтобы не получать два набора каждой записи. С этим параметром, переданным в выборку, вы получите только ассоциативный массив, столбец будет индексом. Затем вы можете передать те, которые вам не нужны, в unset.

$bdd = $connect->query('SELECT * FROM dmlog.dm LEFT JOIN dmlog.users ON users.id_user = dm.id_used');
$rows = array();
while($r = $bdd->fetch(PDO::FETCH_ASSOC)) {
    unset($r["login"], $r["login_pass"], $r["login_email"]); //remove login, Login_email, and password from the return
    $rows[] = $r; 
}
echo json_encode($rows);
0 голосов
/ 25 марта 2020

Просто сбросьте login и password, прежде чем вставить его в $rows массив

while ($r = $bdd->fetch()) {
    unset($r["login"]);
    unset($r["password"]);
    $rows[] = $r;
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...