Mysql
 sql >> Baza danych >  >> RDS >> Mysql

Co muszę zrobić, aby otwierać adresy URL ze znakami specjalnymi

\w dopasowuje znaki słowa tylko wtedy, gdy słowo char to [a-zA-Z0-9_] i nie zawiera wszystkich znaków Unicode.

Zmień swoją regułę na następującą:

RewriteRule ^post/([^/]+)/?$ single_post.php?blog_title=$1 [L,QSA]

[^/]+ dopasuje dowolny znak, który nie jest / w tym również znaki Unicode.

Możesz także nieco poprawić kod php:

function url_slug($str) {   
    $str = mb_strtolower(trim($str), 'UTF-8');
    $str = preg_replace('/[^\pL\pN]+/u', ' ', $str);
    $str = trim($str);
    $str = preg_replace('/\h+/', '-', $str);
    return $str;
}


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. MySQL:Co oznacza równy dwukropek =:w instrukcji aktualizacji?

  2. Czy MySQL obsługuje dziedziczenie tabel?

  3. Jak wstawić datę do mysql jako parametr?

  4. Czy możliwe jest wykonanie iniekcji sql z procedurami składowanymi?

  5. Jak znaleźć zduplikowane rekordy w MySQL