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

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/topic.php on line 737
Форумы портала PHP.SU :: Не выводятся данные из Mysql

 PHP.SU

Программирование на PHP, MySQL и другие веб-технологии
PHP.SU Портал     На главную страницу форума Главная     Помощь Помощь     Поиск Поиск     Поиск Яндекс Поиск Яндекс     Вакансии  Пользователи Пользователи


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

> Описание: Не выводятся данные из Mysql
vlggera
Отправлено: 27 Сентября, 2011 - 15:07:29
Post Id


Новичок


Покинул форум
Сообщений всего: 15
Дата рег-ции: Сент. 2011  


Помог: 0 раз(а)




Ребята помогите не могу понять в чем дело...Суть такова - есть база исполнителей и их композиций... На страницу по запросу выводим исполнителя и его композиции..если их много, то идет постраничный вывод(на страницу 10 композиций)..проблема в том что на первой странице все нормально и в цикле все композиции выводятся,но переходя на вторую странцу выдает ошибку mysql_fetch_array(). А не выводит потому что 1 страница передает почему то только одно слово из имени певца(в имени через пробел 3). Не могу понять почему обрезается имя.
<?
include("../blocks/bd.php");

if (isset($_GET['name'])) {$name = $_GET['name'];}

?>
<?
$result77 = mysql_query("SELECT str FROM options_music", $db);
$myrow77 = mysql_fetch_array($result77);
$num = $myrow77["str"];

@$page = $_GET['page'];
$result00 = mysql_query("SELECT COUNT(*) FROM music WHERE name='$name'");
$temp = mysql_fetch_array($result00);
$posts = $temp[0];
$total = (($posts - 1) / $num) + 1;
$total = intval($total);
$page = intval($page);

if(empty($page) or $page < 0) $page = 1;
if($page > $total) $page = $total;
$start = $page * $num - $num;
$result = mysql_query("SELECT * FROM music WHERE name='$name' ORDER BY id LIMIT $start, $num",$db);
$myrow = mysql_fetch_array($result);

do
{
printf("<table width='480'>
<tr>
<td width='174' align='left'><span class='стиль4'>%s</span></td>
<td width='220' align='left'>
<object type='application/x-shockwave-flash' data='../blocks/player.swf' id=audioplayer1 height=20 width=220>
<param name=movie value='../blocks/player.swf'></param>
<param name=FlashVars value='playerID=1&soundFile=%s'></param>
<param name=quality value=high></param>
<param name=menu value=false></param>
<param name=wmode value=transparent></param>

</object
></td>
<td width='70'><div align='center'>%sСкачать</div></td>
</tr>
</table><br>",$myrow['title'],$myrow['play'],$myrow['download']);

}
while($myrow = mysql_fetch_array($result));

if ($page != 1) $pervpage = '<a href=viem_song?name='.$name.'&page=1>Первая</a> | <a href=viem_song.php?name='.$name.'&page='. ($page - 1) .'>Предыдущая</a> | ';

if ($page != $total) $nextpage = ' | <a href=viem_song.php?name='.$name.'&page='. ($page + 1) .'>Следующая</a> | <a href=viem_song.php?name='.$name.'&page=' .$total. '>Последняя</a>';

if($page - 5 > 0) $page5left = ' <a href=viem_song.php?name='.$name.'&page='. ($page - 5) .'>'. ($page - 5) .'</a> | ';
if($page - 4 > 0) $page4left = ' <a href=viem_song.php?name='.$name.'&page='. ($page - 4) .'>'. ($page - 4) .'</a> | ';
if($page - 3 > 0) $page3left = ' <a href=viem_song.php?name='.$name.'&page='. ($page - 3) .'>'. ($page - 3) .'</a> | ';
if($page - 2 > 0) $page2left = ' <a href=viem_song.php?name='.$name.'&page='. ($page - 2) .'>'. ($page - 2) .'</a> | ';
if($page - 1 > 0) $page1left = ' <a href=viem_song.php?name='.$name.'&page='. ($page - 1) .'>'. ($page - 1) .'</a> | ';

if($page + 5 <= $total) $page5right = ' | <a href=viem_song.php?name='.$name.'&page='. ($page + 5) .'>'. ($page + 5) .'</a>';
if($page + 4 <= $total) $page4right = ' | <a href=viem_song.php?name='.$name.'&page='. ($page + 4) .'>'. ($page + 4) .'</a>';
if($page + 3 <= $total) $page3right = ' | <a href=viem_song.php?name='.$name.'&page='. ($page + 3) .'>'. ($page + 3) .'</a>';
if($page + 2 <= $total) $page2right = ' | <a href=viem_song.php?name='.$name.'&page='. ($page + 2) .'>'. ($page + 2) .'</a>';
if($page + 1 <= $total) $page1right = ' | <a href=viem_song.php?name='.$name.'&page='. ($page + 1) .'>'. ($page + 1) .'</a>';

if ($total > 1)
{
Error_Reporting(E_ALL & ~E_NOTICE);
echo "<div class=\"pstrnav\">";
echo $pervpage.$page5left.$page4left.$page3left.$page2left.$page1left.'<b>'.$page.'</b>'.$page1right.$page2right.$page3right.$page4right.$page5right.$nextpage;
echo "</div>";
}

?>

(Отредактировано автором: 27 Сентября, 2011 - 15:25:23)

 
 Top
lodar
Отправлено: 27 Сентября, 2011 - 15:15:06
Post Id


Новичок


Покинул форум
Сообщений всего: 20
Дата рег-ции: Авг. 2009  


Помог: 0 раз(а)




Было бы неплохо глянуть код. Так нечего Вам не подскажут.
 
 Top
vlggera
Отправлено: 28 Сентября, 2011 - 13:25:23
Post Id


Новичок


Покинул форум
Сообщений всего: 15
Дата рег-ции: Сент. 2011  


Помог: 0 раз(а)




Але народ кто нибудь, отзовитесь
 
 Top
topy
Отправлено: 28 Сентября, 2011 - 14:45:16
Post Id


Новичок


Покинул форум
Сообщений всего: 20
Дата рег-ции: Февр. 2011  


Помог: 0 раз(а)




попробуйте в кавычки взять viem_song?name='.$name.'&page=1 во всех ссылках
еще в запросах к базе возьмите в кавычки '$name' (так: '".$name."')
и да, не забывайте о безопасности mysql_real_escape_string();

и еще, раскрасьте код. теги [phр][/phр]

(Отредактировано автором: 28 Сентября, 2011 - 14:46:45)

 
 Top
Страниц (1): [1]
Сейчас эту тему просматривают: 0 (гостей: 0, зарегистрированных: 0)
« Вопросы новичков »


Все гости форума могут просматривать этот раздел.
Только зарегистрированные пользователи могут создавать новые темы в этом разделе.
Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.
 



Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB