Создал таблицу товаров, создал таблицу категорий.
Вывел категории, записи в БД на русском языке:
$sql = $mysqli->query("SELECT * FROM `category` WHERE `cat` = 'пряжа' ORDER BY `subcat` ASC");
while($cat = $sql->fetch_assoc()){
echo '<li><a href="view_cat.php?cat='.linktranslite($cat['cat']).'&subcat='.linktranslite($cat['subcat']).'">'.$cat['subcat'].'</a></li>';
}
Функция транслита:
function linktranslite($linkname){
$linkname = preg_replace("/[\s+\.\,]/","-",$linkname);
$linkname = preg_replace("/[\"\'\!\?\(\)\:\$\%]/","",$linkname);
static $transname = array(
'а' => 'a','б' => 'b','в' => 'v','г' => 'g','д' => 'd','е' => 'e','ё' => 'yo','ж' => 'zh','з' => 'z','и' => 'i','й' => 'y','к' => 'k','л' => 'l','м' => 'm','н' => 'n','о' => 'o','п' => 'p','р' => 'r','с' => 's','т' => 't','у' => 'u','ф' => 'f','ы' => 'i','э' => 'e','х' => 'h','ц' => 'ts','ч' => 'che','ш' => 'sh','щ' => 'shch','ъ' => '','ь' => '','ю' => 'yu','я' => 'ya',
'А' => 'A','Б' => 'B','В' => 'V','Г' => 'G','Д' => 'D','Е' => 'E','Ё' => 'YO','Ж' => 'ZH','З' => 'Z','И' => 'I','Й' => 'Y','К' => 'K','Л' => 'L','М' => 'M','Н' => 'N','О' => 'O','П' => 'P','Р' => 'R','С' => 'S','Т' => 'T','У' => 'U','Ф' => 'F','Ы' => 'I','Э' => 'E','Х' => 'H','Ц' => 'TS','Ч' => 'CHE','Ш' => 'SH','Щ' => 'SHCH','Ъ' => '','Ь' => '','Ю' => 'YU','Я' => 'YA'
);
$resultat = strtr($linkname, $transname);
return strtolower($resultat);
}
Передал:
$get_cat = strip_tags(trim(mysqli_real_escape_string($mysqli, $_GET['cat'])));
$get_subcat = strip_tags(trim(mysqli_real_escape_string($mysqli, $_GET['subcat'])));
Вывел в view_cat.php
$sql = $mysqli->query("SELECT * FROM `products` WHERE `category` = '".$get_cat."' AND `subcategory` = '".$get_subcat."'");
if(mysqli_num_rows($sql) == 0){
echo "Товаров в магазине нет";
}else{
// Ну и бла бла
}
Суть вопроса: что, если передавать НЕ проводя через функцию замены символов!? Передавать на русском.
На сколько это практично и безопасно в использовании!? Пробовал, работает.
Делаю по Албански, учусь
_____________
Если долго в одних стенах живешь, ты с ними сростаешься