За последние 24 часа нас посетили 60436 программистов и 1806 роботов. Сейчас ищут 1632 программиста ...

Люди добрые, подскажите

Тема в разделе "PHP и базы данных", создана пользователем Fess, 13 июл 2011.

  1. Fess

    Fess Активный пользователь

    С нами с:
    13 июл 2011
    Сообщения:
    21
    Симпатии:
    0
    Вобщем после смены хостинга, стала вылезать такая шляпа:

    Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in /home/******/public_html/include/database.php on line 53

    привожу кусок из database.php:

    function fetch_array($q, $result_type=MYSQL_ASSOC) {
    return mysql_fetch_array($q, $result_type); //53
    }

    Запрос на странице вот так выглядит:

    function News() {
    global $db, $page;
    $num=1;

    $start=($page-1)*NUM_NEWS_ON_PAGES;
    $res=$db->query("SELECT * FROM news ORDER BY date DESC LIMIT $start,".NUM_NEWS_ON_PAGES);
    while ($row=$db->fetch_array($res)) {
    $news_arr[$num][date]=date("d.m.Y",$row['date']);
    $news_arr[$num][title]=$row['title'];
    $news_arr[$num][descr_shot]=$row['descr_shot'];
    $news_arr[$num][url_news]="/about/news/".$row['id']."/";
    if ($row['photo_small']!='') {
    $news_arr[$num]="/".NEWS_IMG_FOLDER.$row['id']."/".$row['photo_small'];
    $url="/".NEWS_IMG_FOLDER.$row['id']."/".$row['photo_big'];
    $news_arr[$num][img_big]=$url;
    }
    $num++;
    }
    return $news_arr;
    }

    сие вывод новостей. Подскажите в чем может быть проблема


    Вот так например уже работает:

    function News() {
    global $db;
    $res=$db->query([b]"SELECT * FROM news ORDER BY date LIMIT 0,2"[/b]);
    while ($row=$db->fetch_array($res)) {
    $news_arr[$num][date]=date("d.m.Y",$row['date']);
    $news_arr[$num][title]=$row['title'];
    $news_arr[$num][descr_shot]=$row['descr_shot'];
    $news_arr[$num][url_news]="/news/".$row['id']."/";
    $num++;
    }
    return $news_arr;
    }
     
  2. viphost

    viphost Активный пользователь

    С нами с:
    23 мар 2009
    Сообщения:
    307
    Симпатии:
    0
    а что находится на линии 53?
     
  3. Fess

    Fess Активный пользователь

    С нами с:
    13 июл 2011
    Сообщения:
    21
    Симпатии:
    0
    см. 1-ый пост:

    return mysql_fetch_array($q, $result_type); //53
     
  4. iliavlad

    iliavlad Активный пользователь

    С нами с:
    24 янв 2009
    Сообщения:
    1.689
    Симпатии:
    4
    перед запросом поставьте
    PHP:
    1. <?php
    2. var_dump("SELECT * FROM news ORDER BY date DESC LIMIT $start,".NUM_NEWS_ON_PAGES);
    3. die();
    посмотрите на сам запрос
     
  5. Fess

    Fess Активный пользователь

    С нами с:
    13 июл 2011
    Сообщения:
    21
    Симпатии:
    0
    Cпасибо, проблема решена, $start был отрицательным