Как-то можно оптимизировать код?

Тема в разделе "PHP", создана пользователем iga, 18 апр 2015.

  1. iga

    iga

    Регистрация:
    6 фев 2014
    Сообщения:
    145
    Симпатии:
    20
    Для оптимизации рабочего процесса понадобилось написать код, выводящий строку:
    {product_snapshot:id=144|206|176|158|160|164|207|205|214|199|198|191}
    где цифры - это рандомные id товаров для joomshopping.
    На php до этого ничего не писал и код этот мой первый в жизни. Посему прошу глянуть как его можно (и нужно ли) оптимизировать.
    PHP:
    $sdd_db_host='localhost';
    $sdd_db_name='****';
    $sdd_db_user='****';
    $sdd_db_pass='****';
    @
    mysql_connect($sdd_db_host,$sdd_db_user,$sdd_db_pass);
    @
    mysql_select_db($sdd_db_name);
    $sql "SELECT product_id FROM `vrvft_jshopping_products`";
    $q mysql_query($sql);
    echo 
    '{product_snapshot:id=';
    $mass = array();
    while (
    $arr mysql_fetch_assoc($q))
      {
      
    $mass[] = $arr['product_id'];
      }
      
    shuffle($mass);
    for (
    $j=0$j<11$j++) {
        echo 
    $mass[$j]."|";
    }
        if (
    $i=11){
            echo 
    $mass[$j]."}";
        }
     
  2. MShekhovtsev

    MShekhovtsev

    Регистрация:
    19 ноя 2013
    Сообщения:
    23
    Симпатии:
    9
    $arr = mysql_fetch_assoc($q);
    $str = '{product_snapshot:id=' . implode('|',$arr) . '}';

    echo $str.
     
  3. iga

    iga

    Регистрация:
    6 фев 2014
    Сообщения:
    145
    Симпатии:
    20
    Нее...у меня "шаг вправо, шаг влево - расстрел". Я честно пытался, но так и не сообразил куда это прилепить. Функционал implode понятен, а остальное непонятно :Smile:
    Либо ошибка, либо одна или слишком много записей {product_snapshot:id=237}
     
  4. ponchic

    ponchic

    Регистрация:
    20 апр 2015
    Сообщения:
    5
    Симпатии:
    1
    product_snapshot:id=144|206|176|158|160|164|207|205|214|199|198|191
    Если напало сумасшествие то можно сделать так:
    product_snapshot:id=random(1,300)|random(1,300)|random(1,300)

    ________________________________
    @mysql_connect($sdd_db_host,$sdd_db_user,$sdd_db_pass);
    @mysql_select_db($sdd_db_name);

    Зачем укрываться от ошибок?
     
    iga нравится это.