Форум программистов, компьютерный форум, киберфорум
PHP для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск  
 
 
Рейтинг 4.90/21: Рейтинг темы: голосов - 21, средняя оценка - 4.90
 Аватар для Aidera
1 / 1 / 0
Регистрация: 29.07.2015
Сообщений: 86

Не записывает русские символы в базу данных

31.01.2016, 03:51. Показов 4798. Ответов 21

Студворк — интернет-сервис помощи студентам
Доброго времени суток.
Я новичок, и многого не понимаю.

У меня есть код регистрации:

PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
 if($_SERVER["REQUEST_METHOD"] == "POST")
{ 
 session_start();
 
 include("../include/db_connect.php");
 include("../functions/functions.php");
 
     $error = array();
         
        $login = iconv("UTF-8", "cp1251",strtolower(clear_string($_POST['reg_login']))); 
        $pass = iconv("UTF-8", "cp1251",strtolower(clear_string($_POST['reg_pass']))); 
        $surname = iconv("UTF-8", "cp1251",clear_string($_POST['reg_surname'])); 
        
        $name = iconv("UTF-8", "cp1251",clear_string($_POST['reg_name'])); 
        $patronymic = iconv("UTF-8", "cp1251",clear_string($_POST['reg_patronymic'])); 
        $email = iconv("UTF-8", "cp1251",clear_string($_POST['reg_email'])); 
        
        $phone = iconv("UTF-8", "cp1251",clear_string($_POST['reg_phone'])); 
        $address = iconv("UTF-8", "cp1251",clear_string($_POST['reg_address'])); 
 
 
    if (strlen($login) < 5 or strlen($login) > 15)
    {
       $error[] = "от 5 до 15 символов"; 
    }
    else
    {   
     $result = mysql_query("SELECT login FROM reg_user WHERE login = '$login'",$link);
    If (mysql_num_rows($result) > 0)
    {
       $error[] = "Извините, данный Логин уже занят";
    }
            
    }
     
    if (strlen($pass) < 7 or strlen($pass) > 15) $error[] = "от 7 до 15 символов";
    if (strlen($surname) < 3 or strlen($surname) > 20) $error[] = "от 3 до 20 символов!";
    if (strlen($name) < 3 or strlen($name) > 15) $error[] = "от 3 до 15 символов";
    if (!preg_match("/^(?:[a-z0-9]+(?:[-_.]?[a-z0-9]+)?@[a-z0-9_.-]+(?:\.?[a-z0-9]+)?\.[a-z]{2,5})$/i",trim($email))) $error[] = "E-mail некорректный";
    if (!$phone) $error[] = "Укажите Ваш телефон";
    
    
    if($_SESSION['img_captcha'] != strtolower($_POST['reg_captcha'])) $error[] = "Код с картинки неверный";
    unset($_SESSION['img_captcha']);
    
   if (count($error))
   {
    
 echo implode('<br/>',$error);
     
   }else
   {   
        $pass   = md5($pass);
        $pass   = strrev($pass);
        $pass   = "9nm2rv8q".$pass."2yo6z";
        
        $ip = $_SERVER['REMOTE_ADDR'];
        
        mysql_query("INSERT INTO reg_user (login,pass,surname,name,patronymic,email,phone,address,datetime,ip) VALUES ('".$login."','".$pass."','".$surname."','".$name."','".$patronymic."','".$email."','".$phone."','".$address."',NOW(),'".$ip."')",$link);
 
 echo 'true';
 }        
 
 
}

а так же подключение к базе данных:

PHP
1
2
3
4
5
6
7
8
9
$db_host     = 'localhost';
    $db_user     = '******';
    $db_pass     = '*******';
    $db_database = 'db_shop';
 
    $link = mysql_connect($db_host, $db_user, $db_pass);
 
    mysql_select_db($db_database, $link) or die ("Нет соединения с базой данных ".mysql_error());
    mysql_query("SET NAMES utf8");


Проблема в том, что код не заносит в базу данных русские буквы.
Я пыталась исправить:
PHP
1
2
3
mysql_query('SET NAMES cp1251');          
    mysql_query('SET CHARACTER SET cp1251');  
    mysql_query('SET COLLATION_CONNECTION="utf8_general_ci"');
в подключении в БД. В этом случае буквы русские в таблицу заносятся, но выводятся уже вопросительные знаки.

Помогите пожалуйста решить проблему.
Заранее благодарна
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
31.01.2016, 03:51
Ответы с готовыми решениями:

Переменная как кнопка, записывает значение в базу
Помогите пожалуйста. У меня есть переменная которая берётся из базы $base = row; Мне нужно что бы эта переменная была как ссылка ,...

