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

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

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

Старт.
  #9371  
Старый 13.03.2009, 02:18
Gray_Wolf
Постоянный
Регистрация: 07.03.2009
Сообщений: 357
Провел на форуме:
1284900

Репутация: 399
По умолчанию Старт.

Да и вообще, тем кто решил заняться PHP:
Первый скрипт на PHP я написал месяц назад.(давно хотел посмотреть почему этот язык так популярен, да ещё и свободное время появилось)

Для первого эксперимента было выбрано написание простенького парсера.
-Почему?
1) Разобраться со стандартными средствами языка. (Условия, циклы, работа со строками, работа с переменными, функции, процедуры)
2) Разобраться с регулярными выражениями.
3) Разобраться с тем как работать с MySql из под PHP.(парсер заносил результат в таблицу БД)
4) Разобраться с методами подключения к удалённым сайтам (cUrl, сокеты)
Вооружившись книгой(купленной за год до этого ) и гуглом, я написал парсер для торрент движка tbdev за 2 дня.
В ходе написания были выполнены все поставленные выше задачи.

Рекомендую изначально привыкать к использованию функций.
С чего я начал:
1. Достал скрипт который подключался к удалённой странице и заносил её содержимое в переменную.
Подправил этот скрипт под себя, и занёс в функцию.
2. Сохранил 1 из страниц которую парсер должен читать на хард. Начал писать парсер(отдельный скрипт который читал ХТМЛ c харда) для этой страницы. После написания загнал его код в отдельную функцию.
3. Начал писать скрипт который заносил данные в MySql, и тоже запихнул его в отдельную функцию.

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

Удобство такого метода написания программ в том, что каждую функцию мы пишем и отлаживаем отдельно, после чего забываем о ней и переходим к следующей функции.(решаем каждую проблему отдельно)


Далее я стал разбираться с ООП, и переписал скрипт в виде класса.
В tbdev ссылки формируются так:
PHP код:
http://tb.SITE.ru/details.php?id=1 //где ID-номер раздачи 
Скрипт для использования класса, стал выглядеть примерно так:
PHP код:
<?
include ("pars.inc"); //подключаем свой класс
$par = new Pars(); //создаём обьект
for ($i=500$i<2500$i++) { //указываем номера раздач для парсинга
$par->Go($i); //Запускаем парсер
}
?>
Это конечно не лучшее применение ООП, но оно позволяет разобраться что к чему.


В итоге, на приобретение начальных навыков чтения несложного кода ушло 3 дня.

Последний раз редактировалось Gray_Wolf; 13.03.2009 в 02:34..
 
Ответить с цитированием

  #9372  
Старый 13.03.2009, 02:23
AkyHa_MaTaTa
Постоянный
Регистрация: 19.03.2007
Сообщений: 684
Провел на форуме:
3152874

Репутация: 1020


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

Gray_Wolf заведи себе блог и пиши там, извини конечно за резкость но тут твоим статьям немного не место.
 
Ответить с цитированием

  #9373  
Старый 13.03.2009, 02:31
-=Static=-
Участник форума
Регистрация: 12.11.2006
Сообщений: 213
Провел на форуме:
347573

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

AkyHa_MaTaTa, +1
 
Ответить с цитированием

  #9374  
Старый 13.03.2009, 02:38
Gray_Wolf
Постоянный
Регистрация: 07.03.2009
Сообщений: 357
Провел на форуме:
1284900

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

2AkyHa_MaTaTa, -=Static=- какаяж это статья? Этот так, бред сумашедшего.
(сам незнаю почему но у меня врождённое отторжение ко всему что касается блогов, дневников, etc.)
 
Ответить с цитированием

  #9375  
Старый 13.03.2009, 02:46
Pashkela
Динозавр
Регистрация: 10.01.2008
Сообщений: 2,841
Провел на форуме:
9220514

Репутация: 3338


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

а по мне, так парень дело пишет, а не хрень, как 80% здесь
 
Ответить с цитированием

  #9376  
Старый 13.03.2009, 02:52
PaCo
Постоянный
Регистрация: 06.02.2008
Сообщений: 494
Провел на форуме:
1754802

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

Если посмотреть на звание топа то - "[php] Новичкам: задаем вопросы", конечно никто не спорит, может он и дело пишет, но немного в не том топе, я также могу написать как я 2 года назад начел разберать с пхп, да и каждый может, но имхо в определеном топе.
 
Ответить с цитированием

  #9377  
Старый 13.03.2009, 10:11
.:EnoT:.
Постоянный
Регистрация: 29.05.2007
Сообщений: 852
Провел на форуме:
4832771

Репутация: 1916


По умолчанию

Pashkela +1
То что он написал по крайней мере 80% отписывающихся в этой теме даже во сне не видели)
 
Ответить с цитированием

  #9378  
Старый 13.03.2009, 16:08
mailbrush
Познавший АНТИЧАТ
Регистрация: 24.06.2008
Сообщений: 1,996
Провел на форуме:
6075534

Репутация: 2731


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

PHP код:
<?php 
echo "<title>Special For DJ</title> 
<b>Сюда пишешь аськи в виде \"Много текста бла бла бла 123456;34%7№№ блаба\" а скрипт выберет только аськи!</b> 
<form method=post> 
<textarea name=uins rows=18 cols=60></textarea><br> 
<input type=submit value='Давай ка сотрем лишнее!'>"

if(isset(
$_POST['uins'])) 

$uins=explode("\r\n",$_POST['uins']); 
echo 
"<br><br><br><b>Result:</b><br><textarea rows=18 cols=20>"
for(
$i=0;$i<=count($uins);$i++) 

preg_match("/([0-9]{6,9}[;]{1}[\S]{1,8})/",$uins[$i],$out); 
echo 
$out[$i]."\r\n"

echo 
"</textarea>"

?>
Почему даный скрипт обрабатывает только первых два номера?
 
Ответить с цитированием

  #9379  
Старый 13.03.2009, 16:59
Byrger
Постоянный
Регистрация: 07.03.2008
Сообщений: 479
Провел на форуме:
791766

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

Есть мега логическая задача для браузерной игры : )

В игре есть карта (возьмём 200*200)
Карта собой представляет таблицу в БД по кадой точке...тоесть x1 y1, x1 y2, x1 y3....x200 y200
Есть ячейка element которая отвечает за занятось клетки на игровом поле.

Центр карты естественно точка x100 y100
Игрок при старте выбирает направление в котором он хочет появиться (северо-запад, юго-восток и т.д.)
Допустим он выбрал Юго-Восток значит он распологается в квадрате x100-x200 y100-y200 (нижний-правый квадрат)

Задача: расположить игроков начиная с центра карты...(чтоб пресутствовало между ними растояние от 1 до 4 клеток и чтоб они друг на друга не попали)

Задавайте вопросы, по поводу что уточнить.
 
Ответить с цитированием

  #9380  
Старый 13.03.2009, 17:01
Gray_Wolf
Постоянный
Регистрация: 07.03.2009
Сообщений: 357
Провел на форуме:
1284900

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

2mailbrush а вы почитайте описание функции preg_match
И замените
PHP код:
echo $out[$i]."\r\n"
на
PHP код:
echo $out[1]."\r\n"
 
Ответить с цитированием
Ответ



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