ANTICHAT Forum
HOME FORUMS MEMBERS RECENT POSTS LOG IN  
× Авторизация
Имя пользователя:
Пароль:
Нет аккаунта? Регистрация
НОВЫЕ ТОРГОВАЯ НОВОСТИ
loading...
Скрыть
Вернуться   ANTICHAT > ПРОГРАММИРОВАНИЕ > PHP
   
Ответ
 
Опции темы Поиск в этой теме Опции просмотра

  #1  
Старый 23.02.2009, 00:42
shellz[21h]
Постоянный
Регистрация: 20.12.2007
Сообщений: 334
С нами: 9680718

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

Цитата:
ну давай для начала разберемся откуда данные из sql базы? изи из текстового файла? )))
данные из файла.

Повторюсь, файл с данными, либо структука как угодно):

user_id: table1
pass: table1
mail: table1
pid: table2
url: table2
sum: table2

Нужно этот список, превратить в:

user_id,pass,mail.table1
pid,url,sum.table2
 
Ответить с цитированием

  #2  
Старый 23.02.2009, 03:33
Gifts
Reservists Of Antichat - Level 6
Регистрация: 25.04.2008
Сообщений: 827
С нами: 9497186

Репутация: 1304


По умолчанию

shellz[21h]
PHP код:
$in=file('file.txt');
$out=array();
foreach(
$in as $row)
{
    
$tmp=explode(': ',$row,2);
    
$out[$tmp[1]][]=$tmp[0];
}
foreach (
$out as $u=>$v)
{
    
$out[$u]=implode(',',$v).'.'.$u;
}

print_r($out); 
 
Ответить с цитированием

  #3  
Старый 23.02.2009, 09:20
shellz[21h]
Постоянный
Регистрация: 20.12.2007
Сообщений: 334
С нами: 9680718

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

Gifts, спасибо!
 
Ответить с цитированием

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

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

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


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

  #5  
Старый 23.02.2009, 14:05
KIR@PRO
Постоянный
Регистрация: 26.12.2007
Сообщений: 361
С нами: 9671366

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

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


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

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

  #6  
Старый 23.02.2009, 16:14
Zedi
Постоянный
Регистрация: 06.06.2007
Сообщений: 335
С нами: 9963746

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

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

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

  #7  
Старый 23.02.2009, 16:27
KIR@PRO
Постоянный
Регистрация: 26.12.2007
Сообщений: 361
С нами: 9671366

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

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


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

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

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

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

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

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

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

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

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

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

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

  #10  
Старый 23.02.2009, 17:17
geforce
Постоянный
Регистрация: 21.08.2008
Сообщений: 302
С нами: 9326973

Репутация: -25
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..
 
Ответить с цитированием
Ответ



Предыдущая тема Следующая тема
Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
[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 ™ © 2001- Antichat Kft.