Welcome!

By registering with us, you'll be able to discuss, share and private message with other members of our community.

SignUp Now!

вопрос про бд

pawn love
Сен
414
113
Активный
как пофиксить запись русских букв в базу данных?

IMG_20240903_223653_238.jpg

и еще подскажите пожалуйста, как дату сделать в таком формате: year-month-day
 
Июл
349
116
Активный
если это бан или похожее что то то использую это
Pawn:
public: @BanName(player_name[], ban_admin[], days, reason[])
{
    mysql_tquery(mysql, !cache_get_row_count() ? (str_f("INSERT INTO `bannames` (`Name`, `BanAdmin`, `BanSeconds`, `BanReason`) VALUE ('%s', '%s', '%d', '%s')", player_name, ban_admin, Global_Time+days*60*60*24, reason)):(str_f("UPDATE `bannames` SET `BanAdmin` = '%s', `BanSeconds` = %d, `BanReason` = '%s' WHERE `Name` = BINARY('%s') LIMIT 1;", ban_admin, Global_Time+days*60*60*24, reason, player_name)));
    
    return true;
}
сама команда бан
Pawn:
cmd:ban(playerid, data[])
{
    new id, days, reason[30];

    if sscanf(data, "uds[30]", id, days, reason) *then
        return SCM(playerid, COLOR_OLDRED, !"Используй: /ban [id] [days 1-30] [Причина]");

    if id == INVALID_PLAYER_ID *then
        return 0;

    if strlen(reason) > 30 *then
        return SCM(playerid, COLOR_RED, !"Не больше 30 символов!");

     if IsAIP(reason) *then
         return 1;

    if !(1 <= days <= 30) *then
        return SCM(playerid, COLOR_OLDRED, !"Используй: /ban [id] [days 1-30] [Причина]");
        
    f(global_str, sizeof(global_str), "Администратор %s[%d] забанил игрока %s[%d] на %d дней. Причина: %s", PN(playerid), playerid, PN(id), id, days, reason);
    if(IsOsnovatel(id)) return SCM(playerid, COLOR_LIGHTRED, "[Ошибка] {ffffff}Запрещено взаимодействовать с людьми состоящих в белом списке!"), f(global_str, 128, "Администратор %s[%d] пытался производить действия над %s[%d] XD", PN(playerid), playerid, PN(id), id), SendAdminsMessage(COLOR_GREY, global_str);
    ASCMALL(COLOR_RED, global_str);
    ANL(PN(id), global_str);
    SPDF(id, 0, DIALOG_STYLE_MSGBOX, !"", "Вы получили бан аккаунта, если вы не согласны с решением Администратора, то напишите жалобу на форум, приложив данный скриншот.\n{2D8E35}%s", !"Закрыть", !"", Setting_Server[4]);
    PI[id][pWarns] = 0;
    BanName(PN(id), PN(playerid), days, reason);
    J_Kick(id);
    Int_SetPlayerData(playerid, "NakazLastTime", Global_Time);
    //
    f(global_str, 256, "Администратор <a href=../pages/user?name=%s>%s</a> забанил игрока <a href=../pages/user?name=%s>%s</a> на %d дней. Причина: %s",
    PN(playerid), PN(playerid), PN(id), PN(id), days, reason);
    aml(global_str, 5, "","");
    //
    return 1;
}
теперь оптимизируй это под свой код
 
Июл
349
116
Активный
если это джайл то
Pawn:
cmd:jail(playerid, params[])
{
    new time;
    if(sscanf(params,"uds[100]",params[0],time,params[1])) return SCM(playerid, COLOR_OLDRED, !"Используй: /jail [id] [time] [reason]");

    if !IsPlayerOnline(params[0]) *then return false;

    if(IsAIP(params[1]))return 1;
    if(strlen(params[1])>30) return SCM(playerid,COLOR_RED,!"Не больше 30 символов!");
    if(PI[params[0]][pJailTime]>0)return SCM(playerid,COLOR_RED,!"Этот игрок уже в КПЗ!");
    if(PI[params[0]][pDemorgan]>0)return SCM(playerid,COLOR_RED,!"Этот игрок уже в ДЕМОРГАНЕ!");
    if(time == 0) return SCM(playerid, COLOR_RED, "Нельзя посадить на 0 минут");
    if(time> 3000) return SCM(playerid, COLOR_RED, "Нельзя посадить больше чем на 3000 минут");
    if(PI[params[0]][pDemorgan]>0 && PI[playerid][pAdmin] < 4) return SCM(playerid, COLOR_RED, !"Ваш уровень не дает возможность менять время отсидки этого игрока.");
    if(JailTSR[params[0]] != -1) return SCM(playerid, COLOR_RED, !"[Ошибка] {FFFFFF}Он находится в ТСР!");
    SetSpawnInfo(params[0], 255, 8, -799.1370,2831.1130,1501.9896, 90.0, 6, 6, 6, 6, 6, 6);
    f(global_str, 200, " Администратор %s[%d] посадил игрока %s[%d] в деморган на %d минут. Причина: %s",PN(playerid), playerid,PN(params[0]), params[0],time, params[1]);
    ASCMALL(COLOR_RED, global_str);
    ANL(PN(params[0]), global_str);
    //
    f(global_str, 256, "Администратор <a href=../pages/user?name=%s>%s</a> посадил игрока <a href=../pages/user?name=%s>%s</a> в деморган на %d минут. Причина: %s",
    PN(playerid), PN(playerid), PN(params[0]), PN(params[0]), time, params[1]);
    aml(global_str, 5, "","");
    //
    PlayerPlaySound(params[0], 1058, 0.0, 0.0, 0.0);
    _ResetGun(params[0]);
    PI[params[0]][pDemorgan] = time*60;
    PI[params[0]][pWanted] = 0;
    PI[params[0]][pPcix] ++;
    UpdatePlayerHealth(params[0],100);
    PlayerSpawn(params[0]);
    return 1;
}
коды взяты с мода аризоны
 
𝚖𝚘𝚛𝚜 𝚌𝚎𝚛𝚝𝚊, 𝚑𝚘𝚛𝚊 𝚒𝚗𝚌𝚎𝚛𝚝𝚊.
Янв
1,559
3,458
Команда форума
Администратор
у аризоны строки в логах, а у меня в виде таблицы.
Посмотреть вложение 2645

поэтому способ который ты мне скинул - работать не будет
в чем проблема, на другой веб-сервер, установить логи UnionLogs, которые я тут и сливал, либо же рандомные логи аризоны, и проверить запись? может, проблема не в записи в бд.
 
pawn love
Сен
414
113
Активный
в чем проблема, на другой веб-сервер, установить логи UnionLogs, которые я тут и сливал, либо же рандомные логи аризоны, и проверить запись? может, проблема не в записи в бд.
проблема в записи в бд, ибо как раз таки в столбце с датой у меня пишет 50, вместо формата даты
 
Сверху