Здравствуйте, помогите пожалуйста, я в PHP дуб. Мне необходимо вывести текст новостей из базы данных. [sql]CREATE TABLE `news` ( `id` int(255) NOT NULL auto_increment, `title` varchar(250) character set utf8 NOT NULL default '', `date` date NOT NULL default '0000-00-00', `tags` varchar(150) character set utf8 NOT NULL, `comment` char(2) character set utf8 NOT NULL, `messege` text character set utf8 NOT NULL, PRIMARY KEY (`id`) ) ENGINE=MyISAM DEFAULT CHARSET=cp1251 AUTO_INCREMENT=4 ; -- -- Дамп данных таблицы `news` -- INSERT INTO `news` VALUES(3, 'Название новости', 'число', 'теги', 'ok', 'текст который необходимо вывести'); [/sql] На странице нужно вывести текст, обрезать его до 200 символов и выводить по три новости на страницу. Помогите это реализовать.
Скрипт довольно простой вот пример, разберетсь PHP: <?php //Линкуемся с БД mysql_connect("localhost","root",""); mysql_select_db("base"); //Формируем запрос $query = "SELECT * FROM `news`"; $result = mysql_query($query); //Получаем массив по ячейкам while ($row = mysql_fetch_array($result)){ //Форматируем вывод так как хочется (сами уже там нахимичите с текстом) $message = $row['message']; //Обратилсь к значению столбца message. Цикл будет выводить то что будет в данном цикле все строчки БД } ?>
создал тему, не найдя этой! но ближе к телу: есть запрос PHP: <?php $res = mysql_query("SELECT MAX(view) FROM Name_Table"); $row = mysql_fetch_row($res); $total = $row[0]; // максимально просмотров echo $total; ?> как вывести полностью строку, чтобы было так: title l date l view пытался с помощью приведенного примера с помощью While, не получается!
$res = mysql_query("SELECT view, date, title FROM Name_Table ORDER BY view DESC LIMIT 1"); $row = mysql_fetch_row($res); $total = $row[0]; // максимально просмотров echo $total['view'] . ' ' . $total['date'] . ' ' . $total['title'];
tommyangelo, это так, но выдает не название статьи и дату, а в 3х колонках вставляются лишь цифры просмотра!
haotichni я может протупил, давно уже чистый mysql_ не использую))) Попробуй так - res = mysql_query("SELECT view, date, title FROM Name_Table ORDER BY view DESC LIMIT 1"); $total = mysql_fetch_row($res); echo $total['view'] . ' ' . $total['date'] . ' ' . $total['title'];
значит так $res = mysql_query("SELECT view, date, title FROM Name_Table ORDER BY view DESC LIMIT 1"); $total = mysql_fetch_array($res); echo $total['view'] . ' ' . $total['date'] . ' ' . $total['title'];
выдает ошибку это строка PHP: $total = mysql_fetch_array($res); да, грешен, но не на столько же![/quote]
$res = mysql_query("SELECT view, date, title FROM Name_Table ORDER BY view DESC LIMIT 1") or die(mysql_error()); И код ошибки в студию
PHP: <?php $res = mysql_query("SELECT view, date, title FROM NAME_TABLE ORDER BY view DESC LIMIT 1") or die(mysql_error()); $total = mysql_fetch_array($res); echo $total['view'] . ' ' . $total['date'] . ' ' . $total['title']; // выбрать нужные столбцы вывода // ?> вот так правильно! спасибо огромное!
как достать последнее id из таблицы? надо в статистике сделать : Последнее письмо: *** *** - название письма с ссылкой на него! таблица: id name email text date view
Спасибо огромное! Если интересно то замутил телегу полностью! Телега везет с собой последнее письмо и адрес на него! В итоге выглядит так! PHP: <?php $res_email = mysql_query("SELECT * FROM Name_table ORDER BY id DESC LIMIT 1") or die(mysql_error()); if (!$res_email) { echo "<p>Запрос на подключение к базе данных не прошел. <br> Код ошибки: </p>"; exit (mysql_error()); } if (mysql_num_rows($res_email) > 0) {$row_email = mysql_fetch_array ($res_email);} else {echo "Информация из базы не может быть извлечена. В таблице нет записей!"; exit (); } do { printf ("<a href='view_email.php?id=%s'> <strong>Имя: </strong>%s | <strong>E-Mail:</strong> %s | <strong>Название:</strong> %s | <strong>Дата: </strong>%s</a><br> </p>", $row_email['id'], $row_email['name'], $row_email['email'], $row_email['text'], $row_email['date']); } while ($row_email = mysql_fetch_array ($res_email)); ?>
ошибочка! на локальном виде все работает отлично! как переношу на сайт так трудности! PHP: Warning: mysql_fetch_row() expects parameter 1 to be resource, boolean given in /home/home/c/clinic/WWW/administrator/new.php on line 57 в чем может быть проблема?
haotichni проблема в том, что если происходит ошибка в запросе, то вместо mysql resource возвращается false, который ты не проверяя подаёшь функции mysql_fetch_row()
haotichni не путай запрос и соединение с базой данных. делай запрос так: PHP: <?php $query = mysql_query('SELECT ...') or die(mysql_error()); и сразу видно будет ошибку в запросе, если есть
спасибо! правда что клин клином вышибают! все дело в регистре! еще вопрос: функция MAX() у меня считывает только первую цифру, а не число целиком! допустим 2 статьи ... в одной просмотров 174, а во второй 94... и он выдает, что максимум просмотра именно 94! есть путь решения?
спасибо! правда что клин клином вышибают! все дело в регистре! еще вопрос: функция MAX() у меня считывает только первую цифру, а не число целиком! допустим 2 статьи ... в одной просмотров 174, а во второй 94... и он выдает, что максимум просмотра именно 94! есть путь решения? в БД это поле varchar... в этом проблема? а на что изменить можно?