Офис НП AMWAY в Ярославле
Купить продукцию Амвей в Ярославле
На карте Купить AMWAY в ЯрославлеПриобрести высококачественную продукцию Амвей в Ярославле, получить консультации по бизнесу, заказать продукцию или получить заказ:
Адрес: улица Валентины Терешковой, дом 1 (Вход со двора)
Телефон: +7 (920) 112-00-91
Email: matyxho@mail.ru
Сайт: https://www.amway.ru/user/lebedem
Визитка: http://yar.meweb.ru
Просмотр темы
MeWEB: Учимся строить сайты » Программирование » PHP, MySQL
 Распечатать тему
Небольшие вопросы по скриптам магазина и каталога SkyMag && SkyCat
Pisatel
Набросал небольшой пример (рабочий, но без php)
Например, у нас адрес http://нашсайт.ру/skycat.php?mod=cat&cat_id=5&tov_id=6, а мы хотим, чтобы эта же страница была доступна по адресу http://нашсайт.ру/cat_5-tov_6, для этого в .htaccess надо будет добавить следующее
Скачать код  Код: APACHE
1
2
3
RewriteEngine on
RewriteBase /
RewriteRule ^cat_([0-9]+)-tov_([0-9]+) skycat\.php\?mod=cat\&cat_id=$1\&tov_id=$2 [L]

Повторюсь, чтобы полностью переделать все ссылки, нужно будет править php страниц вручную, либо, чтобы динамические адреса сервер отдавал уже измененными, можно воспользоваться функцией ob_get_contents(), заменять все адреса "налету".


Я не европеец. И не азиат. Я русский. Я россиянин. Я за истинные семейные христианские ценности. И это - моя национальная идея.
x1
 
http://www.meweb.ru
chilim
Спасибо огромное за оперативный ответ, удачи во всех начинаниях

 
http://dimkaiff.ru
chilim
Цитата [ Отметить все ]
chilim написал:

Спасибо огромное за оперативный ответ, удачи во всех начинаниях

Вопрос решил переименованием папки, а потом при помощи Total Commander, нашел все skycat.php и заменил на своё, пока вроде полет нормальный.
Результат можно глянуть тут, если ссылки нельзя оставлять удали пожалуйста, только не бань))))
http://andian.ru
А с файлом .htaccess, не прокатило, может потому что у меня на хостинге он один, для нескольких моих сайтов.

 
http://dimkaiff.ru
Pisatel
Как так один? Он должен лежать в корне сайта. Все работает, пример http://yaroffice....at_9-tov_6
В принципе, можно сделать чпу для каталога, но вот только скрипт автор не поддерживает, не настолько он популярен


Я не европеец. И не азиат. Я русский. Я россиянин. Я за истинные семейные христианские ценности. И это - моя национальная идея.
 
http://www.meweb.ru
chilim
Как-то так, кидаю скрины из TC, http://dimkaiff.ru/111.jpg - скрин с самого корня

http://dimkaiff.ru/112.jpg - скрин общий с хостинга.
Вот как-то так


Изменил(а) Pisatel, 14 августа 2014 09:24:51
 
http://dimkaiff.ru
Pisatel
.htaccess должен лежать в папке /andian, то есть в корне самого скрипта, тогда все будет работать. Просто создай его там, и вставь то, что я давал.


Я не европеец. И не азиат. Я русский. Я россиянин. Я за истинные семейные христианские ценности. И это - моя национальная идея.
 
