diff --git a/.gitattributes b/.gitattributes index f5a0e1b..0a456f3 100644 --- a/.gitattributes +++ b/.gitattributes @@ -1 +1,2 @@ -* crlf=input \ No newline at end of file +# Automatically normalize line endings for all text-based files +* text=auto \ No newline at end of file diff --git a/database.sql b/database.sql index e7d34ff..a71c2d0 100644 --- a/database.sql +++ b/database.sql @@ -1,9 +1,10 @@ +# Why you should use `utf8mb4` instead of `utf8`: http://mathiasbynens.be/notes/mysql-utf8mb4 CREATE TABLE `redirect` ( - `slug` varchar(14) collate utf8_unicode_ci NOT NULL, - `url` varchar(620) collate utf8_unicode_ci NOT NULL, + `slug` varchar(14) collate utf8mb4_unicode_ci NOT NULL, + `url` varchar(620) collate utf8mb4_unicode_ci NOT NULL, `date` datetime NOT NULL, `hits` bigint(20) NOT NULL default '0', PRIMARY KEY (`slug`) -) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci COMMENT='Used for the URL shortener'; +) ENGINE=MyISAM DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='Used for the URL shortener'; INSERT INTO `redirect` VALUES ('a', 'https://github.com/mathiasbynens/php-url-shortener', NOW(), 1); \ No newline at end of file diff --git a/index.php b/index.php index 7ca05f8..574b554 100644 --- a/index.php +++ b/index.php @@ -21,7 +21,7 @@ } else { $db = new MySQLi(MYSQL_HOST, MYSQL_USER, MYSQL_PASSWORD, MYSQL_DATABASE); - $db->set_charset('utf8'); + $db->set_charset('utf8mb4'); $escapedSlug = $db->real_escape_string($slug); $redirectResult = $db->query('SELECT url FROM redirect WHERE slug = "' . $escapedSlug . '"'); diff --git a/shorten.php b/shorten.php index 524a711..fdd6460 100644 --- a/shorten.php +++ b/shorten.php @@ -28,7 +28,7 @@ function getNextShortURL($s) { } $db = new mysqli(MYSQL_HOST, MYSQL_USER, MYSQL_PASSWORD, MYSQL_DATABASE); -$db->set_charset('utf8'); +$db->set_charset('utf8mb4'); $url = $db->real_escape_string($url);