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

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

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

  #4001  
Старый 07.07.2008, 18:13
m0nsieur
Участник форума
Регистрация: 08.04.2008
Сообщений: 242
Провел на форуме:
2230263

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

Цитата:
Сообщение от Naydav  
m0nsieur

Цитата:
Тогда в чем проблема? И разве форма настолько усложняет задачу?

Навигация через отправку формы? ну-ну...
я бы сказал как это называеться
Я его не так понял, поэтому и насоветовал другого. Никаких навигаций конечно же через формы делать не надо.
 

  #4002  
Старый 07.07.2008, 18:15
MafiaBoy3
Banned
Регистрация: 14.04.2007
Сообщений: 297
Провел на форуме:
756152

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

Извини но мне непонятно можешь объяснить?

Может mod_rewrite нужен?

Как хранить директории? в базе что-ли?
 

  #4003  
Старый 07.07.2008, 18:19
Naydav
Постоянный
Регистрация: 30.12.2006
Сообщений: 434
Провел на форуме:
849583

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

Цитата:
Может mod_rewrite нужен?
повторяю
Цитата:
Ты читать умеешь????
Подыми глаза на один пост!!!

что именно тебе не понятно, ты не знаешь, что такое
.htaccess?
index.php?
или массив $_GET ?

1) Создаем index.php с содержимым
Цитата:
<?php
echo $_GET['action'];
?>
2) Создаем файл, или дописываем к имеющимуся
Цитата:
RewriteEngine on
Options +FollowSymlinks
RewriteRule ^(.*)$ index.php?action=$1 [L]
Можно и RewriteRule ^([a-z]+)/$, все от ситуации зависит
3) Пишем в адресной строке
http://mysite.com/anal/
Смотрим результат

Последний раз редактировалось Naydav; 07.07.2008 в 18:27..
 

  #4004  
Старый 07.07.2008, 18:39
MafiaBoy3
Banned
Регистрация: 14.04.2007
Сообщений: 297
Провел на форуме:
756152

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

С этим тебе спасибо Naydav.

Мне непонятно как вообще сделать разделы для сайта!
У меня сейчас есть страница index.php (главная), login.php, register.php, logout.php.
И с чего начать их делать непонятно?
 

  #4005  
Старый 07.07.2008, 18:44
Naydav
Постоянный
Регистрация: 30.12.2006
Сообщений: 434
Провел на форуме:
849583

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

Цитата:
И с чего начать их делать непонятно?
Смотря, что ты хочешь сделать
Можно
Примитивно - принимать в индексе переменную action, и на основе ее вызывать функцию(подключать модуль)

Нормально - создать класс контроллер

пс
почитай о MVC, уверен найдешь много полезного, сам поймешь, что и к чему
 

  #4006  
Старый 07.07.2008, 18:59
ZET36
Участник форума
Регистрация: 08.10.2007
Сообщений: 259
Провел на форуме:
500748

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

есть скрипт для загрузки файлов на сервер,


PHP код:
    <? error_reporting(15); /* Отображение ошибок РНР, 0 - не 

отображать */
    
$folder '/'/* Папка для загрузки файлов */
    
$max_size '50000'/* Максимальный размер файла в байтах 

*/

    
if($doupload) {
    
$loads $http_post_files;
    
upload($loads$folder$max_size);
    }
    
?>

    <form enctype="multipart/form-data" action="upload.php" 

method="post">
    <input name="data" type="file" size="25">
    <input name="doupload" type="submit" value="Загрузить">
    </form>

    <? function upload($loads$folder$max_size) {

    
$fname $loads['data']['name'];
    
$ftype $loads['data']['type'];
    
$fsize $loads['data']['size'];
    
$ftmp_name $loads['data']['tmp_name'];

    if(
$fsize <= $max_size && $fsize '1') {
    
unlink($folder.$fname);
    
copy($ftmp_name$folder.$fname);
    echo 
"Имя файла: <a href=$folder$fname 

target=_blank><b>
$fname</b></a> <br>";
    echo 
"Тип файла: <b>$ftype</b> <br>";
    echo 
"Размер: <b>";
    
printf("%.2f"$fsize/1000);
    echo 
"</b> Кб";
    } else {
    if(
$fsize $max_size) {
    echo 
"Слишком большой размер файла (больше <b>$max_size</b> 

Байт)"
;
    }
    if(
$fsize <= '1') {
    echo 
"Слишком маленький размер файла (меньше <b>1</b> 

Байта)"
;
    }
    }
    }
    
?>

но при попытке загрузить файл постоянно вылазиет ошибка
Цитата:
Слишком маленький размер файла (меньше 1 Байта)
пожайлусто исправте ошибку
 

  #4007  
Старый 07.07.2008, 19:12
Naydav
Постоянный
Регистрация: 30.12.2006
Сообщений: 434
Провел на форуме:
849583

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

Цитата:
пожайлусто исправте ошибку
1) Скрипт работает только при register_globals = on

2) Вот тебе класс аплоада

