PHP . SU
Программирование на PHP, MySQL и другие веб-технологии
Описание: случайная выборка из базы на страницу php
Поиск в теме | Версия для печати
August_II
Отправлено: 27 Февраля, 2015 - 08:49:39
Новичок
Покинул форум
Сообщений всего: 49
Дата рег-ции: Нояб. 2014
Помог: 0 раз(а)
Здравствуйте!
помогите переделать код.
PHP:
скопировать код в буфер обмена
<?PHP
$dbhost = "localhost" ;
$dblogin = "root" ;
$dbpassword = "" ;
$db = "123" ;
$site = mysql_pconnect ( $dbhost , $dblogin , $dbpassword ) or
die ( "Подключение к серверу не установлено, проверьте ваш логин или пароль" ) ; ?>
<!doctype html>
<html>
<head>
<meta charset="windows-1251">
<title>Случайная выборка из MySQL</title>
</head>
<body>
<?PHP
$num_rand = 10 ;
for ( $m = 0 ; $m < $ligne ; $m ++ )
{
}
for ( $i = 0 ; $i < count( $r ) ; $i ++ )
{
$article = mysql_query ( "SELECT `img` FROM `tbl_123` WHERE `id`=\" " . $id . "\" LIMIT 1" ) ; ?>
<div><img src="<?= $name_article ?> " /></div>
<?PHP
}
?>
</body>
</html>
нужно что бы выводилось не только одно значение $name_article, а несколько. Что то типа такого
Помогите плиззз.
August_II
Отправлено: 27 Февраля, 2015 - 12:49:08
Новичок
Покинул форум
Сообщений всего: 49
Дата рег-ции: Нояб. 2014
Помог: 0 раз(а)
GoDr пишет: Не совсем понятна логика (мне не понятна).. Ты получаешь все данные из базы. потом получаешь случайную запись и выводишь? так?
А может проще сразу получить из базы определённое количество записей в случайном порядке?
Ну честно говоря, это не мой код, я в нем тоже не очень разобрался, что за вынос мозга.
Подскажи как правильно
GoDr
Отправлено: 27 Февраля, 2015 - 13:11:46
Посетитель
Покинул форум
Сообщений всего: 446
Дата рег-ции: Янв. 2015
Откуда: Тамбов
Помог: 17 раз(а)
August_II , запомни, ну нет уже MySQL, нет(!) Это как "запорожец": нет такой машины уже больше 20 лет, а она всё равно иногда появляется
CODE (
htmlphp ):
скопировать код в буфер обмена
<? php
$dbhost = "localhost" ;
$dblogin = "root" ;
$dbpassword = "" ;
$db = "123" ;
$mysqli = new mysqli( $dbhost , $dbuser , $dbpassword , $db ) ;
?>
<! doctype html>
< html>
< head>
< meta charset= "windows-1251" >
< title> Случайная выборка из MySQL</ title>
</ head>
< body>
<? php
$num_rand = 10 ;
$sql = "SELECT `img` FROM `tbl_123` ORDER BY RAND() LIMIT " . $num_rand ;
if ( $result = $mysqli -> query ( $sql ) ) {
while ( $row = $result -> fetch_assoc ( ) ) {
echo '<div><img src="' . $row [ 'name' ] . '" /></div>' ;
}
$result -> free ( ) ;
}
?>
</ body>
</ html>
Кстати, от куда такой дурацкий код выкопал? Выкинь! ;)
-----Система управления веб-содержимым Lotos CMS
August_II
Отправлено: 27 Февраля, 2015 - 13:51:10
Новичок
Покинул форум
Сообщений всего: 49
Дата рег-ции: Нояб. 2014
Помог: 0 раз(а)
GoDr пишет: August_II , запомни, ну нет уже MySQL, нет(!) Это как "запорожец": нет такой машины уже больше 20 лет, а она всё равно иногда появляется
CODE (
htmlphp ):
скопировать код в буфер обмена
<? php
$dbhost = "localhost" ;
$dblogin = "root" ;
$dbpassword = "" ;
$db = "123" ;
$mysqli = new mysqli( $dbhost , $dbuser , $dbpassword , $db ) ;
?>
<! doctype html>
< html>
< head>
< meta charset= "windows-1251" >
< title> Случайная выборка из MySQL</ title>
</ head>
< body>
<? php
$num_rand = 10 ;
$sql = "SELECT `img` FROM `tbl_123` ORDER BY RAND() LIMIT " . $num_rand ;
if ( $result = $mysqli -> query ( $sql ) ) {
while ( $row = $result -> fetch_assoc ( ) ) {
echo '<div><img src="' . $row [ 'name' ] . '" /></div>' ;
}
$result -> free ( ) ;
}
?>
</ body>
</ html>
Кстати, от куда такой дурацкий код выкопал? Выкинь! ;)
Спасибо братиш!!!
Заработало.
Поменял вот это
на это
Теперь подставляет всё что нужно и куда нужно.
Там кстати $mysqli = new mysqli($dbhost, $dbuser, $dbpassword, $db);
а вместо $dbuser нужно $dblogin
а откапал на просторах интернета, причем написан был 11 января сего года
GoDr
Отправлено: 27 Февраля, 2015 - 13:54:55
Посетитель
Покинул форум
Сообщений всего: 446
Дата рег-ции: Янв. 2015
Откуда: Тамбов
Помог: 17 раз(а)
August_II , ну коль умеешь заменять и знаешь где, то ты не безнадёжен
August_II пишет: а вместо $dbuser нужно $dblogin
это дело вкуса.. но везде это называется пользователь, а не логин
(Отредактировано автором: 27 Февраля, 2015 - 13:55:12)
-----Система управления веб-содержимым Lotos CMS
LIME
Отправлено: 27 Февраля, 2015 - 15:41:00
Активный участник
Покинул форум
Сообщений всего: 10732
Дата рег-ции: Нояб. 2010
Помог: 322 раз(а)
GoDr пишет: ну нет уже MySQL, нет(!)
ого
а давно?
отстаю я от жизни
GoDr
Отправлено: 27 Февраля, 2015 - 16:29:48
Посетитель
Покинул форум
Сообщений всего: 446
Дата рег-ции: Янв. 2015
Откуда: Тамбов
Помог: 17 раз(а)
LIME , да всё ты понял
Конечно есть и MySQL и драйвер mysql!!!!! Мы же говорим о БД применительно к PHP... А в коде используется старый драйвер...
Просто люди откапывают такой древний код, что чтобы его хотя бы проверить или подправить, нужно переподключать сервер на старенький PHP
(Отредактировано автором: 27 Февраля, 2015 - 16:36:22)
-----Система управления веб-содержимым Lotos CMS
LIME
Отправлено: 27 Февраля, 2015 - 17:04:24
Активный участник
Покинул форум
Сообщений всего: 10732
Дата рег-ции: Нояб. 2010
Помог: 322 раз(а)
И ничего особо страшного на самом деле
Разница в основном в поддержке транзакционности innodb
Тем кто юзает mysql это до фиолетовой лампочки
(Добавление)
Ну и в препаред
Это туда же для них
(Добавление)
И кстати order by rand совсем не лучшее решение для больших таблиц
Мягко говоря
(Добавление)
Тут это много раз обсуждалось и не только тут
Известная такая задачка
Решение зависит от частностей но как правило лучше использовать дополнительное индексное поле без "дыр"
GoDr
Отправлено: 27 Февраля, 2015 - 17:24:51
Посетитель
Покинул форум
Сообщений всего: 446
Дата рег-ции: Янв. 2015
Откуда: Тамбов
Помог: 17 раз(а)
LIME пишет: И кстати order by rand совсем не лучшее решение для больших таблиц
Мягко говоря
Ну даже не мягко говоря
Как говориться, чтобы голову не загружать, самый простой вариант....
С другой стороны если в файле идёт сначала
а потом
то .....
-----Система управления веб-содержимым Lotos CMS
LIME
Отправлено: 27 Февраля, 2015 - 17:29:21
Активный участник
Покинул форум
Сообщений всего: 10732
Дата рег-ции: Нояб. 2010
Помог: 322 раз(а)
Ну тогда уж если следовать этой логике то и цикл запросов пойдет и полная выборка нормально
Ну пусть будет ранд в запросе
типа сократили код
(Отредактировано автором: 27 Февраля, 2015 - 17:30:10)
Поиск в теме | Версия для печати
Страниц (1): [1]
Сейчас эту тему просматривают: 0 (гостей: 0, зарегистрированных: 0)
« Вопросы новичков »
Все гости форума могут просматривать этот раздел. Только зарегистрированные пользователи могут создавать новые темы в этом разделе. Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.
Powered by ExBB FM 1.0 RC1. InvisionExBB