Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770
Форумы портала PHP.SU :: Версия для печати :: рандомный текст
Форумы портала PHP.SU » » Вопросы новичков » рандомный текст

Страниц (2): [1] 2 »
 

1. bareiro - 05 Декабря, 2011 - 17:18:48 - перейти к сообщению
привет всем. ребята помогите пожалуйста. вот как сделоть так чтоб у меня статьи например из базы данных выводились рандомно. опешите более подробно я чайник. вот у меня есть база 'base' таблица 'table' и колонка в таблице текст text и нужно чтоб текст который там рапдомно выводился на главной стр. кто поможет буду рад кинуть денежку на кошелек
2. Данил_123 - 05 Декабря, 2011 - 17:52:44 - перейти к сообщению
Рандого(rand)? Только нужно будет будет колонку id сделать
PHP:
скопировать код в буфер обмена
  1. // тут коннект к серверу
  2. // тут выбор базы
  3. $count = mysql_query("SELECT count(text) FROM table"); // количество записей
  4. $query =mysql_query("SELECT text FROM table WHERE id=".rand(1, $count)); // запрос
  5. while($row = mysql_fetch_array($query)){
  6. echo $row[id].$row[text]."<br />"; // вывод
  7. }
3. CenapaTop - 05 Декабря, 2011 - 18:24:16 - перейти к сообщению
.Данил_123
если id - автоинкремент, решение не подойдет.
4. DlTA - 05 Декабря, 2011 - 18:45:11 - перейти к сообщению
как то так
Спойлер (Отобразить)
5. bareiro - 05 Декабря, 2011 - 19:25:43 - перейти к сообщению
<?
$resSel = mysql_query("SELECT `id` FROM table");
while($row = mysql_fetch_array($resSel)){
$idPage[] = $row ['id'];
}
// $countPage количествао статей на вывод
$dispayPageId = array();
for($i=0;$i<$countPage;$i++){
$dispayPageId[] = rand(1,count($idPage))
}
$dispayPageId = implode(", ",$dispayPageId);

$query =mysql_query("SELECT * FROM table WHERE id IN ($dispayPageId)";
while($row = mysql_fetch_array($query)){
echo $row[id].$row[text]."<br />"; // вывод
}



в этом случае ошибки на строке 10 и13 как исправить????
6. Данил_123 - 05 Декабря, 2011 - 20:02:47 - перейти к сообщению
bareiro оформите кодв в [php!] без "!"..
7. DlTA - 05 Декабря, 2011 - 20:06:22 - перейти к сообщению
на 10-й доставить ;

на 13 перед ; закрыть скобку
8. Данил_123 - 05 Декабря, 2011 - 20:07:53 - перейти к сообщению
DlTA количество статей на вывод самому указывать надо?
9. DlTA - 05 Декабря, 2011 - 20:31:20 - перейти к сообщению
ну да
10. Данил_123 - 05 Декабря, 2011 - 20:35:45 - перейти к сообщению
DlTA а почему же не воспользоваться count'ом? Ведь это пока дома делаешь можно свободно следить.. А представте проект и удачный..
11. DlTA - 05 Декабря, 2011 - 20:37:26 - перейти к сообщению
потому что count вернет вам число статей
а в данном случае подразумевается то количество которое надо вывести на сайте
а это может быть и 1 и 10 и любое другое число
(Добавление)
там кстати у меня логическая ошибка

вот исправленный вариант (Отобразить)
12. bareiro - 05 Декабря, 2011 - 20:45:59 - перейти к сообщению
// $countPage количествао статей на вывод
это типо сколько статей выводить на стр???
если мне надо 1 то нужно так написать
for($i=0;$i<$countPage=1;$i++){
??????????
13. EuGen - 05 Декабря, 2011 - 20:46:23 - перейти к сообщению
Данил_123
Нельзя, потому что id не обязаны подряд идти.
14. Данил_123 - 05 Декабря, 2011 - 20:47:36 - перейти к сообщению
DlTA пишу не проверяя.. Количество статей можно ограничить циклом.. Насколько понял ему нужна одна статья из всех.. Вот почему нужен каунт
15. bareiro - 05 Декабря, 2011 - 20:48:00 - перейти к сообщению
а тогда как???

 

Powered by ExBB FM 1.0 RC1