Задать вопрос

При регистрации юзера его имя на русском передаётся в базу данных в неправильной кодировке. Что делать?

В базе данных везде стоит кодировка utf8_general_ci, в html файле стоит utf-8, при подключении к базе данных пробовала $mysql->query("SELECT NAMES 'utf8'") (utf8 пробовала вводить и прописными, и строчными, и с кавычками, и без), $mysql->set_charset("utf8"),
$mysql->query('set character_set_results = "utf8"')
... Первое я знала изначально, но оно не сработало. Нашла ещё кучу разных вариантов, но, фиг знает, что я правильно ввела, что нет...

60a2e4b74faaa985289557.png

<?php
	$name = $_POST['name'];
	$login = $_POST['login'];
	$password = $_POST['password'];
	$sex = $_POST['sex'];
	$area = $_POST['area'];
	$town = $_POST['town'];
	$telephone = $_POST['telephone'];
	$email = $_POST['email'];

	$password = md5($password."usyvi462");

	$mysql = new mysqli('localhost', 'root', '', 'yoursmilebase');
	$mysql->query("INSERT INTO `users` (`login`, `password`, `name`, `sex`, `area`, `town`, `telephone`, `email`) VALUES('$login', '$password', '$name', '$sex', '$area', '$town', '$telephone', '$email')");
	$mysgl->close;

	header('Location: user.php');
?>


Также номера телефонов все одинаковые в базе данных!
  • Вопрос задан
  • 158 просмотров
Подписаться 2 Средний 2 комментария
Ответ пользователя SagePtr К ответам на вопрос (3)
SagePtr
@SagePtr
Еда - это святое
А вообще, лучше использовать PDO, там сразу при подключении можно кодировку задать.
Ответ написан