Эхо-специфические данные из ассоциативного массива?

Это для проекта рецептов, где пользователи используют форму и вводят свои собственные рецепты. У меня вся эта часть работает. Сейчас я пытаюсь получить информацию о рецепте из базы данных и отобразить ее на странице. Во всяком случае, это код, который я сейчас имею.

<?php
include_once('includes/connection.php');
include_once('includes/recipe.php');
$recipe = new Recipe;

if (isset($_GET['id'])) {
$id = $_GET['id'];
$basic_data = $recipe->fetch_data($id);

$sql1 = $pdo->prepare("SELECT recipes.*, categories.* FROM recipes
INNER JOIN categories
ON (recipes.category_ID = categories.category_ID)
WHERE recipes.recipe_id = ?");
$sql1->bindValue(1, $id);
$sql1->execute();

$results1 = $sql1->execute();
echo $results1 = $sql1->fetchAll(PDO::FETCH_ASSOC);
var_dump($results1);
?>

Это то, что я вижу на своей веб-странице, когда запускается этот код. Раньше я никогда не работал с ассоциативными массивами, поэтому я действительно растерялся относительно того, как я могу отображать определенные данные, содержащиеся в одном. Для целей этого вопроса я сосредоточился на «category_name» и пытаюсь отобразить только значение, хранящееся в «category_name» для этого рецепта, которое оказывается «none». Как мне повторить только слово «нет» на странице?

    Arrayarray(1) {
[0]=> array(15) {
["recipe_ID"]=> string(1) "1"["recipe_name"]=> string(20) "English Muffin Pizza"["category_ID"]=> string(1) "1"["servings_ID"]=> string(2) "13"["prep_hours"]=> string(1) "0"["prep_minutes"]=> string(2) "20"["cook_hours"]=> string(1) "0"["cook_minutes"]=> string(2) "10"["oven_temp"]=> string(3) "350"["directions"]=> string(402) "These are the directions."["extra_comments"]=> string(37) "This is a short extra comment."["recipe_favorite"]=> string(1) "1"["recipe_photo"]=> string(0) ""["created"]=> string(19) "2014-09-20 10:22:39"["category_name"]=> string(4) "none" }
}

Пожалуйста, дайте мне знать, если я могу дать вам больше информации. Это был долгий день, и я могу упустить что-то, что могло бы помочь вам помочь мне.

0

Решение

Если вы строго пытаетесь повторить category_name в этом массиве вы просто напишите:

echo $results1[0]['category_name'];
0

Другие решения

Вам нужно использовать цикл, чтобы пройти через $ results. Это будет повторять category_name для всех рецептов.

foreach ($results1 as $recipe) {
echo $recipe['category_name'];
}

Если вы знаете, что хотите получить рецепт с ключом 0 (первый рецепт), вы можете просто сделать:

echo $results[0]['category_name'];
0

По вопросам рекламы [email protected]