http://www.meweb.ru
karas33
День добрый. Есть необходимость оставлять имена загружаемых картинок для товаров без изменения (скрипт переименовывает в формат "1404497083.jpg" или для превьюшек "sm_1404497083.jpg"). Где и что править, если кто сталкивался с этим. Спасибо.

 
Pisatel
Файл adm.php, $filename = $vrem.".".$rash; За имя файла отвечает переменная $vrem, то есть это банально время добавления файла. Если мы будем оставлять имя файла оригинальным, может возникнуть ошибка, если будет два файла с одинаковым именем. Можно, например, попробовать заменить на такое $filename = $_FILES['file']['name']."_".$vrem.".".$rash;, тогда получим что-то типа imya_1234567890.jpg, что исключит ошибку. Однако, файлы с именами кириллицей перед этим нужно будет тогда прогнать через функцию транслита. Как это реализовать: в файл db.php добавляем новую функцию, например такую
Скачать код  Код: PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
  function rustranslate($text)
{
 $text = strtolower($text);
 $special = array(
            '"','&','&','?','!','.',',',':',';','*','(',')','{','}','[',']','%','#','№','@','$','^','-','+','/','\\','=','|','"','\'',
            'А','Б','В','Г','Д','Е','Ё','Ж','З','И','Й','К','Л','М','Н','О','П','Р','С','Т','У','Ф','Х','Ц','Ч','Ш','Щ','Ъ','Ы','Ь','Э','Ю','Я',
            'а','б','в','г','д','е','ё','з','и','й','к',
            'л','м','н','о','п','р','с','т','у','ф','х',
            'ъ','ы','э',' ','ж','ц','ч','ш','щ','ь','ю','я');
 $normal = array('','_','_','_','_','_','_','_','_','_','_','_','_','_','_','_','_','_','_','_','_','_','_','_','_','_','_','_','_','_',
         'a','b','v','g','d','e','e','zh','z','i','y','k','l','m','n','o','p','r','s','t','u','f','h','ts','ch','sh','shch','j','i','','e','yu','ya',
            'a','b','v','g','d','e','e','z','i','y','k',
            'l','m','n','o','p','r','s','t','u','f','h',
            'j','i','e','_','zh','ts','ch','sh','shch',
            '','yu','ya');
 $text str_replace($special, $normal, $text);
 return preg_replace(array('/[^a-zA-Z0-9 -]/', '/[ -]+/', '/^-|-$/'), array('', '-', ''), $text);
}

Ну а далее в файле adm.php заменяем это $filename = $vrem.".".$rash; на это $filename = rustranslate($_FILES['file']['name'])."_".$vrem.".".$rash;
Не проверял, но должно сработать.


Я не европеец. И не азиат. Я русский. Я россиянин. Я за истинные семейные христианские ценности. И это - моя национальная идея.
x1 x1 x1
 
http://www.meweb.ru
karas33
Спасибо за оперативность! Названия картинок изначально будут в транслите. Многие названия дублируют латинские наименования цветов и растений. По опыту могу сказать, что гугл их отлично индексирует по названиям и это дает огромный плюс к продвижению сайта. Теперь по существу:
Цитата [ Отметить все ]
Можно, например, попробовать заменить на такое $filename = $_FILES['file']['name']."_".$vrem.".".$rash;,
- выдало ошибку о "двух точках в имени файла". В конечном итоге "методом тыка" была оставлена банальная конструкция, повторяющая имя файла $filename = $_FILES['file']['name'];. Пока все работает. Вопрос возможности повторений имен актуален. Вероятно придется вводить проверку (но как это сделать - пока не знаю). С транслитом через функцию буду пробовать сейчас. Что получится - напишу. Спасибо

 
Pisatel
Попробуй это $filename = $vrem.".".$rash; заменить на
Скачать код  Код: PHP
1
$filename = preg_replace("/(.*?)\.(.*?)/si", ".rustranslate(trim('\$1'))."_".$vrem.".".$rash.", $filename);

Должно сработать. Обновил пост.


Изменил(а) Pisatel, 13 августа 2014 17:03:23
Я не европеец. И не азиат. Я русский. Я россиянин. Я за истинные семейные христианские ценности. И это - моя национальная идея.
x1
 
http://www.meweb.ru
chilim
Пожалуйста подскажи мне неумному, как конкретно сделать описание в категориях, чтобы можно было к каждой странице добавить некий текст, я вообще в php не шарю, в категориях выводится только галерея товаров, а это очень напрягает.

