Пятница, 29 Марта 2024, 01:10

Приветствую Вас Гость

[ Новые сообщения · Игроделы · Правила · Поиск ]
  • Страница 1 из 2
  • 1
  • 2
  • »
Форум игроделов » Движки для разработки игр и сложные системы разработки » Движки для браузерных игр » Чат (помогите)
Чат
TESBДата: Среда, 02 Июля 2014, 19:01 | Сообщение # 1
участник
Сейчас нет на сайте
в чате могу писать только англ буквами и цифрами,а русскими не могу что делать?
dima9595Дата: Среда, 02 Июля 2014, 20:05 | Сообщение # 2
почти ветеран
Сейчас нет на сайте
TESB, пожалуйста поподробней! Своя наработка или взят откуда-то (в том числе и движок). Что вы имеете ввиду под "в чате не могу писать русскими буквами"?

Добавлено (02.07.2014, 20:05)
---------------------------------------------

Цитата dima9595 ()
Что вы имеете ввиду под "в чате не могу писать русскими буквами"

не отображаются буквы или вводите, отправляете и ни фига не показывает!?


TESBДата: Среда, 02 Июля 2014, 20:08 | Сообщение # 3
участник
Сейчас нет на сайте
Цитата
TESB, пожалуйста поподробней! Своя наработка или взят откуда-то (в том числе и движок). Что вы имеете ввиду под "в чате не могу писать русскими буквами"?

Старый и дурацкий исходник покелегенды,только написал по русски появляется мой ник и все а текста нет
dima9595Дата: Среда, 02 Июля 2014, 20:43 | Сообщение # 4
почти ветеран
Сейчас нет на сайте
код в студию!
А пока не прочёл код... возможно у тебя не передаётся запрос в бд. Проверь все переменные в форме и скрипте отправке сообщений. А так же проверь вывод данных.


TESBДата: Среда, 02 Июля 2014, 20:46 | Сообщение # 5
участник
Сейчас нет на сайте
Цитата
код в студию!
А пока не прочёл код... возможно у тебя не передаётся запрос в бд. Проверь все переменные в форме и скрипте отправке сообщений. А так же проверь вывод данных.

<?php
include ("include/proverka.php");
if (isset($_GET['id'])) {
include ("include/drop_chat.php");
}
$id_log = $_SESSION['id'];
$myrow = first('SELECT * FROM users WHERE id=%d',$id_log);
$groups = "1";
$Group = $myrow['groups'];
$locmess = $myrow['Building'];
$prow_bt_id = first('SELECT base_id FROM pokemon_battle WHERE base_id=%d',$_SESSION['id']);
$Group = $myrow['groups'];
$my_loc_bt = $myrow['Building'];
$loc_zap = first('SELECT * FROM Buildings WHERE ID=%d',$my_loc_bt);

