Одинаковые переменные не равны - Visavi.net
https://visavi.net/
RSS - Visavi.nethttps://visavi.net/assets/img/images/logo_small.pngRSS - Visavi.net
https://visavi.net/
[email protected] (admin)[email protected] (admin)Mon, 13 Jan 2025 14:38:01 +0300посмотри кодировку таблицы и файла php, в котором сравниваются данные с формы и ответами из БД<br>
можешь поробывать изменять кодировку БД "кверами" SET NAMES утф-8 <img src="https://visavi.net/uploads/stickers/smile.gif" alt="smile"> ну или лучше сделай всё на локалке или другом хосте заново т.е. залить вопросы или что там делал
https://visavi.net/topics/19938/337397
Одинаковые переменные не равны ДмитрийSun, 20 Mar 2011 23:04:53 +0300Сообщенияhttps://visavi.net/topics/19938/337397Мда.. Изначально бд с вопросами бала в файле с кодировкой win-1021 (както так), перекодировал в utf8, скриптом перемистил это всё в mysql, там тоже хранится в utf8.<br>
Добавил регулярку : $otvet['otvet'] = preg_replace ("/[^a-zA-ZА-Яа-я0-9\s]/","",$otvet['otvet']);<br>
и некоторые символы стали вопросами...<br>
Как это можно подправить в бд? <img src="https://visavi.net/uploads/stickers/cry.gif" alt="cry"> <br>
<br>
<em><span style="font-size:x-small">Добавлено через 01:18 сек.</span></em><br>
В ручную не вариант, там более 25 тысяч вопросов.
https://visavi.net/topics/19938/337375
Одинаковые переменные не равны АндрейSun, 20 Mar 2011 22:21:56 +0300Сообщенияhttps://visavi.net/topics/19938/337375А если предположить что в одной их двух строк содержатся пробелы или байт-коды т.е. не читаемые символы, такие как sub, and их не "видно", но в БД они могут сохранится из-за кодировки ...
https://visavi.net/topics/19938/337370
Одинаковые переменные не равны ДмитрийSun, 20 Mar 2011 22:08:09 +0300Сообщенияhttps://visavi.net/topics/19938/337370Первый раз такое более чем за 3 года кодинга.<br>
<pre class="prettyprint">
<?php
function chat_otvet(){
global $room, $user,$text;
$otvet=mysql_fetch_array(mysql_query("SELECT otvet,time FROM chat_vopros LIMIT 1"));
echo $otvet['otvet'].$text;
if($otvet['otvet']==mb_strtolower($text)){
mysql_query("INSERT INTO chat_posts (text,ot,time,from_id,room) values ('Поздравляю <b>".$user['login']."</b>! Правельный ответ <b>".$otvet['otvet']."</b>!','Умница','".date('U')."',0,'$room[id]')");
echo 1;
}
}
?>
</pre>
У $otvet['otvet'] и $text равне значение, но php с этим почемуто не согласен, я копирую ответ из бд, и при добовлении поста выводится одинаковое значение $otvet['otvet'] и $text, но условие не выполняется. О_О<br>
<br>
<em><span style="font-size:x-small">Добавлено через 03:09 сек.</span></em><br>
Пробовал убирать mb_strtolower() и сравнивать по типам (===), результат тотже...
https://visavi.net/topics/19938/337361
Одинаковые переменные не равны АндрейSun, 20 Mar 2011 21:55:54 +0300Сообщенияhttps://visavi.net/topics/19938/337361