Jump to content

Вопрос по seo url auto


Recommended Posts

DELIMITER $$

DROP FUNCTION IF EXISTS `_fs_transliterate_ru` $$
CREATE DEFINER=`root`@`localhost`
FUNCTION `_fs_transliterate_ru`(str TEXT CHARSET utf8)
  RETURNS text CHARSET utf8
DETERMINISTIC SQL SECURITY INVOKER
  BEGIN
    DECLARE strlow TEXT CHARSET utf8;
    DECLARE sym VARCHAR(3) CHARSET utf8;
    DECLARE prevsub VARCHAR(3) CHARSET utf8;
    DECLARE sub VARCHAR(3) CHARSET utf8;
    DECLARE res TEXT CHARSET utf8;
    DECLARE len INT(11);
    DECLARE i INT(11);
    DECLARE pos INT(11);
    DECLARE alphabeth VARCHAR(37) CHARSET utf8;

    SET i = 0;
    SET res = '';
    SET strlow = LOWER(str);
    SET len = CHAR_LENGTH(str);
    SET alphabeth = ' _.абвгдеёжзийклмнопрстуфхцчшщъыьэюя';

    /* идем циклом по символам строки */

    WHILE i < len DO

      SET i = i + 1;
      SET sym = SUBSTR(strlow, i, 1);
      SET pos = INSTR(alphabeth, sym);

      /*выполняем преобразование припомощи ф-ии ELT */

      IF sym >= '0' AND sym <= '9' OR sym >= 'a' AND sym <= 'z' OR sym = '-' THEN
        SET sub = sym;
      ELSE
        SET sub = elt(pos, '-', '-', '-',
                    'a','b','v','g', 'd', 'e', 'yo','zh', 'z',
                    'i','j','k','l', 'm', 'n', 'o', 'p', 'r',
                    's','t','u','f', 'h', 'c','ch','sh','sch',
                    '', 'y', '','e','yu','ya');

      END IF;

      IF sub IS NOT NULL AND NOT(sub = '-' AND prevsub = '-') THEN
        SET res = CONCAT(res, sub);
      END IF;

      SET prevsub = sub;

    END WHILE;

    RETURN res;
  END $$

DELIMITER ;

При выполнении запроса на хостинге в phpmyadmin выдает.

Ошибка
SQL запрос:


CREATE DEFINER=`root`@`localhost`
FUNCTION `_fs_transliterate_ru`(str TEXT CHARSET utf8)
  RETURNS text CHARSET utf8
DETERMINISTIC SQL SECURITY INVOKER
  BEGIN
    DECLARE strlow TEXT CHARSET utf8;
    DECLARE sym VARCHAR(3) CHARSET utf8;
    DECLARE prevsub VARCHAR(3) CHARSET utf8;
    DECLARE sub VARCHAR(3) CHARSET utf8;
    DECLARE res TEXT CHARSET utf8;
    DECLARE len INT(11);
    DECLARE i INT(11);
    DECLARE pos INT(11);
    DECLARE alphabeth VARCHAR(37) CHARSET utf8;

    SET i = 0;
    SET res = '';
    SET strlow = LOWER(str);
    SET len = CHAR_LENGTH(str);
    SET alphabeth = ' _.абвгдеёжзийклмнопрстуфхцчшщъыьэюя';

    /* идем циклом по символам строки */

    WHILE i < len DO

      SET i = i + 1;
      SET sym = SUBSTR(strlow, i, 1);
      SET pos = INSTR(alphabeth, sym);

      /*выполняем преобразование припомощи ф-ии ELT */

      IF sym >= '0' AND sym <= '9' OR sym >= 'a' AND sym <= 'z' OR sym = '-' THEN
        SET sub = sym;
      [...]
Ответ MySQL: Документация

#1227 - Access denied; you need (at least one of) the SUPER privilege(s) for this operation

Что может быть? Подскажите? Хочу сделать красивые урл а адрес а не product_info.php/info/p2467_Pearl-3-2-9.html

Link to post
Share on other sites
51 минуту назад, ZM сказал:

DELIMITER $$