if(!$prow_bt_id AND $myrow['pvp']==0){
if(($myrow['Pv_eset']>0) AND ($myrow['Battle_id'] == 0)){
if($loc_zap['Pve']>0){
$a = time();
if($myrow['atack_poke']<$a or $myrow['atack_poke'] == $a){
$pok_dik = first('
SELECT p.p_id, p.exp, p.base_nom, p.poimka, p.exp_a, p.exp_b, p.lvl, CEIL(RAND()*p.chance) as chance
FROM buildings_pokemons p
LEFT JOIN quest q
ON q.quest_id=p.quest_id AND q.process=p.q_process AND q.user_id=%d
LEFT JOIN items_users iu
ON iu.user_id=%d
LEFT JOIN Items it
ON iu.item_id=it.id AND (it.tip_na_pok=p.items_go OR it.id=p.item_id_go)
WHERE p.building_id=%d
AND ((p.quest_id=0)OR(q.gotov=0 AND NOT ISNULL(q.id)))
AND ((p.items_go=0)OR( (it.tip_na_pok>0 OR it.id>0) AND NOT ISNULL(it.id)))
ORDER BY chance DESC LIMIT 1',$_SESSION['id'],$_SESSION['id'],$my_loc_bt);

$lvl = rand($pok_dik['lvl'],$pok_dik['lvl']+4);
$BID = $pok_dik['base_nom'];
$iv = rand(5,25);
$ev = rand(10,35);
$har = 1;
$sex = ''.mt_rand(1,2);
$pok = first('SELECT * FROM poke_base WHERE id=%d',$BID);
$hp = (($iv+($pok['hp']*2)+($ev/4)+100)*($lvl/100))+10;
$atk = ((($iv+($pok['atk']*2)+($ev/4))*($lvl/100))+5)*$har;
$def = ((($iv+($pok['def']*2)+($ev/4))*($lvl/100))+5)*$har;
$satk = ((($iv+($pok['satk']*2)+($ev/4))*($lvl/100))+5)*$har;
$sdef = ((($iv+($pok['sdef']*2)+($ev/4))*($lvl/100))+5)*$har;
$speed = ((($iv+($pok['speed']*2)+($ev/4))*($lvl/100))+5)*$har;
insert('pokemon_battle',array(
'id'=>$pok_dik['p_id'],
'level'=>$lvl,
'name'=>$pok['title'],
'base_id'=>$_SESSION['id'],
'exp'=>$pok_dik['exp'],
'hp_now'=>$hp,
'hp_max'=>$hp,
'atk'=>$atk,
'def'=>$def,
'base_nom'=>$pok_dik['base_nom'],
'poimka'=>$pok_dik['poimka'],
'exp_a'=>$pok_dik['exp_a'],
'exp_b'=>$pok_dik['exp_b'],
'satk'=>$satk,
'sdef'=>$sdef));
$pokemon_start = first('SELECT id FROM pokemon_user WHERE user=%d AND active=1 AND start=1',$_SESSION['id']);
$user2 = $pok_dik['p_id'];
$time_pve = time() + 3600;
insert('battle',array(
'user1'=>$_SESSION['id'],
'user2'=>$user2,
'poke_id'=>$pokemon_start['id'],
'time'=>$time_pve
));
$Bt = "1";
update('users',array('Battle_id'=>$Bt),'id='.(int)$_SESSION['id']);
echo "parent.loc('fight_m');";
}}else{}}}
if(isset($_GET['chat']))
{
$chat = $_GET['chat'];
update('users',array('chatbox'=>$chat),'id='.(int)$myrow['id']);
$myrow = first('SELECT * FROM users WHERE id=%d',$id_log);
$groups = "1";
$Group = $myrow['groups'];
$locmess = $myrow['Building'];
}
?>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<meta http-equiv="refresh" content="10;URL=game.php?go=chat">
<meta HTTP-EQUIV="Content-Type" CONTENT="text/html; Charset=Windows-1251">
<head>
<style>
a:link, a:visited {color: #E4FAFD; text-decoration:none}
a:hover, a:active {color: #E4FAFD; text-decoration:underline}
body {
color: #000000;
SCROLLBAR-FACE-COLOR: #b3d0c1;
SCROLLBAR-HIGHLIGHT-COLOR: #65927b ;
SCROLLBAR-SHADOW-COLOR: #65927b ;
SCROLLBAR-ARROW-COLOR: #65927b ;
SCROLLBAR-TRACK-COLOR: #65927b ;
SCROLLBAR-3DLIGHT-COLOR: #65927b ;
SCROLLBAR-DARKSHADOW-COLOR: #b3d0c1;
background-color:#4f705f;
}

#name {
color: #A52A2A;
}

#name2 {
color: #0000FF;
}
#name4 {
color: #000080;
}

#name5 {
color: #00FFFF;
}

#name7 {
color: #A020F0;
}

