Наши проекты:
Журнал · Discuz!ML · Wiki · DRKB · Помощь проекту |
||
ПРАВИЛА | FAQ | Помощь | Поиск | Участники | Календарь | Избранное | RSS |
[3.236.86.184] |
|
Сообщ.
#1
,
|
|
|
Эта тема регулярно просматривается модераторами и предназначена для:
Таким образом облегчается взаимодействие между посетителями и модераторами, а также учет DigiMoney. |
Сообщ.
#2
,
|
|
|
Cтандарт оформления вопросов/ответов в FAQ и проектов в "Нашей лаборатории".
[ color=green ][ size=6 ]%Заголовок%[ /size ] [ size=3 ]%Краткое описание, если есть%[ /size ] [ /color ] [ color=blue ][ b ]Автор:[ /b ] [ url=%URL_профиля_автора% ]%Ник автора%[ /url ] [ b ]Язык:[ /b ] %Язык%[ /color ] %Содержание% |
Сообщ.
#3
,
|
|
|
Ошибка в FAQ'е раздела Системы, Сети, Технологии -> WWW Masters -> HTML, CSS, Flash, JavaScript ... в сообщении номер 7 пункт фака 1.3 Динамический статус.. В теге meta слово Revizit, а надо Revisit
|
Сообщ.
#4
,
|
|
|
rvt, ошибки нет, точнее она преднамеренна. Мета тэг должен содержать именно revizit, а не revisit. Аналогично, вместо HTTP_REFERRER правильной переменной окружения является HTTP_REFERER.
|
Сообщ.
#5
,
|
|
|
Модераторам "WWW Masters" (во всеуслышанье): при перемещении сообщений из данного топика в топики назначения (к примеру, FAQ или Нашу Лабораторию) и удалении лишних сообщений в этой теме оповещайте авторов этих сообщений с помощью PM.
|
Сообщ.
#6
,
|
|
|
Спасибо за понимание.
Что-то я поторопился и мой фак нехорошо выглядит. Вот оно самое POD-описание, которое внутри, которое на "английском": NAME Hash - Provides pseudo-hash class with non-strict keys VERSION This document describes version 1.0 of Object.pm module, released Jan 28, 2005. SYNOPSIS use Hash; $\="\n"; $hash=new Hash( DBQ=>'/home/www/home/dev/www/db1.mdb', Host=>'localhost', Hosting=>'HOME', host=>'http://localhost', nonocase=>1 # switches off nocase option ); print $hash->{dbq}; # prints "/home/www/home/dev/www/db1.mdb" # nocase compare matches print $hash->{'what is your hosting?'}; # prints "HOME" # perl regex pattern matches print $hash->{'Enter your hostname here'};# prints "http://localhost" # perl regex pattern matches print $hash->{'Enter your Hostname here'};# prints "http://localhost" # perl regex pattern matches print $hash->{'+?dbquu__'}; # prints "/home/www/home/dev/www/db1.mdb" # soundex equivalets "DBQ" $hash=new Hash( data=>{ # the key defines here is some data DBQ=>'b', Connection=>'d', nonocase=>'dsfdsf', # this key is not option array, this is data key abc=>12 }, nonocase=>1, # switches off case-independment mathing nolike=>1, # switches off like mathing nosoundex=>1, # switches off soundex mathing #nothrough=>1 # switches off through mathing ); DESCRIPTION This module requires Text::Soundex module has been installed. The constructor method of class Hash by default takes your hash data as parameters. But there is special keys that defines how to find matches. SPECIAL KEYS data The "data" key says what data your pseudo-hash contains. atstart You have not to use this option. For description see the code. COMPARE OPTIONS nonocase If this option is switched on (1), then keys will not compared nocase. nolike If this option is switched on (1), then keys will not compared with perl regexp pattern matching. nosoundex If this option is switched on (1), then keys will not compared with soundex matching. OVERLOADING DEFAULT COMPARE FUNCTIONS use Hash; $Hash::SUBS{soundex}{sub}=sub{ use MySoundex; my($self, $key)=(shift, shift); # ............. + sub{$key eq soundex(shift)} }; $Hash::SUBS{soundex}{order}=1; # by default soundex order is 4 MAKE YOUR OWN COMPARE FUNCTION $Hash::SUBS{myfunction}={ order=>5, sub=>sub{ my($self, $key)=(shift, shift); +sub{$key eq shift} } }; $hash=new Hash( data=>{%ENV}, nomyfunction=>1 # switches off "myfunction" ); AUTHOR Shatrov Alexey cdch@yandex.ru Copyright (c) 2005 Shatrov Alexey. All rights reserved. This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself. |
Сообщ.
#7
,
|
|
|
лФП ФБН ЙОФЕТЕУПЧБМУС МЕЗЛПЧЕУОЩН (ЧЕУ Ч БТИЙЧЕ ЧУЕЗП 5 ЛЙМП) Й РТПУФЩН HTTP-УЕТЧЕТПН ОБ TCL?
http://sourceforge.net/projects/tws/ уФПЙФ ФПМШЛП ТБУРБЛПЧБФШ Ч МАВХА РБРЛХ, УПЪДБФШ Ч ОЕК РБРЛХ ./htdocs Й ДПВБЧЙФШ ЖБКМЩ ./htdocs/favicon.ico Й ./htdocs/index.html, Б ФБЛ ЦЕ ЪБРХУФЙФШ `./webserver.tcl` Й ХЧЙДЕФШ ТЕЪХМШФБФ ОБ localhost:2540. рТЙМБЗБЕФУС ЛПОЖЙЗХТБГЙПООЩК ЖБКМ http.conf. уПЗМБУОП README, МЙГЕОЪЙС GPL. |
Сообщ.
#8
,
|
|
|
Новая версия RXParser 1.7125.
Что нового? Версия 1.7125: 1. Ускорена загрузка правил. Добавлена возможность сохранения в отдельный файл отпарсенных правил разбора и сборки с возможностью загрузки. 2. Исправлена ошибка несовместимости версии 1.6001. Теперь RXParser 1.7125 работает для разных платформ одинаково. 4. Модуль успешно протестирован на Perl 5.6.x. 3. Дополнительно оптимизирован код модуля. Прикреплённый файлRXParser.1.7125.zip (39.24 Кбайт, скачиваний: 1117) |
Сообщ.
#9
,
|
|
|
Прошу обновить FAQ по адресу Наша Лаборатория (сообщение #648855)
|
Сообщ.
#10
,
|
|
|
Tishaishii
обновить не покатит - тока заменить лии добавить |
Сообщ.
#11
,
|
|
|
Ну да бог с ним. Удалите тогда вовсе. Это вы умеете.
|
Сообщ.
#12
,
|
|
|
Tishaishii
? уже двинул куда надо ( не удалил ) |
Сообщ.
#13
,
|
|
|
Вот спасибо, хорошо, скоро выложу ещё.
|
Сообщ.
#14
,
|
|
|
Tishaishii
просто у мя и у Трустмастера ща времени мало .... |
Сообщ.
#15
,
|
|
|
Ооо, время - самое ценное, что есть в жизни и его всегда мало, особенно на дела, не экономящие время.
|
Сообщ.
#16
,
|
|
|
Иваныч книга небось скоммунизденная
|
Сообщ.
#17
,
|
|
|
Mastilior
какого *** ты ето не грохнул - нелегальны ж такие сслыки - в Клуб такие |
Сообщ.
#18
,
|
|
|
Я че-то не понял ?!
Цитата SergeS @ Иваныч книга небось скоммунизденная Ты сам скачал, а другим х-й ? |
Сообщ.
#19
,
|
|
|
Иваныч
у мя она давно лежит ! ( если мя попросить приватом то дам хорошие линки ) - но не открыто их давать ! |
Сообщ.
#20
,
|
|
|
А что, SergeS, прививаешь чувство покорности или проблема с общением? Я за open.sources.ru, да за то, чтобы знания не были тайными, а что же ты делаешь?
Ну да, не все "за". Но надежда всегда есть, я много разных иностранных фильмов смотрел, что с людьми делает отчаяние, а ещё старую книжку читал. Вот, например, в виде ФАК можно разместить следующие мои знания: Всё дело в том, что поисковики обычно ломают сайт, чтобы проиндексировать его содержимое, получают права администратора сервака, имеют полный доступ ко всем возможностям веб-сервера. Так же, поисковики, как правило, ломают и СУБД, чтобы можно было им от туда информацию из базы данных индексировать. Ну вот отсюда и результат: поисковики индексируют не сами страницы, а скачивают программы, запускают их у себя на тестовой машине локально и смотрят что же эти программы делают. Часто в программах находятся всякие пароли, а БД всякие-там номера кредиток и счетов с кучей халявных возможностей. Но, благодаря подписанному договору со всеми банками белого света и мира, средства на счетах, тьфу-тьфу-тьфу, покуда остаются не тронутыми. Так что, когда ты пишешь ориентированное на веб приложение, ты оставляй ключевые слова в комментариях в программном коде. Хотя нет, комментарии, ведь, поисковиками просто игнорируются. Ты тогда вот что, ты эти ключевые слова закавыч, чтобы это были строки, а рядом напиши комментарий для какой поисковой системы эти слова. Например "Слова" #А вот эти специально для веб-робота www.yandex.ru или www.google.ru. #Ты (обращаюсь к роботу), передай своей маме, чобы показывала мою страницу почаще, пожалуйста. А чтобы сайт не надо было придумывать как ломать и содержимое сайта быстрее индексировалось, придумали выдавать поисковикам эти слова, и, чтобы не страдала тестовая машина, придумали запускать программы на том же сервере, а чтобы пользователю было удобнее просматривать результаты жизнедеятельности программ придумали всякие языки разметки (типа HTML) и веб-браузеры. Но до сих пор ходят слухи о взломах сайта - это трудятся неуёмные процессы-зомби устаревших образов программ поисковых роботов. Ты же слышал, как недавно с помощью поисковой системы google взломали много форумов на старом движке PHPBB? Ну вот, так что бойся старых поисковых машин со старыми движками, которые уже долго не было юрких рук юных очкастых администраторов, и где давно не выключали электричество, там ещё живы процессы-зомби. |
Сообщ.
#21
,
|
|
|
aGR
подправь своё сообшение так как все в Нашей Лаборатории и добавим |
Сообщ.
#22
,
|
|
|
алэ все ужо как с пол месяцО подредактированА
|
Сообщ.
#23
,
|
|
|
www.myweb.ru - неплохой подбор скриптов для web-программистов
|
Сообщ.
#24
,
|
|
|
Добавьте http://www.scbr.com в раздел инструменты. Это готовые контролы на JavaScript для использования вместе с AJAX.
И http://www.fckeditor.net тоже. Странно, что его там ещё нет. |
Сообщ.
#25
,
|
|
|
FAQ по JScript:
Цитата Если вы хотите чтолибо доавить или вам чтолибо не нравится - пишите сюда |
Сообщ.
#27
,
|
|
|
Объектная обертка для массива данных
Данная обертка эмулирует работу массива, скрывает работу с массивом за объектом, стандартный ArrayObject не подходит в силу того, что не умеет работать с многомерными массивами. В настоящий момент итератор возвращает данные, а не временный объект. Пожелание и критика. Автор: Axis Язык: PHP 5 и выше /** * Объектная обертка для массива * @author Axis * @category Proxy */ class AxArrayAcces implements ArrayAccess, Countable, Iterator { protected $data = null; protected $parent = null; protected $index = null; protected $changed = false; /** * Конструктор, возможна предварительная инициализация массивом * @param array данные * @param AxArrayAcces родитель (для внутренних нужд) * @param mixed индекс текущего среза (для внутренних нужд) */ public function __construct($data = null, $parent = null, $index = null) { if($index !== null) $this->index = $index; if($parent !== null) $this->parent = $parent; if($data !== null) $this->data =& $data; if($data === null && $parent === null && $index === null) $this->data = array(); } /** * Создание массива, используется при установке значения на несуществующем срезе */ protected function createArray($index = null) { if($this->parent !== null && $this->index !== null) { if($this->data === null) { $this->parent->createArray($this->index); if($this->parent->data !== null) { $this->data =& $this->parent->data[$this->index]; } } } if($index !== null) $this->data[$index] = array(); } /** * Установка флага изменение ветки * @param bool флаг */ protected function SetChanged($val = true) { if($this->parent !== null) $this->parent->SetChanged($val); else $this->changed = $val; } /** * Флаг измененности ветки */ public function IsChanged() { if($this->parent === null) return $this->changed; else return $this->parent->IsParent(); } /** * Копия данных среза * @return mixed данные */ public function Value() { return $this->data; } /** * Данные среза по ссылке * @return reference данные */ public function &ValueByRef() { return $this->data; } public function __toString() { return (string)$this->data; } // Iterator private $position = null; public function current () { if($this->data !== null) { if(is_array($this->data[key($this->data)])) return new AxArrayAcces(&$this->data[key($this->data)], $this, key($this->data)); else return current($this->data); } return null; } public function key () { if($this->data !== null) return key($this->data); return null; } public function next () { if($this->data !== null) return next($this->data) !== false; return null; } public function rewind () { if($this->data !== null) return reset($this->data); return null; } public function valid () { if($this->data !== null) return current($this->data) !== false; return null; } // Countable public function count() { if($this->data === null) return 0; return sizeof($this->data); } // ArrayAccess public function offsetExists($offset) { if($this->data === null) return false; return isset($this->data[$offset]); } public function offsetGet($offset) { if($this->data === null || !isset($this->data[$offset])) return new AxArrayAcces(null, $this, $offset); if(is_array($this->data[$offset])) return new AxArrayAcces(&$this->data[$offset], $this, $offset); else return $this->data[$offset]; } public function offsetSet($offset, $value) { if($this->data === null) $this->createArray(); $this->SetChanged(); $this->data[$offset] = $value; } public function offsetUnset($offset) { unset($this->data[$offset]); } } |
Сообщ.
#28
,
|
|
|
Сообщ.
#29
,
|
|
|
Привет!
У меня есть скрипт на php <?php $socket = fsockopen('test1.ua', 80, $errno, $errstr, 30); if(!$socket)die("$errstr($errno)"); //разделитель $boundary = md5(uniqid(time())); /*собираем часть с файлом: сначала разделитель\r\n со следующей строки заголовки\r\n потом пустая строка\r\n после чего сам файл\r\n */ $file = "--$boundary\r\n"; $file.= "Content-Disposition: form-data; name=\"myfile\"; filename=\"summary.log\"\r\n"; $file.= "Content-Type: text/plain\r\n\r\n"; $file.= file_get_contents("C:\test.txt");// это файл у юзера на компе $file.= "\r\n"; //пишем в сокет метод, URI и протокол $headers = "POST /get.php HTTP/1.1\r\n"; //а также имя хоста $headers .= "Host: test1.ru\r\n"; //размер передаваемых данных передаем в заголовке //Content-length $headers .= "Content-length:".strlen($file)."\r\n"; $headers .= "Content-Type: multipart/form-data; boundary=$boundary\r\n"; $headers .= "Connection: Close\r\n\r\n"; //передаем файл $headers .= "$file"; //в конце разделитель $headers .= "--$boundary--\r\n"; //и пустая строка $headers .= "\r\n"; fwrite($socket, $headers); //теперь читаем и выводим ответ $answer = ''; while(!feof($socket)){ $answer= fgets($socket, 4096); echo $answer; } //закрываем сокет fclose($socket); ?> он скрипту get.php отправляет файл test.txt (аналог простой форме которая отправляет файл на сервер) <html> <body> <FORM ENCTYPE="multipart/form-data" ACTION="get.php" METHOD=POST><br> Выберете файл: <INPUT NAME="myfile" TYPE="file"><br> <INPUT TYPE="submit" VALUE="Загрузить"> </FORM> </body> </html> вот код скрипта get.php <?php // Загрузка файлов на сервер // Если register_globals=Off // Если upload файла if(isset($_FILES["myfile"])) { $myfile = $_FILES["myfile"]["tmp_name"]; $myfile_name = $_FILES["myfile"]["name"]; $myfile_size = $_FILES["myfile"]["size"]; $myfile_type = $_FILES["myfile"]["type"]; $error_flag = $_FILES["myfile"]["error"]; // Если ошибок не было if($error_flag == 0) { print("Имя файла на нашем сервере (во время запроса): ".$myfile."<br>"); print("Имя файла на компьютере пользователя: ".$myfile_name."<br>"); print("MIME-тип файла: ".$myfile_type."<br>"); print("Размер файла: ".$myfile_size."<br><br>"); $catalog = "../Our_Site/".$myfile_name; copy($myfile, $catalog); // Получаем содержимое файла $fp = fopen($myfile,"r"); $content = fread($fp, filesize($myfile)); fclose($fp); // Вывод содержимого файла //print($content); } // end of if 2 } // end of if 1 ?> теперь вопрос : если пользоваться формой то файл на сервере создается, а если первым скриптом то нет. скажите что неправильно |
Сообщ.
#30
,
|
|
|
Цитата miki131 @ скажите что неправильно Во-первых неправильно то, что ты не воспользовался тэгами [CODE] [/CODE] Добавлено А во-вторых вообще-то раздел у нас есть PHP... |
Сообщ.
#31
,
|
|
|
Прошу немного внимания:
В разделах JavaScript, DOM/DHTML и HTML, CSS откопаны и переформированы FAQ'и... По HTML/CSS: FAQ По JavaScript: FAQ по JavaScript К сожалению как оказалось в них не так то много сообщений... Если есть желание и силы, нужно заняться их наполнением... Сообщения для FAQ я думаю можно выкладывать здесь (как и задумывалось изначально), желательно (но не критично) оформлять также как это сделано в уже существующих сообщениях FAQ'ов |
Сообщ.
#32
,
|
|
|
Приглашаю всех парней в персональный видеочат. Я вот тут: http://runetki.com/194441
Общаюсь на любые самые разнообразные темы. Если захочешь, в самом конце общения можешь вознаградить меня за мой непосильный труд мелочью из твоего кошелька. Приятных встреч. |
Сообщ.
#33
,
|
|
|
Тогда было бы логичнее ссылаться на пункт 4.1 или раздел 4, а тут позиция. Вводят в заблуждение...
Прикреплённый файл29.jpg (8,04 Кбайт, скачиваний: 1837) |