[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: новости для сайта
pro100deadly
Ув. пользователи сколько не находил новостей всё они то с ошибками то ещё что нибудь...

напишите мне простой пример(пжл).

Подключение к базе, запрос в таблицу news и вывод///

пытался написать сам но не чего не выходит не понимаю я так ещё сильно php sad.gif
Игорь_Vasinsky
простым примером не обойдёшься. писать и писать. нет стока время, да и потом - завалите вопросами biggrin.gif на много вопросов. Вот и подумайте - кто нить тапкого счастья себе желает?

_____________
HTML, CSS (Bootstrap), JS(JQuery, ExtJS), PHP, MySQL, MSSql, Posgres, (TSql, BI OLAP, MDX), Mongo, Git, SVN, CodeIgnater, Symfony, Yii 2, JiRA, Redmine, Bitbucket, Composer, Rabbit MQ, Amazon (SQS, S3, Transcribe), Docker
pro100deadly
Игорь_Vasinsky
Я не думаю что там так много, так как примеры видел но когда делал сам было всё в ошибках sad.gif
Игорь_Vasinsky
ну смотри - вот те алгоритм - набрасай по нему код

1. Форма для добавление новости (в БД id - auto_increment)

таблица БД

id - auto_increment
title - Заголовок новости
public - время добавления (DATETIME)
anonce - анонс новости
fulltext - текст полной новости

textarea для anonce и fulltext - со встроенными визуальными редакторами (например tinyMCE - но можно и попроще)

После заполнения формы - данные должны пройти валидацию на сервере - и записаны в базу данных.
-------------------------------------------
Вот это только форма добавления (для админа)

как сделаешь - разбор полётов

-----------------------
след шаг - редактирование новости (с поиском нужной новости по заголовку или дате публикации)

_____________
HTML, CSS (Bootstrap), JS(JQuery, ExtJS), PHP, MySQL, MSSql, Posgres, (TSql, BI OLAP, MDX), Mongo, Git, SVN, CodeIgnater, Symfony, Yii 2, JiRA, Redmine, Bitbucket, Composer, Rabbit MQ, Amazon (SQS, S3, Transcribe), Docker
pro100deadly
Игорь_Vasinsky
Хмм мне не нужно запись, редактирование... Мне нужен только вывод новостей...

А запись, и редактирование я смогу сделать по выводу

Ну вот начало:

<?php 
$mysql = new mysql ("Localhost", "root", "pass", "news"); // коннект
$mysql->query (" SER NAMES 'utf8'"); //кодировка
$mysql->query (" SELECT * FROM `news`"); // запрос на таблицу
?>

/// я не знаю вот тут как дальше, то есть как выполняется вывод информации заспинные в таблице news... То есть какую переметную и т.д
Игорь_Vasinsky
ну во первых - используй mysqli
во-вторых - одним коннектом не отделаешься.

у тебя уже структура БД с таблицей готовы?
данные в них есть?

_____________
HTML, CSS (Bootstrap), JS(JQuery, ExtJS), PHP, MySQL, MSSql, Posgres, (TSql, BI OLAP, MDX), Mongo, Git, SVN, CodeIgnater, Symfony, Yii 2, JiRA, Redmine, Bitbucket, Composer, Rabbit MQ, Amazon (SQS, S3, Transcribe), Docker
pro100deadly
Игорь_Vasinsky
сори за mysql, просто писал не заметил smile.gif


База данных готовая:

В таблице news:

id, title, message, data, avtor, img

данные есть
pro100deadly
Вот что у меня есть но выводит ошибку:
простой пример:
<?php
$host="localhost";
$db_name="news";
$db_user="root";
$db_pass="";
@mysql_connect($host,$db_user,$db_pass);
@mysql_select_db($db_name);
$result=mysql_query('SELECT * FROM `news`');
while($row=mysql_fetch_array($result))
{
echo "<br>"$row.['title']."<br>"
}
?>


Parse error: syntax error, unexpected T_VARIABLE, expecting ',' or ';'
Игорь_Vasinsky
Найди одно отличчие
Цитата
echo "<br>"$row.['title']."<br>"

echo "<br>"$row.['title']."<br>";


Цитата
mysql_fetch_array

mysql_fetch_assoc - посмотри отличия в мануале

_____________
HTML, CSS (Bootstrap), JS(JQuery, ExtJS), PHP, MySQL, MSSql, Posgres, (TSql, BI OLAP, MDX), Mongo, Git, SVN, CodeIgnater, Symfony, Yii 2, JiRA, Redmine, Bitbucket, Composer, Rabbit MQ, Amazon (SQS, S3, Transcribe), Docker
pro100deadly
Игорь_Vasinsky хмм не стал я сам писать, не могу понять что и как....

но вот нашёл такой код, он работает на ура, всё выводит так как мне надо :)