#name8 {
color: #FF4500;
}
</style>
</head>
<body onload="label()">
<script>
function label()
{
var a = document.body.clientWidth;
var b = a - 420;
document.getElementById("label").style.left = b;
window.scrollBy(0,650000)
}
</script>
<?
$massages = mysql_query("SELECT * FROM message ORDER BY id_mes");
while($sms = mysql_fetch_array($massages))
{
$pl = first('SELECT * FROM users WHERE login="%s"',$sms['author']);
$level = $pl['groups'];
$login_in = $sms['author'];
if($level == 1){ $login_in = '<font color=#000000><b>'.$sms['author'].'</b></font>'; }
if($level == 2){ $login_in = '<font color=#000000><b>'.$sms['author'].'</b></font>'; }
if($level == 3){ $login_in = '<font color=#000000><b>'.$sms['author'].'</b></font>'; }
if($level == 5){ $login_in = '<font color=#551A8B><b>'.$sms['author'].'</b></font>'; }
if($level == 6){ $login_in = '<font color=#FF7F50><b>'.$sms['author'].'</b></font>'; }
if($pl['Moder'] == 3 and $level == 1) { $login_in = '<font color=red><b>'.$sms['author'].'</b></font>'; }
if($sms['is_private'] == 1)
{
$t = date('H:i:s',$sms['time']);
if($sms['author'] == $myrow['login'] or $sms['user_id_to'] == $myrow['id'])
{
echo "<font style='FONT-SIZE: 13px; FONT-FAMILY: Tahoma; text-align:justify;'>
".$sms['time']."
<a style='cursor:hand;' onclick=\"parent.privat('".$sms['author']."')\")'>PR</a> <b><a style='cursor:hand;' onclick=\"parent.name('".$sms['author']."')\")'>".$login_in."</a>: </b></font>";
echo $sms['text'];
echo "<br>";
}
}
else
{
if($sms['chat'] == $myrow['chatbox'])
{
echo "<font style='FONT-SIZE: 13px; FONT-FAMILY: Tahoma; text-align:justify;'>
".$sms['time']."
<a style='cursor:hand;' onclick=\"parent.privat('".$sms['author']."')\")'>PR</a> <b><a style='cursor:hand;' onclick=\"parent.name('".$sms['author']."')\")'>".$login_in."</a>: </b></font>";
echo $sms['text'];
echo "<br>";
}
}
}
$label[$myrow['chatbox']] = "red";
?>

<center><div id="label" style="position: fixed; width: 400px; height: 20px; background: green;top:0;"><center><a style="color: <? echo $label['3']; ?>;" href="game.php?chat=3&go=chat#mess">Торговый чат</a> | <a style="color: <? echo $label['2']; ?>;" href="game.php?chat=2&go=chat#mess">Чат новичков</a> | <a style="color: <? echo $label['1']; ?>;" href="game.php?chat=1&go=chat#mess">Стандартный чат</a></center></div></center>
<DIV ID="mess"></DIV>
<div id="asd"> </div>
</body>
</html>
lvovandДата: Среда, 02 Июля 2014, 21:00 | Сообщение # 6
старожил
Сейчас нет на сайте
Цитата dima9595 ()
код в студию!

лучше бы не просил ))
и php, и стили, и html - все в кучу, жесть

из того что показал, уже видно какой-то кракозябый код, в таблицу то пишется сообщение или нет?


Разработка и продвижение сайтов. Дизайн
TESBДата: Среда, 02 Июля 2014, 21:02 | Сообщение # 7
участник
Сейчас нет на сайте
Цитата
лучше бы не просил))
и PHP, и стили, и HTML - все в кучу, жесть из Того ЧТО показал, уже видно какой-то кракозябый код, в таблицу то пишется сообщение или нет?

Код писал не я
CoronaSdkMarmeladeQuickДата: Среда, 02 Июля 2014, 21:26 | Сообщение # 8
почетный гость
Сейчас нет на сайте
Цитата TESB ()
в чате могу писать только англ буквами и цифрами,а русскими не могу что делать?

