Помогите с кодировкой пожалуйста
Сохраняю данные в базу русскими буквами но в базу записываются иероглифы. После соединения с базой прописано mysql_query("SET NAMES 'cp1251'");
Все проверил, и база в той же кодировке.
Вот форма:
<script>
$(document).ready(function(){
$('#Data_profForm').submit(function(){
var data = {
phone: $('#phone').val(),
skype: $('#skype').val(),
vk: $('#vk').val()
}
$.ajax({
type: "POST",
url: "editprofile_form.php?action=save_profile",
data: data,
success: function(html){
$('#Data_profResult').fadeIn(200).css('display','block');
setTimeout(function(){
$('#Data_profResult').fadeOut(1000).css('display','block');
}, 1500);
$('#Data_profResult').html(html).css('display','block');
}
});
return false;
});
});
</script>
<?php
defined('ACCESS') or die();
?>
<table class="table" style="float:left;width:50%;background: rgba(91,80,73,0.7); margin-bottom:1px;">
<div id="Data_profResult"></div>
<form id="Data_profForm" method="post">
<tr>
<td align="left" style="padding-left: 90px;padding-top: 5px;">
<div style="padding-bottom: 5px;">Телефон:</div>
<input id="phone" class="form-control input-lg text-center rtl-rev rtl ng-pristine ng-valid-required ng-valid-pattern ng-valid-maxlength ng-valid-parse ng-valid-server ng-valid-nmin ng-valid ng-valid-nmax ng-touched" type='text' name='phone' value="<?php print $user_phone; ?>" size="30" maxlength="20"/ style="width: 325px; height: 34px; cursor:auto;border-radius: 2px;background: none;font-size: 15px;color:#d4d3d3;text-align: left !important;">
</td>
</tr>
<tr>
<td align="left" style="padding-left: 90px;padding-top: 5px;">
<div style="padding-bottom: 5px;">Skype:</div>
<input id="skype" class="form-control input-lg text-center rtl-rev rtl ng-pristine ng-valid-required ng-valid-pattern ng-valid-maxlength ng-valid-parse ng-valid-server ng-valid-nmin ng-valid ng-valid-nmax ng-touched" type='text' name='skype' value="<?php print $user_skype; ?>" size="30" maxlength="20"/ style="width: 325px; height: 34px; cursor:auto;border-radius: 2px;background: none;font-size: 15px;color:#d4d3d3;text-align: left !important;">
</td>
</tr>
<tr>
<td align="left" style="padding-left: 90px;padding-top: 5px;">
<div style="padding-bottom: 5px;">Вконтакте:</div>
<input id="vk" class="form-control input-lg text-center rtl-rev rtl ng-pristine ng-valid-required ng-valid-pattern ng-valid-maxlength ng-valid-parse ng-valid-server ng-valid-nmin ng-valid ng-valid-nmax ng-touched" type='text' name='vk' value="<?php print $user_vk; ?>" size="30" maxlength="50"/ style="width: 325px; height: 34px; cursor:auto;border-radius: 2px;background: none;font-size: 15px;color:#d4d3d3;text-align: left !important;">
</td>
</tr>
<tr>
<td align="left" style="padding-left: 90px;padding-bottom: 25px;">
<input class="btn btn-success" type="submit" name="submit" value="Изменить" style="margin: 0px 0px 0px;padding: 6px;width: 325px;border-radius: 2px;">
</td>
</tr>
</form>
</table>
Вот обработчик:
if ($_GET['action'] == 'save_profile') {
$phone = htmlspecialchars($_POST['phone'], ENT_QUOTES);
$skype = addslashes(htmlspecialchars($_POST['skype'], ENT_QUOTES, ''));
$vk = addslashes(htmlspecialchars($_POST['vk'], ENT_QUOTES, ''));
if (!$phone) {
print 'Укажите номер телефона';
} else {
mysql_query("UPDATE users SET phone = '".$phone."', skype = '".$skype."', vk = '".$vk."' WHERE id = ".$user_id." LIMIT 1");
print "Данные успешно обновлены";
}
}
Да и еще, когда я убираю сохранение данных через ajax то все нормально, в базу записываются нормальные русские буквы.