DROP FUNCTION IF EXISTS `_fs_transliterate_ru` $$
CREATE DEFINER=`root`@`localhost`
FUNCTION `_fs_transliterate_ru`(str TEXT CHARSET utf8)
  RETURNS text CHARSET utf8
DETERMINISTIC SQL SECURITY INVOKER
  BEGIN
    DECLARE strlow TEXT CHARSET utf8;
    DECLARE sym VARCHAR(3) CHARSET utf8;
    DECLARE prevsub VARCHAR(3) CHARSET utf8;
    DECLARE sub VARCHAR(3) CHARSET utf8;
    DECLARE res TEXT CHARSET utf8;
    DECLARE len INT(11);
    DECLARE i INT(11);
    DECLARE pos INT(11);
    DECLARE alphabeth VARCHAR(37) CHARSET utf8;

    SET i = 0;
    SET res = '';
    SET strlow = LOWER(str);
    SET len = CHAR_LENGTH(str);
    SET alphabeth = ' _.абвгдеёжзийклмнопрстуфхцчшщъыьэюя';

    /* идем циклом по символам строки */

    WHILE i < len DO

      SET i = i + 1;
      SET sym = SUBSTR(strlow, i, 1);
      SET pos = INSTR(alphabeth, sym);

      /*выполняем преобразование припомощи ф-ии ELT */

      IF sym >= '0' AND sym <= '9' OR sym >= 'a' AND sym <= 'z' OR sym = '-' THEN
        SET sub = sym;
      ELSE
        SET sub = elt(pos, '-', '-', '-',
                    'a','b','v','g', 'd', 'e', 'yo','zh', 'z',
                    'i','j','k','l', 'm', 'n', 'o', 'p', 'r',
                    's','t','u','f', 'h', 'c','ch','sh','sch',
                    '', 'y', '','e','yu','ya');

      END IF;

      IF sub IS NOT NULL AND NOT(sub = '-' AND prevsub = '-') THEN
        SET res = CONCAT(res, sub);
      END IF;

      SET prevsub = sub;

    END WHILE;

    RETURN res;
  END $$

DELIMITER ;

При выполнении запроса на хостинге в phpmyadmin выдает.


Ошибка
SQL запрос:


CREATE DEFINER=`root`@`localhost`
FUNCTION `_fs_transliterate_ru`(str TEXT CHARSET utf8)
  RETURNS text CHARSET utf8
DETERMINISTIC SQL SECURITY INVOKER
  BEGIN
    DECLARE strlow TEXT CHARSET utf8;
    DECLARE sym VARCHAR(3) CHARSET utf8;
    DECLARE prevsub VARCHAR(3) CHARSET utf8;
    DECLARE sub VARCHAR(3) CHARSET utf8;
    DECLARE res TEXT CHARSET utf8;
    DECLARE len INT(11);
    DECLARE i INT(11);
    DECLARE pos INT(11);
    DECLARE alphabeth VARCHAR(37) CHARSET utf8;

    SET i = 0;
    SET res = '';
    SET strlow = LOWER(str);
    SET len = CHAR_LENGTH(str);
    SET alphabeth = ' _.абвгдеёжзийклмнопрстуфхцчшщъыьэюя';

    /* идем циклом по символам строки */

    WHILE i < len DO

      SET i = i + 1;
      SET sym = SUBSTR(strlow, i, 1);
      SET pos = INSTR(alphabeth, sym);

      /*выполняем преобразование припомощи ф-ии ELT */

      IF sym >= '0' AND sym <= '9' OR sym >= 'a' AND sym <= 'z' OR sym = '-' THEN
        SET sub = sym;
      [...]
Ответ MySQL: Документация

#1227 - Access denied; you need (at least one of) the SUPER privilege(s) for this operation

Что может быть? Подскажите? Хочу сделать красивые урл а адрес а не product_info.php/info/p2467_Pearl-3-2-9.html

Нет доступа.

Надо из под root пользователя выполнять этот запрос.

Link to post
Share on other sites
7 минут назад, ZM сказал:

А как сделать для хостинга? чтобы указать свои?

Можно на локаьлном компе выполнить запрос, а затем сохранить базу в sql файлы или через резервное копирование в админке, и перенести эту базу уже на хостинг.

Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...