проверьте кодировку, должна быть utf-8
TESBДата: Среда, 02 Июля 2014, 21:40 | Сообщение # 9
участник
Сейчас нет на сайте
Цитата
проверьте кодировку, должна быть utf-8

Если через нодетап ставлю utf8 без вом тогда весь чат знаками вопроса
dima9595Дата: Среда, 02 Июля 2014, 22:07 | Сообщение # 10
почти ветеран
Сейчас нет на сайте
Не только кодировку файла нужно редактировать, а и сам html код.
Код
<meta HTTP-EQUIV="Content-Type" CONTENT="text/html; Charset=Windows-1251">

поменяйте на:
Код
<meta HTTP-EQUIV="Content-Type" CONTENT="text/html; Charset=utf-8">

Так же рекомендую использовать htaccess. И в нём прописать кодировку. Кстати, ещё и при работе с базой данных.

Добавлено (02.07.2014, 22:07)
---------------------------------------------
TESB, кстати, а как ты добавляешь текст в чат? Я что-то не заметил здесь формы...




Сообщение отредактировал dima9595 - Среда, 02 Июля 2014, 22:05
TESBДата: Среда, 02 Июля 2014, 22:08 | Сообщение # 11
участник
Сейчас нет на сайте
Цитата
Не только кодировку файла нужно редактировать, а и сам html код.
Код
<meta HTTP-EQUIV="Content-Type" CONTENT="text/html; Charset=Windows-1251">

поменяйте на:
Код
<meta HTTP-EQUIV="Content-Type" CONTENT="text/html; Charset=utf-8">
не помогло
dima9595Дата: Среда, 02 Июля 2014, 22:17 | Сообщение # 12
почти ветеран
Сейчас нет на сайте
TESB, знаки вопроса везде или только те данные, которые берутся из БД?

TESBДата: Среда, 02 Июля 2014, 22:35 | Сообщение # 13
участник
Сейчас нет на сайте
Цитата
TESB, знаки вопроса везде или только те данные, которые берутся из БД?

Походу из бд
dima9595Дата: Среда, 02 Июля 2014, 23:11 | Сообщение # 14
почти ветеран
Сейчас нет на сайте
Тогда проверяй кодировку в бд и кодировку приходящих данных!
Запрос при подключении к бд.
Код

mysql_query("SET NAMES 'utf8'", $connect);

вместо, $connect - поставь переменную, в которой происходит подключение к mysql серверу.


TESBДата: Среда, 02 Июля 2014, 23:20 | Сообщение # 15
участник
Сейчас нет на сайте
Цитата
Тогда проверяй кодировку в бд и кодировку приходящих данных!
Запрос при подключении к бд.
Код

mysql_query("SET NAMES 'utf8'", $connect);

вместо, $connect - поставь переменную, в которой происходит подключение к mysql серверу.

Во первых запрос при подключении это типо db3.php
а во вторых вместо connect я так и не понял что
dima9595Дата: Среда, 02 Июля 2014, 23:25 | Сообщение # 16
почти ветеран
Сейчас нет на сайте
Цитата TESB ()
Во первых запрос при подключении это типо db3.php

я не знаю структуру движка игры. я просто подсказал.
Цитата TESB ()
а во вторых вместо connect я так и не понял что

вы php вообще знаете? хотя бы на самом простом уровне!?


TESBДата: Среда, 02 Июля 2014, 23:29 | Сообщение # 17
участник
Сейчас нет на сайте
Цитата
Цитата TESB ()
Во первых запрос при подключении это типо db3.php

я не знаю структуру движка игры. я просто подсказал.
Цитата TESB ()
а во вторых вместо connect я так и не понял что

вы php вообще знаете? хотя бы на самом простом уровне!?

Честно?Нет,

вот код
<?php

$db=false;
$last_sql_log = '';
define('MYSQL_NOW','asd67kjk*(&86123');
define('MYSQL_INC','asd6asd7kjk*(&86123');

