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

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

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

  #14151  
Старый 06.01.2010, 21:44
b3
Постоянный
Регистрация: 05.12.2004
Сообщений: 647
Провел на форуме:
1698585

Репутация: 818


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

Цитата:
про array_reverse почитай
Лишняя нагрузка, может там 1000 ссылок, имхо лучше как я предложил подсчитать count() -1
 
Ответить с цитированием

  #14152  
Старый 06.01.2010, 22:30
Tisar
Новичок
Регистрация: 12.09.2009
Сообщений: 11
Провел на форуме:
71774

Репутация: 0
Question

Отпарсил одну страницу с помощью DOM и хочу полученные данные занести в БД MySQL.
Моя БД:

Код:
CREATE TABLE `jyf` (
  `gf` varchar(5) collate cp1251_general_cs NOT NULL,
  PRIMARY KEY  (`gf`),
  FULLTEXT KEY `gf` (`gf`)
) ENGINE=MyISAM DEFAULT CHARSET=cp1251 COLLATE=cp1251_general_cs;
Скрипт записи в БД:
PHP код:
mysql_connect('127.0.0.1''root''') or die ('Не могу подключится к серверу');
mysql_select_db('hgf');
$lvl=iconv('utf-8''windows-1251'$lvl);
mysql_query("INSERT INTO jyf VALUES ('$lvl')")  or die ("Запись в БД не удалась<br>"); 
После парсинга текст в кодировке UTF-8, преобразую его в windows-1251 и в таком виде записываю в БД.

Что оказывается в БД:
Код:
INSERT INTO `jyf` VALUES ('\r\n   ');
Если вывести на страницу после перекодировки на страницу, то всё отображается нормально. Должна была записана цифра 6.
Что я делаю не так?

Последний раз редактировалось Tisar; 07.01.2010 в 07:40..
 
Ответить с цитированием

  #14153  
Старый 07.01.2010, 03:21
Dark_cracker
Познающий
Регистрация: 29.05.2009
Сообщений: 55
Провел на форуме:
807573

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

Интересует вопрос как через curl , пройти basic авторизацию , гугл молчит ... вот например в http есть такая фича
Код:
CURLOPT_POSTFIELDS
, а вот для бейсика не могу найти
 
Ответить с цитированием

  #14154  
Старый 07.01.2010, 03:26
Gifts
Reservists Of Antichat - Level 6
Регистрация: 25.04.2008
Сообщений: 827
Провел на форуме:
2769640

Репутация: 1304


По умолчанию

Dark_cracker CURLOPT_HTTPAUTH и CURLOPT_USERPWD

Или "напрямую", через CURLOPT_HTTPHEADER
__________________
Любая действущая программа устарела.
Создайте систему, которой сможет пользоваться даже дурак ,и только дурак захочет ею пользоваться.
Как правильно задавать вопросы: _http://www.yakimchuk.ru/questions.htm
 
Ответить с цитированием

  #14155  
Старый 07.01.2010, 11:52
Markus_13
Познающий
Регистрация: 19.02.2009
Сообщений: 83
Провел на форуме:
181715

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

решил сделать чтобы сайт собирался "покусочкам" - создал неск-ко файлов с теми данными которые на многих страницах совпадают, к примеру в одном файле находятся след. данные: заголовок файла до <head>, постоянные теги хеда (оформление и т.д.), последние строки файла (</html> и комент что типа сайт написан мной =))
в страничках на пхп написан код который загружает этот файл и выводит нужные данные (они разбиты построчно)...
ВОПРОС: не будет ли нагрузка на сервер слишком большой? возможно лучше использовать include() или что-то еще?
Или вообще отказаться от этого? (просто так значительно быстрей и удобней редактировать сайт)
З.Ы. сори за глупый вопрос, но гугл мне не помогает))
 
Ответить с цитированием

  #14156  
Старый 07.01.2010, 12:36
m0Hze
Он хакер.
Регистрация: 01.11.2008
Сообщений: 1,756
Провел на форуме:
6462214

Репутация: 3171


По умолчанию

Цитата:
Сообщение от Markus_13  
решил сделать чтобы сайт собирался "покусочкам" - создал неск-ко файлов с теми данными которые на многих страницах совпадают, к примеру в одном файле находятся след. данные: заголовок файла до <head>, постоянные теги хеда (оформление и т.д.), последние строки файла (</html> и комент что типа сайт написан мной =))
в страничках на пхп написан код который загружает этот файл и выводит нужные данные (они разбиты построчно)...
ВОПРОС: не будет ли нагрузка на сервер слишком большой? возможно лучше использовать include() или что-то еще?
Или вообще отказаться от этого? (просто так значительно быстрей и удобней редактировать сайт)
З.Ы. сори за глупый вопрос, но гугл мне не помогает))
Молодец,ты изобрел шаблонизатор,очень примитывный,но все же шаблнизатор\цию.Теперь загугли на эту тему инторнет.
 
Ответить с цитированием

  #14157  
Старый 07.01.2010, 14:40
Markus_13
Познающий
Регистрация: 19.02.2009
Сообщений: 83
Провел на форуме:
181715

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

