HOME    FORUMS    MEMBERS    RECENT POSTS    LOG IN  
Баннер 1   Баннер 2

ANTICHAT — форум по информационной безопасности, OSINT и технологиям

ANTICHAT — русскоязычное сообщество по безопасности, OSINT и программированию. Форум ранее работал на доменах antichat.ru, antichat.com и antichat.club, и теперь снова доступен на новом адресе — forum.antichat.xyz.
Форум восстановлен и продолжает развитие: доступны архивные темы, добавляются новые обсуждения и материалы.
⚠️ Старые аккаунты восстановить невозможно — необходимо зарегистрироваться заново.
Вернуться   Форум АНТИЧАТ > ПРОГРАММИРОВАНИЕ > PHP
   
Ответ
 
Опции темы Поиск в этой теме Опции просмотра

  #9021  
Старый 23.02.2009, 11:06
Winst0n
Участник форума
Регистрация: 19.08.2008
Сообщений: 104
Провел на форуме:
573945

Репутация: 13
По умолчанию

в бд кодировка cp1251
а выводит вот такой бред...


как исправить ?
 
Ответить с цитированием

  #9022  
Старый 23.02.2009, 14:05
KIR@PRO
Постоянный
Регистрация: 26.12.2007
Сообщений: 353
Провел на форуме:
905389

Репутация: 332
Отправить сообщение для KIR@PRO с помощью ICQ
По умолчанию

Цитата:
Сообщение от Winst0n  
в бд кодировка cp1251
а выводит вот такой бред...


как исправить ?

попробуй другую кодировку, одну из cp1251 она не одна. на сайту ты какую кодировку используеш?
 
Ответить с цитированием

  #9023  
Старый 23.02.2009, 16:14
Zedi
Постоянный
Регистрация: 06.06.2007
Сообщений: 335
Провел на форуме:
1487377

Репутация: 392
Отправить сообщение для Zedi с помощью ICQ
По умолчанию

поменяй кодировку базы данных, можно в phpmyadmin
и попробуй в двиге сразу посде соединения с базой выполнить запрос SET NAMES cp1251
или создай файл .htaccess с
Код:
AddDefaultCharset windows-1251

Последний раз редактировалось Zedi; 23.02.2009 в 16:19..
 
Ответить с цитированием

  #9024  
Старый 23.02.2009, 16:27
KIR@PRO
Постоянный
Регистрация: 26.12.2007
Сообщений: 353
Провел на форуме:
905389

Репутация: 332
Отправить сообщение для KIR@PRO с помощью ICQ
По умолчанию

я имел ввиду страница у тебя какую кодировку использует... просто возможно несколько вариантов:
1) mysql возвращает данные в другой кодировке
2) mysql возвращает данные в нужной кодировке а изза другой кодировки страницы браузер показывает не то что хотелось бы


но у тебя как видно первый вариант
 
Ответить с цитированием

  #9025  
Старый 23.02.2009, 16:43
kraken
Участник форума
Регистрация: 02.01.2009
Сообщений: 104
Провел на форуме:
750298

Репутация: 297
По умолчанию

Winst0n мб ты сделал дамп или туда ставил двиг с нуля?
 
Ответить с цитированием

  #9026  
Старый 23.02.2009, 16:53
Winst0n
Участник форума
Регистрация: 19.08.2008
Сообщений: 104
Провел на форуме:
573945

Репутация: 13
По умолчанию

бд кодировки cp1251
Код:
AddDefaultCharset windows-1251
добавил...

все равно криво выводит

kraken, и с 0 и с "Sypex Dumper" и через муадмин, все криво выводит =\

надо на другом хосте попробывать...

Последний раз редактировалось Winst0n; 23.02.2009 в 16:56..
 
Ответить с цитированием

  #9027  
Старый 23.02.2009, 17:17
geforce
Постоянный
Регистрация: 21.08.2008
Сообщений: 302
Провел на форуме:
458686

Репутация: -25
Отправить сообщение для geforce с помощью ICQ
Question

Вопрос:

Почему функция иногда неработает! Как я заметил она не работает при загрузки картинок с большим разширением???

