myvovka
1.09.2017 - 09:16
Здравствуйте, уважаемые.
<?
$res = mysql_query("SELECT * FROM stats where visits>0 ORDER BY visits DESC limit 3");
if(mysql_num_rows($res)>0)
{
$num = 0;
while($cr=mysql_fetch_assoc($res))
{
$num++;
?>
Все выводится по шаблону.
<div><?=$cr['domen']?><br><a href ="http://<?=$cr['domen']?>" target='_blank'><?=$num?> место</a><br><em >Просмотров: <?=$cr['visits']?></em></div>
Заполняются и выводятся div последовательно друг за другом.
Как мне сделать, что бы данные из базы создавали три div по местам с идентификацией допустим (div class="num1",div class="num2",div class="num3"), для того, чтобы потом можно было выводить каждый div в разных местах страницы.
Игорь_Vasinsky
1.09.2017 - 15:06
данные положи в массив, а из массива по индексам - вытаскивай элементы где тебе нужно, в любом шаблоне
_____________
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
myvovka
1.09.2017 - 16:54
Игорь_Vasinsky
Я понимаю, что нужен массив, но совершенно не пойму как сделать.
Если не трудно, помогите.
walerus
1.09.2017 - 19:34
<?
$res = mysql_query("SELECT * FROM stats where visits>0 ORDER BY visits DESC limit 3");
if(mysql_num_rows($res)>0){
$my_new_array = array();
while($cr=mysql_fetch_assoc($res)){
$my_new_array[] = $cr;
}
foreach($my_new_array as $my_new_array_key => $my_new_array_value){
...
}
}
?>
Цитата |
Как мне сделать, что бы данные из базы создавали три div по местам |
Не совсем понятно что нужно сделать...
Нужно, что бы получалось три разных со своми индетенфикаторами div-а первый с данными о первом по списку допустим class="num1", второй о втором class="num2", третий о третьем class="num3". Все для того, что бы потом можно было каждый отдельный div оформить и позицироватьв любое место страницы.
walerus
1.09.2017 - 21:25
У тебя запрос в базу по визиторам с лимитом 3... Сейчас у тебя выводится по порядку 3 дива...
Цитата |
Нужно, что бы получалось три разных со своми индетенфикаторами div-а первый с данными о первом по списку |
с какими данными по какому списку?? в твоем "шаблоне" есть уже див, добавь ему класс и будет три разных дива со своими классами...
Или ты о чем то ином?, нарисуй схематично что нужно, от того что ты переписал первый пост, ясности не добавилось.
myvovka
1.09.2017 - 21:39
Вот схематично
картинкаВ шаблоне нельзя каждому дать свое имя - у них одно на всех, потому нельзя манипулировать ими по отдельности
walerus
3.09.2017 - 01:56
myvovkabootstrap используешь? или ...
Цитата |
<div><?=$cr['domen']?><br><a href ="http://<?=$cr['domen']?>" target='_blank'><?=$num?> место</a><br><em >Просмотров: <?=$cr['visits']?></em></div> |
вместо этого можно "дать имена-классы" каждому
<div class="MyClassName_<?=$num?>"><?=$cr['domen']?><br><a href ="http://<?=$cr['domen']?>" target='_blank'><?=$num?> место</a><br><em >Просмотров: <?=$cr['visits']?></em></div>
и ими уже управлять.
myvovka
3.09.2017 - 17:40
walerus, спасибо.
bootstrap не использовал, обходился html и css.
Не получается снова
http://mepic.ru/view/?id=720c80cd0915b400135c29739cafe49f картинка.
<div class="top7r">Пьедестал лидеров посещений.</div>
<style>
.MyClassName_1 {text-align:center;width:210px;height:180px;color:gold;margin:0 auto;}
.MyClassName_2 {text-align:center;width:210px;height:180px;color:red;float:left;margin-left:300px;}
.MyClassName_3 {text-align:center;width:210px;height:180px;color:blue;float:right;margin-right:300px;}
</style>
<?
$res = mysql_query("SELECT * FROM stats where visits>0 ORDER BY visits DESC limit 3");
if(mysql_num_rows($res)>0)
{
$num = 0;
while($cr=mysql_fetch_assoc($res))
{
$num++;
?>
<div class="MyClassName_1"><?=$cr['domen']?><br><?=$num?> место<br><a href ="http://<?=$cr['domen']?>" target='_blank'><img src='http://mini.s-shot.ru/1024x600/150/jpeg/?http://<?=$cr['domen']?>' class="rrr"></a><br><em >Просмотров: <?=$cr['visits']?></em></div>
<div class="MyClassName_2"><?=$cr['domen']?><br><?=$num?> место<br><a href ="http://<?=$cr['domen']?>" target='_blank'><img src='http://mini.s-shot.ru/1024x600/150/jpeg/?http://<?=$cr['domen']?>' class="rrr"></a><br><em >Просмотров: <?=$cr['visits']?></em></div>
<div class="MyClassName_3"><?=$cr['domen']?><br><?=$num?> место<br><a href ="http://<?=$cr['domen']?>" target='_blank'><img src='http://mini.s-shot.ru/1024x600/150/jpeg/?http://<?=$cr['domen']?>' class="rrr"></a><br><em >Просмотров: <?=$cr['visits']?></em></div>
<?
}
}
?>
</div>
Может, что делаю не так?
У меня была задумка делать каждый div в отдельности, но получился только первый, задавал limit1 ,cоздавал div class="mmm1", он заполнялся данными из базы. Вот только не получилось так же просто, через limit3, получить div class="mmm2", div class="mmm3". Интересно, а через массив можно вытянуть данные из базы конкретно - это будет блок1, блок2, блок3. Читал циклы, массивы, но так и не понял, что к чему.