Задать вопрос
  • Как вывести из базы данных все записи с помощью цикла while?

    @bigaleks
    include_once ('include/connectdb.php'); 
    $res = $mysqli->query("SELECT * FROM `pages` WHERE `Category`='Новости'");
    $content = ''; // Инициализируем переменную перед циклом
    
    if ($res->num_rows) {
        while($row = $res->fetch_object()){
            // Для каждой записи создаем новые переменные
            $myH2 = "<h3>".$row->H2."</h3>"; 
            $myThumbnail = $row->Thumbnail;
            $mySmalNews = "<p>".$row->SMALNEWS."</p>";
            
            // Добавляем сформированный блок в content
            $content .= sprintf("
                <div class='news'>
                    <div class='smallnews'>
                        %s
                        <img src='%s'/>
                        %s
                        <a href='bignews.php'>Читать далее</a>
                    </div>
                </div>", 
                $myH2, 
                $myThumbnail, 
                $mySmalNews
            );
        }
    } else {
        $content = "<h3>Нет записей в базе</h3>";
    }
    
    // Выводим результат
    echo $content;
    Написано
  • Запрос SQL на добавление записи?

    @bigaleks
    Пример безопасного кода с подготовленными выражениями:
    $name = $_POST['name'];
    $content = $_POST['content'];
    $price = $_POST['price'];
    $sale = $_POST['sale'];
    $thumb = $_POST['Thumbnail'];
    $smallContent = $_POST['smallContent'];
    
    $stmt = mysqli_prepare($link, "INSERT INTO `orders` (`name`, `content`, `price`, `sale`, `image`, `smallContent`) 
                                   VALUES (?, ?, ?, ?, ?, ?)");
    mysqli_stmt_bind_param($stmt, "ssssss", $name, $content, $price, $sale, $thumb, $smallContent);
    mysqli_stmt_execute($stmt);
    
    if (mysqli_affected_rows($link) > 0) {
        echo "<h1 style='text-align: center'>Товар добавлен</h1>";
    } else {
        echo "<h1 style='text-align: center'>Ошибка добавления товара: " . mysqli_error($link) . "</h1>";
    }
    Написано