ФорумПрограммированиеPHP для идиотов → Мистика

Мистика

  • Professor

    Сообщения: 2089 Репутация: N Группа: Адекваты

    Spritz 5 августа 2008 г. 8:55

    Даже не знаю с чего начать…
    В общем есть сайт на Шоп-скрипт написанный.При отображении продуктов появляется постраничнаю навигация.И естественно есть кнопка "показать все"
    Вот с ней и проблемма.
    На сайте расположенном в интернете,она не работает!! =( (показывает первую страницу)
    Скачал полностью сайт и базу данных на локальный хост поставил…
    И все работает!!!!!!!!!!!!!!!!!!!!!
    И вот теперь не знаю как и исправлять!!Точней не знаю что исправлять.И где искать проблемму.
    Прошу более опытных форумчан подсказать в чем может быть проблемма???
    Приветствыется любые варианты,так как я уже все свои исчерпал=(
  • sap

    Сообщения: 2701 Репутация: N Группа: Кто попало

    Spritz 5 августа 2008 г. 9:07, спустя 11 минут 40 секунд

    Код.
  • Professor

    Сообщения: 2089 Репутация: N Группа: Адекваты

    Spritz 5 августа 2008 г. 9:20, спустя 12 минут 33 секунды

    код не мой. но вот что я нашел


    function GetNavigatorHtml( $url, $countRowOnPage = CONF_PRODUCTS_PER_PAGE,
    $callBackFunction, $callBackParam, &$tableContent,
    &$offset, &$count )
    {
    if ( isset($_GET["offset"]) )
    $offset = (int)$_GET["offset"];
    else
    $offset = 0;
    $offset -= $offset % $countRowOnPage;//CONF_PRODUCTS_PER_PAGE;
    if ( $offset < 0 ) $offset = 0;
    $count = 0;

    if ( !isset($_GET["show_all"]) ) // показать продукты 'CONF_PRODUCTS_PER_PAGE' на этой странице
    {
    $tableContent = $callBackFunction( $callBackParam, $count,
    array(
    "offset" => $offset,
    "CountRowOnPage" => $countRowOnPage
        )
    );
    }
    else // показать все продукты
    {
    $tableContent = $callBackFunction( $callBackParam, $count, null );
    $offset = "show_all";
    }

    ShowNavigator( $count, $offset, $countRowOnPage,
    $url."&", $out);
    return $out;
    }


    здесь $callBackFunction() это prdSearchProductByTemplate() насколько я понял


    function prdSearchProductByTemplate(
    $callBackParam, &$count_row, $navigatorParams = null )
    {
    // navigator params
    if ( $navigatorParams != null )
    {
    $offset = $navigatorParams["offset"];
    $CountRowOnPage = $navigatorParams["CountRowOnPage"];
    }
    else
    {
    $offset = 0;
    $CountRowOnPage = 0;
    }

    … //здесь должен быть код вытаскивающий информацию о продукте,я его вырезл,чтоб не мешался


    $sqlQueryCount = "select count(*) from ".PRODUCTS_TABLE.
    " $where_clause $order_by_clause";
    $q = db_query( $sqlQueryCount );
    $products_count = db_fetch_row($q);
    $products_count = $products_count[0];

    $sqlQuery = "select categoryID, name, brief_description, ".
    " customers_rating, Price, Price_no_convert,  Price_Val, in_stock, ".
    " customer_votes, list_price, ".
    " productID, default_picture, sort_order, items_sold, enabled, ".
    " product_code, description, shipping_freight , Konfig_On_Of from ".PRODUCTS_TABLE.
    " $where_clause $order_by_clause";

    $q = db_query( $sqlQuery );
    $result = array();
    $i = 0;

    if ($offset >= 0 && $offset <= $products_count )
    {
    while( $row = db_fetch_row($q) )
    {

    if ( isset($callBackParam["extraParametrsTemplate"]) )
    {

    // take into "extra" parametrs
    $testResult = _testExtraParametrsTemplate( $row["productID"],
    $callBackParam["extraParametrsTemplate"] );
    if ( !$testResult )
    continue;
    }

    //!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

    if ( ($i >= $offset && $i < $offset + $CountRowOnPage) ||
    $navigatorParams == null  )
    {
    $row["PriceWithUnit"] = show_price($row["Price"],DefineCurrencyFunctions($row["productID"]));
    $row["list_priceWithUnit"] = show_price($row["list_price"],DefineCurrencyFunctions($row["productID"]));
    // you save (value)
    $row["SavePrice"] = show_price($row["list_price"]-$row["Price"],DefineCurrencyFunctions($row["productID"]));

    // you save (%)
    if ($row["list_price"])
    $row["SavePricePercent"] = ceil(((($row["list_price"]-$row["Price"])/$row["list_price"])*100));
    _setPictures( $row );
    $row["product_extra"] = GetExtraParametrs( $row["productID"] );
    $row["PriceWithOutUnit"] = show_priceWithOutUnit( $row["Price"] );
    if ( ((float)$row["shipping_freight"]) > 0 )
    $row["shipping_freightUC"] = show_price( $row["shipping_freight"] ,DefineCurrencyFunctions($row["productID"]));

    $row["name"] = TransformDataBaseStringToText( $row["name"] );
    $row["description"] = TransformDataBaseStringToHTML_Text( $row["description"] );
    $row["brief_description"] = TransformDataBaseStringToHTML_Text( $row["brief_description"] );
    $row["product_code"] = TransformDataBaseStringToText( $row["product_code"] );

    $result[] = $row;
    }
    $i++;
    }
    }
    $count_row = $i;
    return $result;
    }

    собственно там где восклицательные знаки, там и цикл вывода информации
  • Trej Gun

    Сообщения: 5299 Репутация: N Группа: в ухо

    Spritz 5 августа 2008 г. 9:37, спустя 16 минут 59 секунд

    код не мой

    я просто разместил объяву
  • Professor

    Сообщения: 2089 Репутация: N Группа: Адекваты

    Spritz 5 августа 2008 г. 9:44, спустя 7 минут 30 секунд

    я просто разместил объяву

    Я помоему все написал!!!!!
    В общем есть сайт на Шоп-скрипт написанный


    а повторяясь что код не мой я просто хотел акцентировать на этом внимание
  • Professor

    Сообщения: 2089 Репутация: N Группа: Адекваты

    Spritz 5 августа 2008 г. 9:54, спустя 10 минут 5 секунд

    На самом деле проблемма не в коде(на мой взгляд)
    Ведь на локальном хосте работает!!!!!!!!!!!
  • adw0rd

    Сообщения: 22905 Репутация: N Группа: в ухо

    Spritz 5 августа 2008 г. 10:26, спустя 32 минуты 4 секунды

    ссылку на сайт
    adw/0
  • Professor

    Сообщения: 2089 Репутация: N Группа: Адекваты

    Spritz 5 августа 2008 г. 10:30, спустя 3 минуты 39 секунд


    про дизайн не слова=))) сайт переделывается
  • adw0rd

    Сообщения: 22905 Репутация: N Группа: в ухо

    Spritz 5 августа 2008 г. 10:35, спустя 5 минут 7 секунд

    Professor, не подскажешь где эта зловредная кнопочка?))
    adw/0
  • sap

    Сообщения: 2701 Репутация: N Группа: Кто попало

    Spritz 5 августа 2008 г. 10:38, спустя 2 минуты 40 секунд

    adw0rd, http://mircopirov.ru/shop/index.php?categoryID=270&show_all=yes
    Там типа ссылка показать все. Ошибки пока не вижу.
  • adw0rd

    Сообщения: 22905 Репутация: N Группа: в ухо

    Spritz 5 августа 2008 г. 10:40, спустя 2 минуты 29 секунд

    Спасибо sap!
    Ага, я тоже не вижу проблем.
    adw/0
  • Professor

    Сообщения: 2089 Репутация: N Группа: Адекваты

    Spritz 5 августа 2008 г. 10:43, спустя 2 минуты 39 секунд

    В смысле проблемм не видите.
    не показывает все!!Это проблемма.
    Или у вес показывает?
  • sap

    Сообщения: 2701 Репутация: N Группа: Кто попало

    Spritz 5 августа 2008 г. 10:45, спустя 2 минуты 17 секунд

    В смысле не видим, почему. Мб какие-то настройки? Или все один в один скопировано? Тогда давай сюда /includes/category.php (вроде так в этом движке), только в аттаче.
  • adw0rd

    Сообщения: 22905 Репутация: N Группа: в ухо

    Spritz 5 августа 2008 г. 10:46, спустя 1 минуту

    Professor, проверить перебором никак?

       if ( !isset($_GET["show_all"]) ) // показать продукты 'CONF_PRODUCTS_PER_PAGE' на этой странице
    {
    $tableContent = $callBackFunction( $callBackParam, $count,
    array(
    "offset" => $offset,
    "CountRowOnPage" => $countRowOnPage
    )
    );
    }
    else // показать все продукты
    {
    echo 'ALL';
    exit();

    $tableContent = $callBackFunction( $callBackParam, $count, null );
    $offset = "show_all";
    }
    adw/0
  • Professor

    Сообщения: 2089 Репутация: N Группа: Адекваты

    Spritz 5 августа 2008 г. 10:52, спустя 5 минут 56 секунд

    adw0rd ты прав,именно эта строчка и должна запускать функцию которая показывает ВСЕ
    Собственно как я и писал выше!
    $callBackFunction это функция prdSearchProductByTemplate
    она вверху написана.

Пожалуйста, авторизуйтесь, чтобы написать комментарий!