x1
 
http://dimkaiff.ru
chilim
Я тут еще искал как отменить привязку к цифрам в цене, еле разобрался, а на это у меня уже мозгов не хватает, а изучать php у меня времени особо нет.

x1
 
http://dimkaiff.ru
Pisatel
Честно говоря, немного не понял вопрос. Давайте более подробно.


Я не европеец. И не азиат. Я русский. Я россиянин. Я за истинные семейные христианские ценности. И это - моя национальная идея.
 
http://www.meweb.ru
chilim
сайт тот же andian ru, слева есть меню, там ссылка "Столешницы", когда открываешь выводится галерея. Мне нужно вставить некий текст на эту страницу, тоесть описать эту категорию.

 
http://dimkaiff.ru
Pisatel
Для этого нужно будет: добавить в админке страницу для ввода описания категории, добавить в таблицу бд поле для описания, ну а на самой странице сделать вывод. Я сейчас не занимаюсь этим скриптом, могу лишь подсказать, но не сделать всю работу за Вас.


Я не европеец. И не азиат. Я русский. Я россиянин. Я за истинные семейные христианские ценности. И это - моя национальная идея.
 
http://www.meweb.ru
Pisatel
Ответ пользователю Серега:
Вообще, за удаление файлов отвечает это
Скачать код  Код: PHP
1
2
if (is_file("pic/tov/$tov_foto")) unlink ("pic/tov/$tov_foto");
if (is_file("pic/tov/sm_$tov_foto")) unlink ("pic/tov/sm_$tov_foto");

Соответственно, переменная $tov_foto это название фото из базы.


Я не европеец. И не азиат. Я русский. Я россиянин. Я за истинные семейные христианские ценности. И это - моя национальная идея.
 
http://www.meweb.ru
maksimilyan
Добрый день. Помогите с выводом товара на страницу.
Я хочу, чтобы данные были в один ряд. Делал пол дня вышло на половину. Вот что вышло у меня.
s011.radikal.ru/i316/1410/51/b6ae97bd30d7.jpg

Код:

