Ich versuche, dynamisch Admin-Seite meiner Website mit Abschnitten aus der Datenbank zu füllen.Rückgabe Array von PHP-Funktion gibt nur das erste Element
Das Problem ist, dass ich alle Abschnitte in der Datenbank hinzugefügt werden möchte, und um für mich einfacher zu sein, verwende ich eine Funktion.
Dieser Code druckt mir das erste Array-Element aus.
functions.php
<?php
function fetchAdminSections ($user_id){
global $pdo;
$get_sections = $pdo->prepare("SELECT `id`, `section_name`, `section_description` FROM `administration_sections` WHERE `admin_added_this` = :admin");
$get_sections->execute([
':admin' => $user_id
]);
while ($row = $get_sections->fetch(PDO::FETCH_ASSOC)){
$sections = [];
$id = $row['id'];
$name = $row['section_name'];
$description = $row['section_description'];
$sections[$id]['section_name'] = $name;
$sections[$id]['section_description'] = $description;
return $sections;
}
}
?>
index.php
<?php
include 'functions.php';
$elements = fetchAdminSections($user_id);
print_r($elements);
?>
Was ich erhalte, ist:
Array ([1] => Array ([section_name] => test1 [section_description] => test))
einfach $row
innenRückkehrgibt mir eine ähnliche Sache:
Array ([id] => 1 [section_name] => test1 [section_description] => test)
Ich möchte alle Abschnitte erhalten, und eine Schleife durch sie!
bewegen 'return $ Abschnitte;' nach Schleife – splash58
Jedes Mal, wenn Sie Schleife initiieren Variable '$ sections' wieder was bedeutet, es ständig überschrieben wird. Verschieben Sie diese Zeile '$ sections = [];' außerhalb der Schleife. – Pascal