×

Вокруг мира факты и мирОбщество, мирСтрашное и мистическоеПоследние новостипро сссрТайны историиПетербург и окрестностиКрымтурциятунисВыборг
Интересно уроки по html,css,js,phpМистика и ГаданияМузыкаАнекдоты
Исскуство и поэзия Стихи Серебренного векаМифы и Легенды древнего мираПритчиЯпонские стихи и прозаСтихи Золотого векаБасни
Разные эпохи Тайны историиДревняя АзияСказки народов мираСредневековьепро ссср
Разное ОригамиКомедия "Дино и его друзья"КонвертерыРаскраскиСтрашное и мистическое
общество и мир ПсихологияОбщество, мирАфоризмы и цитатыфакты и мирПоследние новости

-----------

Вашему сайту нужна помощь? Политика конфидициальности Разместить рекламу

как на php сделать новостную ленту или список статей?


php, mysql, sql, js, css, html, вывод данных, новость, новостная, список новостей, список статей, лента, новостная лента, лента статей,

Когда вы заходите на сайты, то в первую очередь видите список каких-то статей, ссылок, новостей. Как сделать себе на сайт такую штуку?
Наверно по началу вы дмаете, что это очень сложная задача, но на самом деле это совсем не так. Нужно лишь иметь базу данных, где у вас будет какая-то статья или текст.

В качестве примера я использую следующую таблицу, где будет распологаться какая-то статья.
id - номер статьи
name - название статьи
img - картинка к статье
tetxt - текст статьи

Называться таблица будет news12
id name img text
1
оказывается крым был римским.
https://recsgames.ru/imgdf/sheo/142219.jpg политика политота текст текст текст текст
2 бостон атаковали трехногие инопланетные гиганские машины
https://recsgames.ru/imgdf/menu/psy.jpg тут очень очень мнооооооого текста ой многобукв


Далее sql запросом делаем вывод статьи:
Select id, name, img from news12. Дословно - выбрать id, название, картинку ИЗ таблицы news12
И сам php код с запросом. Не забудьте подключиться к вашей базе данных ;)

//подключение к БД
$servername = "localhost"; //это оставляете как есть
$username = "username"; //ваш логин от БД
$password = "password"; //ваш пароль от БД
$dbname = "myDB"; // название вашей базы данных, где находится сама таблица с домами

$conn = mysqli_connect($servername, $username, $password, $dbname);
// Если что-то введено неверно, то будет выведена ошибка
if (!$conn) {
die("Connection failed: " . mysqli_connect_error());
}


//сам запрос к БД
$sql = "SELECT id, name, img FROM news12"; // сам запрос..
$result = $conn->query($sql);
if (mysqli_num_rows($result) > 0) {
while($row = mysqli_fetch_assoc($result)) {
echo "<b>" . $row["name"]. "</b><br><img width='300px'src='" . $row["img"]. "'><br><a href='ссылка_на_статью'>прочитать статью тут</a><br><br>"; //вариант вывода. созданы отступы, теги img, a и br, которые сделают выведенную строку полноценной частью списка статей
}
} else {
echo "ничего нет"; // если в таблице ничего нет, то выведется это сообщение
}

mysqli_close($conn); //конец подключения


вот как будет выглядеть результат:
бостон атаковали трехногие инопланетные гиганские машины
как на php сделать новостную ленту или список статей?
прочитать статью тут


оказывается крым был римским
как на php сделать новостную ленту или список статей?
прочитать статью тут



Если у вас будет много статей, то можно уменьшить количесво выведенных статей, добавив в запрос слово LIMIT.
SELECT id, name, img FROM news12 LIMIT 3 // LIMIT 3, а именно цифра 3 будет означать, что нужно вывести не больше 3-х статей. (цифру можно менять)

Вообщем-то это всё. Оказалось, что сделать список статей или новостную ленту достатоно легко.
Выводится и название и картинка, а текст самой статьи остается невидимым и его можно будет увидеть на странице самой статьи.

Я предлагаю вам сделать вид списка статей красивее и более приятным для восприятия. Для этого можно подправить первоначальный код и добавить несколько css классов и стилей, которые я описывал в этой статье.


$sql = "SELECT id, name, img FROM news12"; // сам запрос..
$result = $conn->query($sql);
if (mysqli_num_rows($result) > 0) {
while($row = mysqli_fetch_assoc($result)) {
echo "<div class='contmeleft'>
<img width='140px' src='". $row["img"]. "' >
<p>" . $row["name"]. "</p>
</div>";//вариант вывода. выведем картинку и название
}
} else {
echo "ничего нет"; // если в таблице ничего нет, то выведется это сообщение
}



Еще нужно добвить css стили и оформление.

.contmeleft {
border-radius:8px; /* скругляем края блока*/
width: 320px; /* общая ширина блока*/
border: 1px solid #d9d9d9; /* рамка блока*/
overflow: hidden; /* скрывает возможность появления прокрутки блока. */
}

.contmeleft img {
width: 140px; /* ширина картинки 140 */
height: 90px; /* ысота картинки, от неё будет зависеть и размер общего блока */
object-fit: cover; /* обрезаем края картинки, если они не вместятся в блок */
object-position: 0 70; /* тоже обрезка краев */
margin-right: 10px;
float: left; /* важный момент. с помощью этого знаения, мы показывем браузеру, что блок должен соприкасаться со вторым блоком приемущественно с левой стороны */
}
.contmeleft p{
overflow-wrap: normal; /* показывает тексту, что он не должен заходить за границы блока */
word-wrap: normal;
word-break: normal; /* не поддерживает Opera12.14, значение keep-all не поддерживается IE, Chrome */
line-break: auto; /* нет поддержки для русского языка */
-webkit-hyphens: none; -ms-hyphens: none; hyphens: none; /* значение auto не поддерживается Chrome */
padding: 10px; /* отступ от рамки до текста - делает его красивее */
margin-left: 15px; /* отступ с левой стороны от блока с картинкой */
display: block; /* обознначает, что это не просто бесформенный текст, а блок внутри блока */
font-weight:bold; /* толщина текста - толстый */
font-size:14px; /* размер текста*/
margin: 2px 0 0 0; /* отступ от блока с текстом */
}


вообщем-то это всё.



Комментарии

Комментариев пока нет. Оставь тут свой комментарий или анекдот!


Комментарии к посту






Лучше недоесть, чем переесть. Поэтому кошка съедает мышку, а не наоборот.

Смешной афоризм


Norway
Хозяева гостиниц в средневековой Англии с целью отбить аппетит у лошадей своих постояльцев мазали им зубы свечным салом и таким образом экономили на корме.

[ Интересные факты о мире ]






Как сделать пробел (пропуск) в тексте? html css
Кнопка "открыть текст", которая скрывает часть текста, а после нажатия открывает.
Последние новости Выборг Петербург и окрестности факты и мир тунис Страшное и мистическое турция Тайны истории Крым Общество, мир про ссср






×

Рассказы из категории: Создание сайта (html,css,php,js)