Скачать код  Код: PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
<!-- Рабочий блок -->   
<?
if (!isset($cat_id) && !isset($mod_id) && !isset($mod) && !isset($act)) { $mod_id = 1; }
if (isset($mod_id))
    {
    $skybasemodpr = mysql_query("SELECT `mod_nazv`,`mod_text` FROM `skymod` WHERE `mod_id`='{$mod_id}' LIMIT 1",$db) or die(mysql_error());
            $skyrowmodpr = mysql_fetch_array($skybasemodpr);
            echo '<div class="zag2" style="margin:0 0 5px 0;">'.$skyrowmodpr['mod_nazv'].'</div>';
            echo $skyrowmodpr['mod_text'];
             
            //вывод товаров на 1 страницу
            if ($mod_id==1){
                $skybasetov = mysql_query("SELECT * FROM `skycat_tov` WHERE `tov_perv`='1' ORDER BY `tov_id` DESC",$db) or die(mysql_error());
                if (mysql_num_rows($skybasetov) > 0)
                {
                $skyrowtov = mysql_fetch_array($skybasetov);
                $gor=0;
                echo '<table cellspacing="0" cellpadding="0" style="margin:0 0 15px 0; border:1px solid #f2f2f2; border-radius: 4px;"><tr>';
                    do {
                        if ($gor >= 1) { echo "<tr>"; }
                        if ($cv == 1) { $bgzapis = "#ffffff"; $cv=0; } else { $bgzapis = "#f5f5f5"; $cv++; }
                        if (!empty($skyrowtov['tov_foto'])) {
                        $img = '<a href="skycat.php?mod=cat&cat_id='.$skyrowtov['tov_cat'].'&tov_id='.$skyrowtov['tov_id'].'"><img align="center" style="margin:10px 0 10px 0;" src="pic/tov/sm_'.$skyrowtov['tov_foto'].'" border="0" /><br /></a>';  }      
                        else { $img="<br /><br /><br /><br />"; }
                        if (!empty($skyrowtov['tov_starcena'])) {
                        $tov_starcena = '<td><p><s>Старая цена: </td>'.$skyrowtov['tov_starcena'].' '.$cat_val.'</s></p>';  }
                        else { $tov_starcena=""; }
                        if (!empty($skyrowtov['tov_cena'])) {
                        $tov_cena = '<td><p class="zag2" style="margin:0 0 0 0;">Цена: '.$skyrowtov['tov_cena'].' '.$cat_val.'</p> <div></td><td><a title="Добавить в корзину" id="'.$skyrowtov['tov_id'].'-'.$skyrowtov['tov_cena'].'" href="#" class="dobKorz"><img src="pic/korzinadob.png" /></td></a></div>';  }
                        else { $tov_cena=""; }                     
                        $tov_nazv = $skyrowtov['tov_nazv'] ;
                        if (strlen($tov_nazv) > 40) { $tov_nazv = substr("$tov_nazv", 0, 40); $tov_nazv = $tov_nazv."..."; }
                        echo '<td>'
                        echo'<table class="tbl" width="800" height="110" bgcolor="'.$bgzapis.'" style="position:relative; margin:5px 7px 5px 7px; padding:0;" cellpadding="0" cellspacing="0"><tr><td valign="top" align="center" style="margin:0; padding:0;">'.$img.'<p style="word-wrap: break-word; margin:0; padding:0;"><a href="skycat.php?mod=cat&cat_id='.$cat_id.'&tov_id='.$skyrowtov['tov_id'].'"><span class="ch">'.$tov_nazv.'</span></a></p><p>'.$tov_starcena.'</p>
                        '.$tov_cena.'</td></tr></table>';
                        echo '</td>';            
                        $gor++;
                        if ($gor >= 3) { echo '</tr>'; $gor = 0; }
                    }
                    while($skyrowtov = mysql_fetch_array($skybasetov));
                echo '</tr></table>';      
                }
            }
    }


Изменил(а) Pisatel, 05 октября 2014 20:38:00
 
maksimilyan
Еще вопрос последний. Может знаете как сделать чтобы навигационное меню было тоже горизонтальное и при на вождении выезжал список. буду очень признателен, а то уже за эсперементировался

 
Pisatel
1. Можно все разместить в див'ах, аналогичных таблице. Пример
Скачать код  Код: HTML
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
<style>
.table {
display: table;
width: 100%;
}
.row {
display: row;
}
.cell {
display: table-cell;
}
</style>
<div class="table">
<div class="row">
<div class="cell" style="width:20%">Здесь название</div>
<div class="cell" style="width:20%">Здесь изображение</div>
<div class="cell" style="width:60%">Здесь описание и остальное</div>
</div>
</div>

Надеюсь, ход мысли понятен.
2. Есть куча плагинов в сети с выпадающим меню, даже здесь наверху такой стоит :


Я не европеец. И не азиат. Я русский. Я россиянин. Я за истинные семейные христианские ценности. И это - моя национальная идея.
 
http://www.meweb.ru
maksimilyan
По поводу выпадающего меню я много находил, но они все написаны на div +css, но я не знаю как их подключить к БД и админки, вот в этом беда(

Чтобы не напрягать Вас помогите мне пожалуйста с (05 октября 2014 14:03:26) этой проблемой. Я просто не могу понять как воссоединить фото и название в одну строку.
Что касается меню я может посижу еще подумаю

 
Поделиться:   
Перейти на форум:
Похожие темы
Темы Форум Ответов / Просмотров Последние сообщения
Вопросы по Ajax форме обратной связи  →  CMS PHP Fusion 48 / 80830 19 февраля 2017 23:38:28
Вопросы по счетчику Power Counter  →  CMS PHP Fusion 19 / 17584 19 января 2015 09:42:03
Последние активные темы форума
  Темы Просмотров Ответов Последние сообщения