m0Hze, спс, оч. много ценной информации!
если кто не понял - перефразирую:
какой способ этой самой "шаблонизации" наиболее эффективен? и стоит ли его использовать там где можно обойтись статическим контентом?
 
Ответить с цитированием

  #14158  
Старый 07.01.2010, 19:47
Maxxxtri23
Познающий
Регистрация: 20.12.2008
Сообщений: 76
Провел на форуме:
432982

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

Имеется php скрипт для работы с сокетами
PHP код:
<?php
error_reporting
(E_ALL);

/* Позволить сценарию зависнуть вокруг ожидания подключений */
set_time_limit(0);

/* Включить неявный вывод, так что мы видим то, что мы получаем
 * когда это приходит . */
ob_implicit_flush();

$address '127.0.0.1';
$port 10000;

if ((
$sock socket_create(AF_INETSOCK_STREAMSOL_TCP)) < 0) {
    echo 
"socket_create() failed: reason: " socket_strerror($sock) . "\n";
}

if ((
$ret socket_bind($sock$address$port)) < 0) {
    echo 
"socket_bind() failed: reason: " socket_strerror($ret) . "\n";
}

if ((
$ret socket_listen($sock2)) < 0) {
    echo 
"socket_listen() failed: reason: " socket_strerror($ret) . "\n";
}

do {
    if ((
$msgsock socket_accept($sock)) < 0) {
        echo 
"socket_accept() failed: reason: " socket_strerror($msgsock) . "\n";
        break;
    }
    
/* Send instructions. */
    
$msg "\nWelcome to the PHP Test Server. \n" .
        
"To quit, type 'quit'. To shut down the server type 'shutdown'.\n";
    
socket_write($msgsock$msgstrlen($msg));

    do {
        if (
false === ($buf socket_read($msgsock2048PHP_NORMAL_READ))) {
            echo 
"socket_read() failed: reason: " socket_strerror($ret) . "\n";
            break 
2;
        }
        if (!
$buf trim($buf)) {
            continue;
        }
        if (
$buf == 'quit') {
            break;
        }
        if (
$buf == 'shutdown') {
            
socket_close($msgsock);
            break 
2;
        }
        
$talkback "PHP: You said '$buf'.\n";
        
socket_write($msgsock$talkbackstrlen($talkback));
        echo 
"$buf\n";
    } while (
true);
    
socket_close($msgsock);
} while (
true);

socket_close($sock);
?>
Если подключаться к нему неткатом или самописным клиентом на делфи то все сообщения через сокет нормально проходят и если отправить quit то соединение благополучно закрывается и php скрипт продолжает работать. А если не отсылать quit, а просто закрыть прогу, то скрипт выдает
Код:
Warning: socket_read(): unable to read from socket [0]: ╙фрыхээ√щ їюёЄ яЁшэєфшЄх
ы№эю ЁрчюЁтры ёє∙хёЄтє■∙хх яюфъы■ўхэшх.
 in D:\xampp\htdocs\index.php on line 37
socket_read() failed: reason: ═хтхЁэр* ЇєэъЎш*.
И соответственно перестает работать. Что нужно исправить, чтобы при закрытии клиента без предварительной отправки quit скрипт продолжал работать?

P.S. как исправить кодировку тоже немогу понять.
Запускаю скрипт командой D:\xampp\php\php.exe D:\xampp\htdocs\index.php

Последний раз редактировалось Maxxxtri23; 07.01.2010 в 19:51..
 
Ответить с цитированием

  #14159  
Старый 07.01.2010, 20:34
Gifts
Reservists Of Antichat - Level 6
Регистрация: 25.04.2008
Сообщений: 827
Провел на форуме:
2769640

Репутация: 1304


По умолчанию

PHP код:
        if (false === ($buf socket_read($msgsock2048PHP_NORMAL_READ))) {
            echo 
"socket_read() failed: reason: " socket_strerror($ret) . "\n";
            break 
2;
        } 
Заменить на
PHP код:
        if (false === ($buf = @socket_read($msgsock2048PHP_NORMAL_READ))) {
            echo 
"Client diconnected";
            break;
        } 
__________________
Любая действущая программа устарела.
Создайте систему, которой сможет пользоваться даже дурак ,и только дурак захочет ею пользоваться.
Как правильно задавать вопросы: _http://www.yakimchuk.ru/questions.htm
 
Ответить с цитированием

НУЖНА ПОМОЧЬ НЕМОГУ РАЗОБРАТЬСЯ
  #14160  
Старый 07.01.2010, 21:05
v1149906
Новичок
Регистрация: 02.01.2010
Сообщений: 4
Провел на форуме:
1444

Репутация: 0
Unhappy НУЖНА ПОМОЧЬ НЕМОГУ РАЗОБРАТЬСЯ

выполняю вход в админку захожу вот только чтоб мне куда нить зайти в этой админке мне надо повторно выполнять вход а точнее я нажимаю на любую станичку из меню и опять мне надо выпплнить вход в одминку и я поподаю на ту страничку на которую я нажал это еще терпимо но когда на своем же сайте зарегистрироваться неможешь вот это уже бесит пож помогите решить эту проблему че за хрень с сайтом
 
Ответить с цитированием
Ответ



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
[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