PHP код:
function openResizeAndSave($nWidth,$fileName) {
            switch(
substr($fileName,-4)) {
               case 
".gif": {
                
$Res=imagecreatefromgif($fileName);
                
$ext=($Res)?".gif":"";
                break;
                }
               case 
".jpg": {
                
$Res=imagecreatefromjpeg($fileName);
                
$ext=($Res)?".jpg":"";
                break;
                }
             default: return 
FALSE;
            }
            if(
$Res) {
                
$Width=imagesx($Res);
                
$Height=imagesy($Res);
            }
            else
                return 
FALSE;
              
$Koef=($nWidth/$Width);
              
$nHeight=(int)($Koef*$Height);
              
$nRes=imagecreatetruecolor($nWidth,$nHeight);
             if(!
imagecopyresampled($nRes,$Res,0,0,0,0,$nWidth,  $nHeight,$Width,$Height))
                return 
FALSE;
                
$Res=$nRes;
                
unlink($fileName);
            switch(
$ext) {
                case 
".jpg": {
                    if(!
imagejpeg($Res,$fileName))
                        return 
FALSE;
                    break;
                    }
                case 
".gif": {
                    if(!
imagegif($Res,$fileName))
                        return 
FALSE;
                    break;
                    }
                default : return 
FALSE;
                }
            return 
TRUE;

Файл где она приминяется:

PHP код:
<?php
// Подключаемься к базе данных
include("db.php");
include(
"function.php");
//================Настройки============= //
// максимальная ширина картинок на превью
$maxwidth "300px";
// Директория для фотографий товаров
$fotos_dir "fotos/";
$resizeWidth=215;
// Полное имя файла вместе с путем
$foto_name time() . "_" $_FILES['myfile']['name'];
$foto_name_dir $fotos_dir time() . "_" $_FILES['myfile']['name'];
// Готовый тэг для вставки картинки на страницу
$foto_tag "<img src='{$foto_name_dir}' border='0'>";
// Тот же тэг, но для превью
$foto_tag_preview "<img src='{$foto_name_dir}' border='0' width='{$maxwidth}'>";
// Текст ошибок
$error_by_mysql "<span style='font: bold 15px tahoma; color: red'>Ошибка при добавлении данных в базу</span>";
$error_by_file "<span style='font: bold 15px tahoma; color: red'>Невозможно загрузить файл в директорию. Возможно её не существует</span>";
// Начало
if (isset($_FILES["myfile"])) {
    
// Если ошибок не было
    
if (($_FILES["myfile"]["error"] == 0) && (in_array(strtolower(substr($_FILES['myfile']['name'], - 4)), array(".jpg" ".gif" ".png")))) {
        
$upfile getcwd() . "/fotos/" time() . "_" basename($_FILES["myfile"]["name"]);
        if (
$_FILES['myfile']['tmp_name']){
            
//Если не удалось загрузить файл
            
if (! move_uploaded_file($_FILES['myfile']['tmp_name'], $upfile))
                exit(
$error_by_file);
            else
            {
//Вызов новой функции для изменения размеров, учти, что теперь только jpg & gif, если хочешь, то добавь png, там все одинково получится
                
openResizeAndSave($resizeWidth,$upfile);
            }
        }
        else
            exit (
"Проблема: возможна атака через загрузку файла хотя проверяется это не так, а, наверное, просто нам подсовывают файл не с тем расширением {$_FILES ['myfile'] ['name']}");
        
// Заносим путь картинки в базу данных
        
$query mysql_query("INSERT INTO foto (url,name) VALUES ('{$foto_name_dir}','{$foto_name}')"$db);
        if (
$query)
        {
            echo 
"{$foto_tag}<br /><b>Данные успешно внесены в базу</b>";
            
$adres=$foto_name_dir;
        }
        else
            exit(
"<p>Ошибка сохранения данных.</p>" mysql_error());
    } else 
//Если возникла ошибка при передаче или левое расширение файла
        
exit("Ошибка обработки данных либо вы пытаетесь подсунуть нам свинью");
}
?>

Последний раз редактировалось geforce; 24.02.2009 в 00:37..
 
Ответить с цитированием

  #9028  
Старый 23.02.2009, 17:20
geforce
Постоянный
Регистрация: 21.08.2008
Сообщений: 302
Провел на форуме:
458686

Репутация: -25
Отправить сообщение для geforce с помощью ICQ
Question

Цитата:
Сообщение от Winst0n  
бд кодировки cp1251
Код:
AddDefaultCharset windows-1251
добавил...

все равно криво выводит

kraken, и с 0 и с "Sypex Dumper" и через муадмин, все криво выводит =\

надо на другом хосте попробывать...
1. Ты Свои php файлы через какую прогу сохронял?
2. При импорте баз на хост выставь нужную кодировку т.к. на некоторых хостах она выстовляется автомотически на юникод!

Последний раз редактировалось geforce; 23.02.2009 в 17:23..
 
Ответить с цитированием

  #9029  
Старый 24.02.2009, 09:49
kik8888
Познающий
Регистрация: 29.02.2008
Сообщений: 45
Провел на форуме:
162965

Репутация: 6
По умолчанию

geforce, a какую ошибку она выдает, когда не работает?
Может быть просто не хватает памяти... Попробуй увеличь memory_limit в конфиге пхп, например в .htaccess пропиши.
 
Ответить с цитированием

  #9030  
Старый 24.02.2009, 15:56
geforce
Постоянный
Регистрация: 21.08.2008
Сообщений: 302
Провел на форуме:
458686

Репутация: -25
Отправить сообщение для geforce с помощью ICQ
По умолчанию

Цитата:
Сообщение от kik8888  
geforce, a какую ошибку она выдает, когда не работает?
Может быть просто не хватает памяти... Попробуй увеличь memory_limit в конфиге пхп, например в .htaccess пропиши.
Ошибки не бывает! Картинка тупо загружается не соблюдая пропорции!
 
Ответить с цитированием
Ответ



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
[c/c++] Новичкам: задаем вопросы _Great_ С/С++, C#, Rust, Swift, Go, Java, Perl, Ruby 5421 21.04.2026 07:37
Интернетчики задали российскому президенту очень странные вопросы podkashey Мировые новости. Обсуждения. 4 07.07.2006 16:53
Вопросы по Ipb 2.0 Voodoo_People Уязвимости CMS / форумов 26 15.02.2005 22:57



Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
 


Быстрый переход




ANTICHAT.XYZ