Применение
Код нужно немного переделать для аплоада только 1 файла
PHP код:
foreach($_FILES as $key=>$data)
                {
                    
$new explode('.',$data['name']);                
                    
$fupload=& FileUploader::getInstance();
                    
$fupload->_FILESKeyName=$key;
                    
$fupload->newName$NewFileName
                    $fupload
->DestinationPath$DestinationPath;
                    
$fupload->AddAllowedMIME('image/jpeg','image/pjpeg','image/gif','image/png');
                    
$file $fupload->StartUpload();                
                    unset(
$_FILES[$key]['name']);
                } 


Сам класс:
PHP код:
class FileUploader {
        
        var 
$_FILESKeyName;
        
        var 
$newNamefalse;
        
        var 
$DestinationPath'./';
        
        var 
$AllowedMIME= array();
        
        var 
$isUploadedfalse;
        var 
$ErrorMessage'';
        
        var 
$UploadErrors = Array(
            
0=>'There is no error, the file uploaded with success.',
            
1=>'The uploaded file exceeds the upload_max_filesize directive in php.ini.',
            
2=>'The uploaded file exceeds the MAX_FILE_SIZE directive that was specified in the HTML form.',
            
3=>'The uploaded file was only partially uploaded.',
            
4=>'No file was uploaded.',
            
6=>'Missing a temporary folder.',
            
7=>'Failed to write file to disk.',
            
8=>'File upload stopped by extension.'
        
);
        
        
        function 
FileUploader() {
            
        }
        
        function 
StartUpload() {            
            
$_file$_FILES[$this->_FILESKeyName];
            if (
$_file['error']!=0) {
                
$this->ErrorMessage$this->UploadErrors[$_file['error']];
                return;
            }
            else {
                if ( 
count($this->AllowedMIME)>&& !in_array($_file['type'], $this->AllowedMIME)) {
                    
$this->ErrorMessage'Wrong MIME type of uploaded file.';
                    return;
                }
                
                
// start uploading file
                
$this->getNewName($_file['name']);
                
move_uploaded_file($_file['tmp_name'], $this->DestinationPath.$this->newName);
                return 
$this->newName;
            }
        }
        
        function 
getNewName($oldname) {
            
$oldnameexplode('.'$oldname);
            
$extentionstrtolower($oldname[count($oldname)-1]);
            
array_splice($oldnamecount($oldname)-11);
            
$oldnameimplode('.'$oldname);
            
            
$this->newNamestrtolower($this->newName!==false $this->newName $oldname);
            
            
$new_namepreg_replace("/[^a-z0-9]+/i"'_'$this->newName);
            
$this->newName$new_name '.' $extention;

            
$i1;
            while(
file_exists($this->DestinationPath.$this->newName)) {
                
$this->newName$new_name '_' $i '.' $extention;
                
$i++;
            }
        }
        
        function 
AddAllowedMIME() {
            
$amountfunc_num_args();
            if (
$amount>0) {
                
$argumentsfunc_get_args();
                for(
$i=0$i<$amount$i++)
                    
array_push($this->AllowedMIME$arguments[$i]);
            }
        }
        
        function 
ClearAllowedMIME() {
            
array_splice($this->AllowedMIME0);
        }
        
        function &
getInstance() {
            static 
$instance;
            if (!
$instance$instance= new FileUploader();
            return 
$instance;
        }
    } 
Класс под php4, т.е не использует преимуществ php5
Пользуйся классами - экономь время

Последний раз редактировалось Naydav; 07.07.2008 в 19:17..
 

  #4008  
Старый 07.07.2008, 19:19
GreenBear
наркоман с медалью
Регистрация: 07.05.2005
Сообщений: 3,704
Провел на форуме:
19975136

Репутация: 4536


Отправить сообщение для GreenBear с помощью ICQ
По умолчанию

Цитата:
GreenBear, работает, но немного не так, заменяет "right" на
PHP код:
preg_replace('/[^="\']("|\'|=|)(right)("|\'|=|)[^"\.\']/i''\\1<strong>\\2</strong>\\3'$text); 
 

  #4009  
Старый 07.07.2008, 19:32
bxN5
Постоянный
Регистрация: 08.01.2006
Сообщений: 865
Провел на форуме:
3279330

Репутация: 343


Отправить сообщение для bxN5 с помощью ICQ
По умолчанию

Цитата:
Сообщение от MafiaBoy3  
С этим тебе спасибо Naydav.

Мне непонятно как вообще сделать разделы для сайта!
У меня сейчас есть страница index.php (главная), login.php, register.php, logout.php.
И с чего начать их делать непонятно?
Почитай про Zend Framework
 

  #4010  
Старый 07.07.2008, 21:39
svesve
Постоянный
Регистрация: 15.06.2007
Сообщений: 527
Провел на форуме:
1734541

Репутация: 214


По умолчанию

Есть у когонить пример такого скрипта (хотябы подобие):
Скрипт выводит список файлов в директории и рядом с ними ссылка или что то в этом роде при нажатии на которую файл уходит по почте.
 
 



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Интернетчики задали российскому президенту очень странные вопросы podkashey Мировые новости. Обсуждения. 4 07.07.2006 16:53



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


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




ANTICHAT.XYZ