Некорректно записывает в базу данных
Привет всем, такая проблема что пишу скрипт на php и использую функции, и такая проблема что после чего в базу у меня началось записываться...

Не записывает данные в базу данных
Всем доброго времени суток. Столкнулся с проблемой записи данных в базу данных. А именно проблема вот в чём: в скрипт php отсылается...

21
Эксперт PHP
5755 / 4134 / 1508
Регистрация: 06.01.2011
Сообщений: 11,276
16.08.2016, 14:46
Студворк — интернет-сервис помощи студентам
Да нет. Просто замените
PHP
1
$result = mysql_query("SELECT * FROM cart,table_products WHERE cart.cart_ip = '{$_SERVER['REMOTE_ADDR']}' AND table_products.products_id = cart.cart_id_product",$link);
На это:
PHP
1
$result = mysql_query("SELECT * FROM cart,table_products WHERE cart.cart_ip = '{$_SERVER['REMOTE_ADDR']}' AND table_products.products_id = cart.cart_id_product",$link) or die(mysql_error());
И на экран выведется текст ошибки.
1
Эксперт PHP
5755 / 4134 / 1508
Регистрация: 06.01.2011
Сообщений: 11,276
20.08.2016, 21:49
Удалено, дубль.
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
20.08.2016, 21:49

Не записывает в базу данных ид товара
Есть БД. При добавление в корзину, таблицу cart оно записывает не products_id почему-то 0 пишет. А должно то вбивать тот ид товара...

Не записывает в базу данных и не выводит из базы данных.
Здравствуйте у меня небольшая проблема,не произходит запись в бд , пишет фатал ерор Fatal error: Call to undefined function msql_query() in...

Записывает одинаковые значения из массива в базу данных
Делаю импорт из XML файла в базу данных mysql. Все загружает нормально, кроме ссылок на фото. В каждую строку добавляется одинаковое...

Запись в базу данных в цикле записывает только первую строку
Добрый день, не могу победить запись в БД всех строк, подскажите в чем проблема. ?php include (&quot;blocks/bd.php&quot;); if (isset...

Символьный тип данных и русские символы
Почему в if возвращается 0? char s; cin &gt;&gt; s; // вводим с клавиатуры ф if(s=='ф') cout &lt;&lt; s &lt;&lt; endl;


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
22
Ответ Создать тему
Новые блоги и статьи
Алиса нашла кучу ошибок компиляции и запуска в проекте, который без проблем компилировался и запускался)))
anaschu 30.06.2026
Я пока посмеюся, но завтра проверю. А вообще интерсно. Дал алисе файл, в котором точно нет ошибок компиляции и запуска, и попросил их найти. Нашла кучу))) Критические ошибки, мешающие компиляции и. . .
сукцессия 16. Общий обзор, в основном что бы другие ии поняли
anaschu 29.06.2026
# Передаточный документ: модель микоризной сукцессии (для нового чата) Этот документ предназначен для того, чтобы новый чат Claude мог продолжить работу без необходимости заново разбираться в. . .
сукцессия 15 неявная схема
anaschu 29.06.2026
Алиса Калибровка параметров симбиотической модели: технический обзор Содержание: Введение Постановка проблемы Технические аспекты реализации Процесс внедрения изменений
сукцессия 14. Обновленная схема модели
anaschu 28.06.2026
ГЛОБАЛЬНАЯ ОПИСАТЕЛЬНАЯ СПЕЦИФИКАЦИЯ ЭКОСИСТЕМНОЙ МОДЕЛИ «SOIL CHEMISTRY & MYCORRHIZA 2. 0» https:/ / ibb. co/ NnkGpfMd Представленная интегрированная схема описывает непрерывную нелинейную. . .
сукцессия 13. Питон модель трехзонного мицелия, пока что в основном арбускулярного
anaschu 28.06.2026
## Разработка агентной модели микоризной сукцессии: от выявления артефактов к созданию комплексной системы ### Аннотация Представлено исследование по разработке агентной модели микоризной. . .
сукцессия 12. краткий список проверок модели перед запуском.
anaschu 27.06.2026
Скрытые отказы в моделях систем динамики (SD-models) экологических систем: два случая из практики Контекст Разбирался прототип модели систем динамики (SD-модели) микоризной сукцессии: пять. . .
Сукцессия 11. Проверка орудий перед войной: разработка через тестирование
anaschu 27.06.2026
Как не дать модели соврать самой себе: проверки для симуляции микоризной сукцессии Введение Когда вы строите математическую модель живой системы — грибов, растений, почвы — главная опасность. . .
10 сукцессия. Питон код войны грибов и растений
anaschu 27.06.2026
import numpy as np class PlantAgent: def __init__(self, name, strategy, initial_biomass): self. name = name self. strategy = strategy # "greedy" (широколиственные) или. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru