За последние 24 часа нас посетили 20806 программистов и 1717 роботов. Сейчас ищут 1397 программистов ...

Вывод новостей

Тема в разделе "PHP для новичков", создана пользователем kritskiy, 4 фев 2014.

  1. kritskiy

    kritskiy Новичок

    С нами с:
    19 янв 2014
    Сообщения:
    18
    Симпатии:
    0
    Подскажите хотел сделать вывод новостей на сайт так что-бы выводился код и картинки не сплошным текстом а так как надо с мускуль базы помогите.
    <html>
    <head>

    <h1>Новости</h1>

    <?php
    include_once ('vhod_ad.php');
    //Сделаем навигацию для сайта
    function nav_page($sql='',$ipp=10){
    $out = '';
    if ($sql!=''){//проверка на не пустой запрос
    $query = mysql_query($sql);
    $kol = mysql_num_rows($query);//кол-во выбранных записей
    if (($query)AND($kol)){
    $out = '<table width="100%" align="CENTER"><tr><td align="CENTER">[<a href=?act=new&p=1>1</a>] ';
    //формируем ссылки на страницы
    for ($i=1; $i<($kol/$ipp); $i++){
    $pp = $i+1;
    $out .= '[<a href=?act=new&p='.$pp.'>'.$pp.'</a>] ';
    }
    $out .= '</td></tr></table>';
    }
    }
    return $out;
    }
    //ВЫВОД НОВОСТЕЙ НА САЙТ
    function news(){
    $out = '';
    if (isset($_GET['id'])){
    //Здесь необходимо обработать $_GET['id'], так как это уязвимость SQL инъекция
    $sql = 'SELECT * FROM news WHERE id = '.$_GET['id'].'';
    $qur = mysql_query($sql); $kol = mysql_num_rows($qur);
    }
    else{
    $k_p = 15; if (isset($_GET['p'])) $s_p = (int)$_GET['p']-1; else $s_p = 0;
    $nav = nav_page('SELECT * FROM news',$k_p);
    $sql = 'SELECT * FROM news ORDER BY data_c DESC LIMIT '.($s_p*$k_p).', '.$k_p.'';
    $qur = mysql_query($sql); $kol = mysql_num_rows($qur);
    if ($qur && $kol){
    $out .= '<table cellpadding="0" cellspacing="10" border="0" width="0%">';
    while($rez = mysql_fetch_assoc($qur)){
    $out .= '<tr><td align="center"><b>'.date('H:i d.m.Y',$rez['data_c']).'</b></td>';
    $out .= '<td>'.foreach($rez['title']).'</a></td></tr>';
    }
    $out .= ''.$nav.'</td></tr>';
    $out .= '</table>';
    }
    }
    return $out;
    }
    echo news();
    ?>
    $out .= '<td>'.foreach($rez['title']).'</a></td></tr>'; что-то с ней не так надо исправить на html тег не пойму как это реализовать чтобы с синтаксисом не было ошибок. ПОМОГИТЕ
     
  2. kritskiy

    kritskiy Новичок

    С нами с:
    19 янв 2014
    Сообщения:
    18
    Симпатии:
    0
    Что не знает не кто или не будут помогать? я понимаю что это говно кодище но надо начинать с малого. ПОМОГИТЕ
     
  3. imoisey

    imoisey Активный пользователь

    С нами с:
    27 янв 2014
    Сообщения:
    113
    Симпатии:
    0
    Вам никто не помогает, потому что ваша проблема на столько серьезна, что ее лень кому-либо решать. Я могу только посоветовать вам сесть и переписать ваш код, вдумываясь в каждую строчку. Чтобы не было вот-таких проблем:

    Код (Text):
    1.  
    2. $out .= '<td>'.foreach($rez['title']).'</a></td></tr>';
    Ну и прочитайте хотя бы мануал про foreach http://php.ru/manual/control-structures.foreach.html
     
  4. kritskiy

    kritskiy Новичок

    С нами с:
    19 янв 2014
    Сообщения:
    18
    Симпатии:
    0
    Не ну а по сути если даже впишу в массив толку от этого? Дайте совет как можно через php залезть в базу news взять от туда таблицу text_f и вывести на страницу в виде html я буду очень признателен если подскажите.
     
  5. unrecovered

    unrecovered Новичок

    С нами с:
    24 янв 2014
    Сообщения:
    45
    Симпатии:
    0
    "Это называется cms"(с) igordata

    :D
     
  6. artoodetoo

    artoodetoo Суперстар
    Команда форума Модератор

    С нами с:
    11 июн 2010
    Сообщения:
    11.114
    Симпатии:
    1.244
    Адрес:
    там-сям
    это тебе книжки надо. или видеукурсы попова ;)
    здесь есть человек пять, кто мог бы тебе рассказать, но это значит фактически сделать за тебя, а ты тупо скопируешь и останешся дураком. это плохой сценарий. а хороший — почитать, попробовать, научитсья. а на форум заходить с маленькими и конкретными вопросами.
     
  7. kritskiy

    kritskiy Новичок

    С нами с:
    19 янв 2014
    Сообщения:
    18
    Симпатии:
    0
    Ну дак есть основа зашел узнать что не так а вы сказали переписать надо дак и все я растерялся что и как потому и спрашиваю(
     
  8. imoisey

    imoisey Активный пользователь

    С нами с:
    27 янв 2014
    Сообщения:
    113
    Симпатии:
    0
    Вы просите, помочь сделать вывод новостей из БД на основе ваше кода?! Нет простите, вы лучше сами. Я лишь могу помочь вам подсказать:

    Код (Text):
    1.  
    2.  /// Соединение с БД установлено
    3.  
    4.  $id_news = (int)$_GET['id']; // самый простой способ защиты
    5.  $db_query = mysql_query("SELECT * FROM news WHERE id={$id_news}");
    6.  if(mysql_num_rows($db_query) != 0) {
    7.     $output = '';
    8.     while($news = mysql_fetch_assoc($db_query)) {
    9.         $output .= "<h1>{$news[title]}</h1>";
    10.         $output .= "<p>{$news[content]}</p>";
    11.     } // End While
    12.  }
    И еще, когда вы пишите что-то, не пишите весь код сразу, проверяйте поэтапно. Легче будет находить ошибки.