<?php

//подключим config.php
include ("includes/confignews.php");

//получаем номер страницы из строки запроса
$page = (int)substr($_GET['page'],0,2);

//если нет номера страницы задаем 0
if (!empty($page)) $page = ($page-1); else $page = '0';

//вычислим количество строк в таблице
$query_all_rows = mysql_query("SELECT * FROM $table");

//вычислим количество страниц P.S. ceil() - округляет число в большую сторону до ближайшего целого
$total_num_pages = ceil(mysql_num_rows($query_all_rows)/$per_page);

//проверим чтобы введенный номер страницы не был больше количества страниц в таблице и определим начальную строку
if($page >= $total_num_pages) {

$start = 0;

$page = $total_num_pages;

}
else {

$start = $page*$per_page;

}

//запрашиваем из базы нужные строки
$query_art = mysql_query("SELECT * FROM $table LIMIT $start,$per_page");

//выводим результат
for($i = 0; $i < mysql_num_rows($query_art); ++$i) {

//формируем массив данных
$array = mysql_fetch_array($query_art);


echo '<table width=100% border=0 cellspacing=0 cellpadding=0>
<tr>
<td class=news_head><div class=title_news>'
. $array['tittle'] .'</div></td>';
echo '</tr>
<tr>
<td class=news_fon>
<table border=0 cellspacing=0 cellpadding=0>
<tr>
<td class=img_news>'
;
echo '<img class=images_news src=/style/img/news/'.$array['img_news'].'>';
echo '</td>';
echo '<td class=text_news valign=top><p>'.$array['message'].'</p></td>
</tr>
</table>
</td>
</tr>'
;
echo '<tr>
<td class=news_bottuon><div class=title_bottion>Добавил: '
.$array['avtor'].' | Дата: '.$array['data']. ' | Категория: '.$array['kategor']. ' |';
echo ' <a href=# title=Комментариев>5</a> <img title=Комментарии src=style/images/icons/news/com.png > | Полная новсть</div></td>
</tr>
</table>'
;
echo '<br />';

}
//выводим блок с номерами страниц, если количество страниц больше одной
if($total_num_pages > '1') {

echo '<div class="pages">';

//получаем адрес страницы
$get_url = $_SERVER['REQUEST_URI'];

//чтобы не выводить все номера страниц, выводим только 5 ближайших
$page_start_for = ($page-1);
$page_end_for = ($page_start_for+4);

//проверим их на наличие
if($page_start_for < '1') $page_start_for = '1';
if($page_end_for > $total_num_pages) $page_end_for = $total_num_pages;

//когда страницы "1" не видно, добавляем кнопку "первая" и кнопку "влево"
if(($page+1) > 3) {

echo '<a href="index.php" class="page">первая</a>';

echo '<a href="index.php?page='. $page .'" class="page">&larr;</a> ...&nbsp';

}

//выводим 5 номеров страниц
for($i = $page_start_for;$i <= $page_end_for;++$i) {

if (($i-1) == $page) echo '<div class="page_selected">' . $i . '</div>';

else echo '<a href="index.php?page=' . $i . '" class="page">' . $i . '</a>';

}

//если не видно последней страницы, добавляем кнопку "вправо" и кнопку "последняя"
if(($page+1) < ($total_num_pages-2)) {

echo '&nbsp... <a href="index.php?page='. ($page+2) .'" class="page">&rarr;</a>';

echo '<a href="index.php?page='. $total_num_pages .'" class="page">последняя</a>';

}

//закрываем блок страниц
echo '</div>';
}
?>


А вот тут появляется вопрос, мне надо сделать так что бы была ещё и полная новость с генерацией страницы, если ли примеры таких реализаций и где найти ?
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.