function db($config=false){
global $db;
if(!$db){
$db = mysql_connect ('localhost','***','***') or die('Not connect to SQL server');
mysql_select_db('***',$db) or die('Not connect to SQL database');

}
return $db;
}

function escapeArr($arr){
for($i=1,$n=sizeof($arr);$i<$n;$i++){
$arr[$i] = mysql_real_escape_string($arr[$i]);
}
return $arr;
}

function query($s){
global $last_sql_log;
if(func_num_args()>1){
$arr = func_get_args();
$s = call_user_func_array('sprintf',escapeArr($arr));
}else if(is_array($s)){
$s = call_user_func_array('sprintf',escapeArr($s));
}
$res = mysql_query($s);
if($error = mysql_error()) {
$last_sql_log = '<div>Query: '.$s.'</div><div style="color:red">Error: '.$error.'</div>';
print $last_sql_log;
die();
}
return $res;
}

function select(){
$arr = func_get_args();
$res = call_user_func_array('query',$arr);
$arr = Array();
while($line = mysql_fetch_assoc($res)) $arr[] = $line;
return $arr;
}

function select_key($key,$items){
$list = array();
for($i=0,$n=sizeof($items);$i<$n;$i++){
$list[$items[$i][$key]] = $items[$i];
}
return $list;
}
/**
* Выполняет запрос выборки одной записи к базе данных.
* Если передано более одного параметра, они буду
* вставлены в запрос sprintf`ом
* @return array Выбранная запись
*/
function first(){
$arr = func_get_args();
$res = call_user_func_array('query',$arr);
return mysql_fetch_assoc($res);
}

function insert($table, $query){
$arg1 = array();
$arg2 = array();
foreach($query as $k=>$v) {
$arg1[] = sprintf('`%s`',$k);
switch($v){
case MYSQL_NOW:
$arg2[] = 'NOW()';
break;
default:
$arg2[] = sprintf('"%s"',mysql_escape_string(trim($v)));
break;
}
}
$s = 'INSERT INTO '.$table.' ('.implode(',',$arg1).')VALUES('.implode(',',$arg2).')';
if(query($s)){
return mysql_insert_id();
}else{
return false;
}
}

function update($table,$query,$where){
$arr=array();
foreach($query as $k=>$v) {
$arr[] = sprintf('`%s`="%s"',$k,mysql_escape_string(trim($v)));
}
return query('UPDATE '.$table.' SET '.implode(',',$arr).' WHERE '.$where);
}

function delete($table,$where){
return query('DELETE FROM '.$table.' WHERE '.$where);
}

?>


Сообщение отредактировал TESB - Среда, 02 Июля 2014, 23:32
dima9595Дата: Среда, 02 Июля 2014, 23:32 | Сообщение # 18
почти ветеран
Сейчас нет на сайте
Ставь
Код
mysql_query("SET NAMES 'utf8'", $db);

после
Код
mysql_select_db('xxxdflv6_pok1',$db) or die('Not connect to SQL database');

Добавлено (02.07.2014, 23:32)
---------------------------------------------
TESB, и да, хватит уже создавать копии топиков!


TESBДата: Среда, 02 Июля 2014, 23:34 | Сообщение # 19
участник
Сейчас нет на сайте
Цитата
Ставь
Код
mysql_query("SET NAMES 'utf8'", $db);

после
Код
mysql_select_db('xxxdflv6_pok1',$db) or die('Not connect to SQL database');

Не помогло
dima9595Дата: Среда, 02 Июля 2014, 23:34 | Сообщение # 20
почти ветеран
Сейчас нет на сайте
У тебя сайт висит в онлайне?

Форум игроделов » Движки для разработки игр и сложные системы разработки » Движки для браузерных игр » Чат (помогите)
  • Страница 1 из 2
  • 1
  • 2
  • »
Поиск:

Все права сохранены. GcUp.ru © 2008-2024 Рейтинг