@ikfah012
Не самый умный парень в этом чате

Как сделать вывод данных на страницу?

Выбираем дату, за которую нужно вывести посты:
<form method="post" name="delivery_date" action="date.php">
<input class="form-control" type="date" name="delivery_date" value="" id="example-date-input"> <button type="submit" class="btn btn-primary btn-xs mb-3">Найти</button>
</form>

Обрабатываем входящую дату и делаем запрос к бд на вывод нужных нам постов.
<?php

require_once('db.php');

if(isset($_POST['delivery_date']))
{
    $date = $_POST['delivery_date'];
    $SQL = "SELECT * FROM $dbtable WHERE delivery_date='$date' AND delivery='1' ORDER BY id DESC";
    $result = mysqli_query($link, $SQL);

    while ($res = mysqli_fetch_assoc($result)) {
        printf ("%s\n", $res["delivery_date"]);
    }
}
?>


Иии...ничего не происходит, пустая страница. Объясните, пожалуйста, что именно я делаю не так. В идеале я бы хотел выводить просто данные в столбик (хоть как-то). Т.е. сначала массив данных с id=3, потом с id=2 и т.п. Я пробовал сначала сделать это через функцию, но накосячил неплохо, решил попробовать таким образом.
  • Вопрос задан
  • 149 просмотров
Решения вопроса 1
PavelMonro
@PavelMonro
Включаем вывод всех ошибок, смотрим приходит ли что-то по запросу
<?php
ini_set('error_reporting', E_ALL); // Включаем вывод всех ошибок
ini_set('display_errors', 1);
ini_set('display_startup_errors', 1);
require_once('db.php');

if(isset($_POST['delivery_date']))
{
    $get_date = $_POST['delivery_date'];
    var_dump($get_date); //смотрим приходит ли что-то по запросу
    $SQL = "SELECT * FROM $dbtable WHERE delivery_date='$get_date' AND delivery='1' ORDER BY id DESC";
    $result = mysqli_query($link, $SQL);
var_dump( $result); //смотрим результат

    while ($res = mysqli_fetch_assoc($result)) {
        printf ("%s\n", $res["delivery_date"]);
    }
}
?>
Ответ написан
Пригласить эксперта
Ответы на вопрос 2
@nozzy
Silex, Symfony, Laravel, SQL
$get_date = $_POST(['delivery_date']);
Должно быть:
$get_date = $_POST['delivery_date'];
$_POST это массив, а не функция.
Ответ написан
doublench21
@doublench21
t.me/jeudesprits
Ну что вы реально не видеть что вы пишете? Нет ну неужели сложно это делать в нормальном редакторе, раз так не справляетесь.

$_POST['delivery_date'] в 9 строке вызывается как функция, а это массив. Почему в проверке выше вы делаете нормально, а в 9 строке надо было придумать велосипед и вызвать как функцию.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы