<form method="POST" action= "<?PHP echo($PHP_SELF); 
?>">

Find an available domain name from Network Solutions: 

<INPUT name="domain" SIZE="20" MAXLENGTH="22">

<INPUT TYPE="SUBMIT" VALUE="Check name">

<INPUT TYPE="RESET" VALUE="Clear">

</FORM>

<hr>

<font size="2"><pre>

<?

//This function was found at : http://www.phpwizard.net/phpTidbits/

function whois($domain, $server="www.geektools.com")



$fp = fsockopen ($server, 43, &$errnr, &$errstr) or die("$errno: 
$errstr");

fputs($fp, "$domain\n");

while (!feof($fp))

echo fgets($fp, 2048);

fclose($fp); 



 ?>

<?

If (isset ($domain)){

echo (whois($domain));

}

?>

</pre></font>

디자이너가 드림위버로 만든 html을 프로그래머가 메모장에서 일일이 다시 코딩한 경험있으시지요..? 
프로그래머가 코딩한거 드림위버로 일일이 다시 코딩 하는것은 어떨까요?
서로 조금만 배려하면 서로 무지 편하게 작업 할수있어요

아래 예제는 디자이너 , 기획자 , 프로그래머 ,등의 공동 작업시 편리한 생각(팁)입니다.



~~~~~~~~~~~~~~~~~echo 함수의 사용~~~~~~~~~~~~~~~~~~~~~~~~
//좋은 코딩
..

..
//드림위버나 나모에서 아주 잘 보입니다 
//변수에 대한 학습 효과도 줄 수 있어요
//이렇게 하면 템플릿도 필요 없어요


// 열나 짜증나는 코딩(디자이너 입장)
echo"
..

.. ";
?>



~~~~~~~~~~~~~~~~~ 네이밍 ~~~~~~~~~~~~~~~~~~~~~~~~~
//파일의 역할 
게시판 파일의 경우를 예를 들면 
리스트 / 내용보기 / 수정하기 / 삭제하기 /검색하기 
5가지의 역할(인터페이스)를 가지고 있습니다
그럼에도 불구 하고 이걸 bbs.php라는 파일 한장에 다 넣어서 if 문으 쪼개면
드림위버에서 볼 수 없어요

보통 프로그램 할때 어떤게 더 빠를까 생각하시는데..,
그것 보다는 어떤 인터페이스와 유지보수가 더 쉬울까
생각하는것이 요즘 추세 같습니다

각각 write.php list.php view.php ..등으로 나뉘주세요
///////////좋은 파일 네이밍의 예//////////////
bbs_list.php
bbs_write.php
bbs_view.php
mail_list.php
mail_view.php
mail_write.php
inc_common.php
inc_dbconnect.php
inc_menu.php
company_ceo.php
company_map.php
company_phone.php

// 먼저 모듈을 정하고 역할을 표시한다 
//그럼 FTP 로 파일명 순으로보면 잘정리 되어서 보인다.

/////////나쁜 네이밍의 예//////////////////
1.php
3.php
ttt.gif

//역할을 알수 없다 
//모듈(카테고리도 표시가없다)
//숫자를 사용한다
//대소문자를 막 섞는다..


~~~~~~~~~~~~~디렉터리 구조~~~~~~~~~~~~~~~~~~~~~~~
수평적인 구조를 만든다
(디렉토리는 하나~ 두개 정도의 하위구조를 만든다)
///////잘된예 
// "[]" 이거는 디렉터리를 말합니다 
[html]
[php]
[image]
[bbs]
index.html

위처럼 기본계정에 들어가면 인덱스 파일 외에는 
모두 각각의 폴더에 집어넣습니다
image 폴더에는 이미지만
html 폴더에는 html파일만.,

이렇게 사용하면 이미지와 include 사용시 항상 깨지지 않습니다
경로때 문에 고민하지 않아도 되구요 
그리고 php 파일이나 html에서 어디서나 깨지지지 않아요
제로보드 등 설치시에도 이미지 경로가 똑같아지지요
헤더랑 푸터 불러와도 php나 html에서 동일 하게 보입니다
단 경로는 항상 "../" 이걸 붙여줘야 합니다 이유는 아시지요?
../image/이미지명.gif
../inc/common.php

위 처럼 모든 파일의 상대 경로가 동일 하죠


//나쁜예
디렉터리 밑에 또 그밑에 또 ..그밑에 또 디렉터리
파일 한장 고칠려면 엄청 뒤져야 합니다


이상입니다 


* nzeo.com

'Coding' 카테고리의 다른 글

[PHP] DB 내용 CSV 포멧 파일로 저장하기  (0) 2017.01.07
[PHP] Whois 조회 코드  (0) 2017.01.07
[PHP] 오픈 포트 확인  (0) 2017.01.07
[PHP] 한글 문자열 자르는 함수  (0) 2017.01.07
자주 사용하는 PHP 함수  (0) 2017.01.07

$trojans = array ("1" => "(UDP) - Sockets des Troie",
"2" => "Death",
"15" => "B2",
"20" => "Senna Spy FTP server",
"21" => "Back Construction, Blade Runner, Cattivik FTP Server, CC Invader, Dark FTP, Doly Trojan, Fore, FreddyK, Invisible FTP, Juggernaut 42, Larva, MotIv FTP, Net Administrator, Ramen, RTB 666, Senna Spy FTP server, The Flu, Traitor 21, WebEx, WinCrash",
"22" => "Adore sshd, Shaft",
"23" => "ADM worm, Fire HacKer, My Very Own trojan, RTB 666, Telnet Pro, Tiny Telnet Server - TTS, Truva Atl",
"25" => "Ajan, Antigen, Barok, BSE, Email Password Sender - EPS, EPS II, Gip, Gris, Happy99, Hpteam mail, Hybris, I love you, Kuang2, Magic Horse, MBT (Mail Bombing Trojan), Moscow Email trojan, Naebi, NewApt worm, ProMail trojan, Shtirlitz, Stealth, Stukach, Tapiras, Terminator, WinPC, WinSpy",
"30" => "Agent 40421",
"31" => "Agent 31, Hackers Paradise, Masters Paradise",
"39" => "SubSARI",
"41" => "Deep Throat, Foreplay",
"44" => "Arctic",
"48" => "DRAT",
"50" => "DRAT",
"53" => "ADM worm, Lion",
"58" => "DMSetup",
"59" => "DMSetup",
"69" => "BackGate",
"79" => "CDK, Firehotcker",
"80" => "711 trojan (Seven Eleven), AckCmd, Back End, Back Orifice 2000 Plug-Ins, Cafeini, CGI Backdoor, Executor, God Message, God Message 4 Creator, Hooker, IISworm, MTX, NCX, Noob, Ramen, Reverse WWW Tunnel Backdoor, RingZero, RTB 666, Seeker, WAN Remote, Web Server CT, WebDownloader",
"81" => "RemoConChubo",
"99" => "Hidden Port, Mandragore, NCX",
"110" => "ProMail trojan",
"113" => "Invisible Identd Deamon, Kazimas",
"119" => "Happy99",
"121" => "Attack Bot, God Message, JammerKillah",
"123" => "Net Controller",
"133" => "Farnaz",
"137" => "Chode",
"137" => "(UDP) - Msinit, Qaz",
"138" => "Chode",
"139" => "Chode, God Message worm, Msinit, Netlog, Network, Qaz, Sadmind, SMB Relay",
"142" => "NetTaxi",
"146" => "Infector",
"146" => "(UDP) - Infector",
"166" => "NokNok",
"170" => "A-trojan",
"334" => "Backage",
"411" => "Backage",
"420" => "Breach, Incognito",
"421" => "TCP Wrappers trojan",
"455" => "Fatal Connections",
"456" => "Hackers Paradise",
"511" => "T0rn Rootkit",
"513" => "Grlogin",
"514" => "RPC Backdoor",
"515" => "lpdw0rm, Ramen",
"531" => "Net666, Rasmin",
"555" => "711 trojan (Seven Eleven), Ini-Killer, Net Administrator, Phase Zero, Phase-0, Stealth Spy",
"600" => "Sadmind",
"605" => "Secret Service",
"661" => "NokNok",
"666" => "Attack FTP, Back Construction, BLA trojan, Cain & Abel, lpdw0rm, NokNok, Satans Back Door - SBD, ServU, Shadow Phyre, th3r1pp3rz (= Therippers)",
"667" => "SniperNet",
"668" => "th3r1pp3rz (= Therippers)",
"669" => "DP trojan",
"692" => "GayOL",
"777" => "AimSpy, Undetected",
"808" => "WinHole",
"911" => "Dark Shadow, Dark Shadow",
"999" => "Chat power, Deep Throat, Foreplay, WinSatan",
"1000" => "Connecter, Der Sp?er / Der Spaeher, Direct Connection",
"1001" => "Der Sp?er / Der Spaeher, Le Guardien, Silencer, Theef, WebEx",
"1005" => "Theef",
"1008" => "Lion",
"1010" => "Doly Trojan",
"1011" => "Doly Trojan",
"1012" => "Doly Trojan",
"1015" => "Doly Trojan",
"1016" => "Doly Trojan",
"1020" => "Vampire",
"1024" => "Jade, Latinus, NetSpy, Remote Administration Tool - RAT [no 2]",
"1025" => "Fraggle Rock, md5 Backdoor, NetSpy, Remote Storm",
"1025" => "(UDP) - Remote Storm",
"1031" => "Xanadu",
"1035" => "Multidropper",
"1042" => "BLA trojan",
"1042" => "(UDP) - BLA trojan",
"1045" => "Rasmin",
"1049" => "/sbin/initd",
"1050" => "MiniCommand",
"1053" => "The Thief",
"1054" => "AckCmd",
"1080" => "SubSeven 2.2, WinHole",
"1081" => "WinHole",
"1082" => "WinHole",
"1083" => "WinHole",
"1090" => "Xtreme",
"1095" => "Remote Administration Tool - RAT",
"1097" => "Remote Administration Tool - RAT",
"1098" => "Remote Administration Tool - RAT",
"1099" => "Blood Fest Evolution, Remote Administration Tool - RAT",
"1104" => "(UDP) - RexxRave",
"1150" => "Orion",
"1151" => "Orion",
"1170" => "Psyber Stream Server - PSS, Streaming Audio Server, Voice",
"1174" => "DaCryptic",
"1180" => "Unin68",
"1200" => "(UDP) - NoBackO",
"1201" => "(UDP) - NoBackO",
"1207" => "SoftWAR",
"1208" => "Infector",
"1212" => "Kaos",
"1234" => "SubSeven Java client, Ultors Trojan",
"1243" => "BackDoor-G, SubSeven, SubSeven Apocalypse, Tiles",
"1245" => "VooDoo Doll",
"1255" => "Scarab",
"1256" => "Project nEXT, RexxRave",
"1269" => "Matrix",
"1272" => "The Matrix",
"1313" => "NETrojan",
"1337" => "Shadyshell",
"1338" => "Millennium Worm",
"1349" => "Bo dll",
"1386" => "Dagger",
"1394" => "GoFriller",
"1441" => "Remote Storm",
"1492" => "FTP99CMP",
"1524" => "Trinoo",
"1568" => "Remote Hack",
"1600" => "Direct Connection, Shivka-Burka",
"1703" => "Exploiter",
"1777" => "Scarab",
"1807" => "SpySender",
"1826" => "Glacier",
"1966" => "Fake FTP",
"1967" => "For Your Eyes Only - FYEO, WM FTP Server",
"1969" => "OpC BO",
"1981" => "Bowl, Shockrave",
"1991" => "PitFall",
"1999" => "Back Door, SubSeven, TransScout",
"2000" => "Der Spaer / Der Spaeher, Insane Network, Last 2000, Remote Explorer 2000, Senna Spy Trojan Generator",
"2001" => "Der Spaer / Der Spaeher, Trojan Cow",
"2023" => "Ripper Pro",
"2080" => "WinHole",
"2115" => "Bugs",
"2130" => "(UDP) - Mini Backlash",
"2140" => "The Invasor",
"2140" => "(UDP) - Deep Throat, Foreplay",
"2155" => "Illusion Mailer",
"2255" => "Nirvana",
"2283" => "Hvl RAT",
"2300" => "Xplorer",
"2311" => "Studio 54",
"2330" => "IRC Contact",
"2331" => "IRC Contact",
"2332" => "IRC Contact",
"2333" => "IRC Contact",
"2334" => "IRC Contact",
"2335" => "IRC Contact",
"2336" => "IRC Contact",
"2337" => "IRC Contact",
"2338" => "IRC Contact",
"2339" => "IRC Contact, Voice Spy",
"2339" => "(UDP) - Voice Spy",
"2345" => "Doly Trojan",
"2400" => "Portd",
"2555" => "Lion, T0rn Rootkit",
"2565" => "Striker trojan",
"2583" => "WinCrash",
"2589" => "Dagger",
"2600" => "Digital RootBeer",
"2702" => "Black Diver",
"2716" => "The Prayer",
"2773" => "SubSeven, SubSeven 2.1 Gold",
"2774" => "SubSeven, SubSeven 2.1 Gold",
"2801" => "Phineas Phucker",
"2929" => "Konik",
"2989" => "(UDP) - Remote Administration Tool - RAT",
"3000" => "InetSpy, Remote Shut",
"3024" => "WinCrash",
"3031" => "Microspy",
"3128" => "Reverse WWW Tunnel Backdoor, RingZero",
"3129" => "Masters Paradise",
"3131" => "SubSARI",
"3150" => "The Invasor",
"3150" => "(UDP) - Deep Throat, Foreplay, Mini Backlash",
"3456" => "Terror trojan",
"3459" => "Eclipse 2000, Sanctuary",
"3700" => "Portal of Doom",
"3777" => "PsychWard",
"3791" => "Total Solar Eclypse",
"3801" => "Total Solar Eclypse",
"4000" => "Connect-Back Backdoor, SkyDance",
"4092" => "WinCrash",
"4201" => "War trojan",
"4242" => "Virtual Hacking Machine - VHM",
"4321" => "BoBo",
"4444" => "CrackDown, Prosiak, Swift Remote",
"4488" => "Event Horizon",
"4523" => "Celine",
"4545" => "Internal Revise",
"4567" => "File Nail",
"4590" => "ICQ Trojan",
"4653" => "Cero",
"4666" => "Mneah",
"4950" => "ICQ Trogen (Lm)",
"5000" => "Back Door Setup, BioNet Lite, Blazer5, Bubbel, ICKiller, Ra1d, Sockets des Troie",
"5001" => "Back Door Setup, Sockets des Troie",
"5002" => "cd00r, Linux Rootkit IV (4), Shaft",
"5005" => "Aladino",
"5010" => "Solo",
"5011" => "One of the Last Trojans - OOTLT, One of the Last Trojans - OOTLT, modified",
"5025" => "WM Remote KeyLogger",
"5031" => "Net Metropolitan",
"5032" => "Net Metropolitan",
"5321" => "Firehotcker",
"5333" => "Backage, NetDemon",
"5343" => "WC Remote Administration Tool - wCrat",
"5400" => "Back Construction, Blade Runner",
"5401" => "Back Construction, Blade Runner, Mneah",
"5402" => "Back Construction, Blade Runner, Mneah",
"5512" => "Illusion Mailer",
"5534" => "The Flu",
"5550" => "Xtcp",
"5555" => "ServeMe",
"5556" => "BO Facil",
"5557" => "BO Facil",
"5569" => "Robo-Hack",
"5637" => "PC Crasher",
"5638" => "PC Crasher",
"5742" => "WinCrash",
"5760" => "Portmap Remote Root Linux Exploit",
"5802" => "Y3K RAT",
"5873" => "SubSeven 2.2",
"5880" => "Y3K RAT",
"5882" => "Y3K RAT",
"5882" => "(UDP) - Y3K RAT",
"5888" => "Y3K RAT",
"5888" => "(UDP) - Y3K RAT",
"5889" => "Y3K RAT",
"6000" => "The Thing",
"6006" => "Bad Blood",
"6272" => "Secret Service",
"6400" => "The Thing",
"6661" => "TEMan, Weia-Meia",
"6666" => "Dark Connection Inside, NetBus worm",
"6667" => "Dark FTP, EGO, Maniac rootkit, Moses, ScheduleAgent, SubSeven, Subseven 2.1.4 DefCon 8, The Thing (modified), Trinity, WinSatan",
"6669" => "Host Control, Vampire",
"6670" => "BackWeb Server, Deep Throat, Foreplay, WinNuke eXtreame",
"6711" => "BackDoor-G, SubSARI, SubSeven, VP Killer",
"6712" => "Funny trojan, SubSeven",
"6713" => "SubSeven",
"6723" => "Mstream",
"6767" => "UandMe",
"6771" => "Deep Throat, Foreplay",
"6776" => "2000 Cracks, BackDoor-G, SubSeven, VP Killer",
"6838" => "(UDP) - Mstream",
"6883" => "Delta Source DarkStar (??)",
"6912" => "Shit Heep",
"6939" => "Indoctrination",
"6969" => "2000 Cracks, Danton, GateCrasher, IRC 3, Net Controller, Priority",
"6970" => "GateCrasher",
"7000" => "Exploit Translation Server, Kazimas, Remote Grab, SubSeven, SubSeven 2.1 Gold",
"7001" => "Freak88, Freak2k, NetSnooper Gold",
"7158" => "Lohoboyshik",
"7215" => "SubSeven, SubSeven 2.1 Gold",
"7300" => "NetMonitor",
"7301" => "NetMonitor",
"7306" => "NetMonitor",
"7307" => "NetMonitor, Remote Process Monitor",
"7308" => "NetMonitor, X Spy",
"7424" => "Host Control",
"7424" => "(UDP) - Host Control",
"7597" => "Qaz",
"7626" => "Binghe, Glacier, Hyne",
"7718" => "Glacier",
"7777" => "God Message, The Thing (modified), Tini",
"7789" => "Back Door Setup, ICKiller, Mozilla",
"7826" => "Oblivion",
"7891" => "The ReVeNgEr",
"7983" => "Mstream",
"8080" => "Brown Orifice, Generic backdoor, RemoConChubo, Reverse WWW Tunnel Backdoor, RingZero",
"8685" => "Unin68",
"8787" => "Back Orifice 2000",
"8812" => "FraggleRock Lite",
"8988" => "BacHack",
"8989" => "Rcon, Recon, Xcon",
"9000" => "Netministrator",
"9325" => "(UDP) - Mstream",
"9400" => "InCommand",
"9870" => "Remote Computer Control Center",
"9872" => "Portal of Doom",
"9873" => "Portal of Doom",
"9874" => "Portal of Doom",
"9875" => "Portal of Doom",
"9876" => "Cyber Attacker, Rux",
"9878" => "TransScout",
"9989" => "Ini-Killer",
"9999" => "The Prayer",
"10000" => "OpwinTRojan",
"10005" => "OpwinTRojan",
"10008" => "Cheese worm, Lion",
"10067" => "(UDP) - Portal of Doom",
"10085" => "Syphillis",
"10086" => "Syphillis",
"10100" => "Control Total, GiFt trojan",
"10101" => "BrainSpy, Silencer",
"10167" => "(UDP) - Portal of Doom",
"10520" => "Acid Shivers",
"10528" => "Host Control",
"10607" => "Coma",
"10666" => "(UDP) - Ambush",
"11000" => "Senna Spy Trojan Generator",
"11050" => "Host Control",
"11051" => "Host Control",
"11223" => "Progenic trojan, Secret Agent",
"11831" => "Latinus",
"12076" => "Gjamer",
"12223" => "Hack'99 KeyLogger",
"12310" => "PreCursor",
"12345" => "Adore sshd, Ashley, cron / crontab, Fat Bitch trojan, GabanBus, icmp_client.c, icmp_pipe.c, Mypic, NetBus, NetBus Toy, NetBus worm, Pie Bill Gates, ValvNet, Whack Job, X-bill",
"12346" => "Fat Bitch trojan, GabanBus, NetBus, X-bill",
"12348" => "BioNet",
"12349" => "BioNet, Webhead",
"12361" => "Whack-a-mole",
"12362" => "Whack-a-mole",
"12363" => "Whack-a-mole",
"12623" => "(UDP) - DUN Control",
"12624" => "ButtMan",
"12631" => "Whack Job",
"12754" => "Mstream",
"13000" => "Senna Spy Trojan Generator, Senna Spy Trojan Generator",
"13010" => "BitchController, Hacker Brasil - HBR",
"13013" => "PsychWard",
"13014" => "PsychWard",
"13223" => "Hack?9 KeyLogger",
"13473" => "Chupacabra",
"14500" => "PC Invader",
"14501" => "PC Invader",
"14502" => "PC Invader",
"14503" => "PC Invader",
"15000" => "NetDemon",
"15092" => "Host Control",
"15104" => "Mstream",
"15382" => "SubZero",
"15858" => "CDK",
"16484" => "Mosucker",
"16660" => "Stacheldraht",
"16772" => "ICQ Revenge",
"16959" => "SubSeven, Subseven 2.1.4 DefCon 8",
"16969" => "Priority",
"17166" => "Mosaic",
"17300" => "Kuang2 the virus",
"17449" => "Kid Terror",
"17499" => "CrazzyNet",
"17500" => "CrazzyNet",
"17569" => "Infector",
"17593" => "AudioDoor",
"17777" => "Nephron",
"18667" => "Knark",
"18753" => "(UDP) - Shaft",
"19864" => "ICQ Revenge",
"20000" => "Millenium",
"20001" => "Insect, Millenium, Millenium (Lm)",
"20002" => "AcidkoR",
"20005" => "Mosucker",
"20023" => "VP Killer",
"20034" => "NetBus 2.0 Pro, NetBus 2.0 Pro Hidden, NetRex, Whack Job",
"20203" => "Chupacabra",
"20331" => "BLA trojan",
"20432" => "Shaft",
"20433" => "(UDP) - Shaft",
"21544" => "GirlFriend, Kid Terror, Matrix",
"21554" => "Exploiter, FreddyK, Kid Terror, Schwindler, Winsp00fer",
"21579" => "Breach",
"21957" => "Latinus",
"22222" => "Donald Dick, Prosiak, Ruler, RUX The TIc.K",
"23005" => "NetTrash, Olive, Oxon",
"23006" => "NetTrash",
"23023" => "Logged",
"23032" => "Amanda",
"23321" => "Konik",
"23432" => "Asylum",
"23456" => "Evil FTP, Ugly FTP, Whack Job",
"23476" => "Donald Dick",
"23476" => "(UDP) - Donald Dick",
"23477" => "Donald Dick",
"23777" => "InetSpy",
"24000" => "Infector",
"24289" => "Latinus",
"25123" => "Goy'Z TroJan",
"25555" => "FreddyK",
"25685" => "MoonPie",
"25686" => "MoonPie",
"25982" => "MoonPie",
"26274" => "(UDP) - Delta Source",
"26681" => "Voice Spy",
"27160" => "MoonPie",
"27374" => "Bad Blood, EGO, Fake SubSeven, Lion, Ramen, Seeker, SubSeven, SubSeven 2.1 Gold, Subseven 2.1.4 DefCon 8, SubSeven 2.2, SubSeven Muie, The Saint, Ttfloader, Webhead",
"27444" => "(UDP) - Trinoo",
"27573" => "SubSeven",
"27665" => "Trinoo",
"28431" => "Hack'ack",
"28678" => "Exploiter",
"29104" => "NetTrojan",
"29292" => "BackGate",
"29369" => "ovasOn",
"29559" => "Latinus",
"29891" => "The Unexplained",
"30000" => "Infector",
"30001" => "ErrOr32",
"30003" => "Lamers Death",
"30005" => "Backdoor JZ",
"30029" => "AOL trojan",
"30100" => "NetSphere",
"30101" => "NetSphere",
"30102" => "NetSphere",
"30103" => "NetSphere",
"30103" => "(UDP) - NetSphere",
"30133" => "NetSphere",
"30303" => "Sockets des Troie",
"30700" => "Mantis",
"30947" => "Intruse",
"30999" => "Kuang2",
"31221" => "Knark",
"31335" => "Trinoo",
"31336" => "Bo Whack, Butt Funnel",
"31337" => "ADM worm, Back Fire, Back Orifice 1.20 patches, Back Orifice (Lm), Back Orifice russian, Baron Night, Beeone, bindshell, BO client, BO Facil, BO spy, BO2, cron / crontab, Freak88, Freak2k, Gummo, icmp_pipe.c, Linux Rootkit IV (4), Sm4ck, Sockdmini",
"31337" => "(UDP) - Back Orifice, Deep BO",
"31338" => "Back Orifice, Butt Funnel, NetSpy (DK)",
"31338" => "(UDP) - Deep BO, NetSpy (DK)",
"31339" => "NetSpy (DK), NetSpy (DK)",
"31557" => "Xanadu",
"31666" => "BOWhack",
"31745" => "BuschTrommel",
"31785" => "Hack'ack",
"31787" => "Hack'ack",
"31788" => "Hack'ack",
"31789" => "(UDP) - Hack'ack",
"31790" => "Hack'ack",
"31791" => "(UDP) - Hack'ack",
"31792" => "Hack'ack",
"32001" => "Donald Dick",
"32100" => "Peanut Brittle, Project nEXT",
"32418" => "Acid Battery",
"32791" => "Acropolis",
"33270" => "Trinity",
"33333" => "Blakharaz, Prosiak",
"33567" => "Lion, T0rn Rootkit",
"33568" => "Lion, T0rn Rootkit",
"33577" => "Son of PsychWard",
"33777" => "Son of PsychWard",
"33911" => "Spirit 2000, Spirit 2001",
"34324" => "Big Gluck, TN",
"34444" => "Donald Dick",
"34555" => "(UDP) - Trinoo (for Windows)",
"35555" => "(UDP) - Trinoo (for Windows)",
"37237" => "Mantis",
"37266" => "The Killer Trojan",
"37651" => "Yet Another Trojan - YAT",
"38741" => "CyberSpy",
"39507" => "Busters",
"40412" => "The Spy",
"40421" => "Agent 40421, Masters Paradise",
"40422" => "Masters Paradise",
"40423" => "Masters Paradise",
"40425" => "Masters Paradise",
"40426" => "Masters Paradise",
"41337" => "Storm",
"41666" => "Remote Boot Tool - RBT, Remote Boot Tool - RBT",
"44444" => "Prosiak",
"44575" => "Exploiter",
"44767" => "(UDP) - School Bus",
"45559" => "Maniac rootkit",
"45673" => "Acropolis",
"47017" => "T0rn Rootkit",
"47262" => "(UDP) - Delta Source",
"48004" => "Fraggle Rock",
"48006" => "Fraggle Rock",
"49000" => "Fraggle Rock",
"49301" => "OnLine KeyLogger",
"50000" => "SubSARI",
"50130" => "Enterprise",
"50505" => "Sockets des Troie",
"50766" => "Fore, Schwindler",
"51966" => "Cafeini",
"52317" => "Acid Battery 2000",
"53001" => "Remote Windows Shutdown - RWS",
"54283" => "SubSeven, SubSeven 2.1 Gold",
"54320" => "Back Orifice 2000",
"54321" => "Back Orifice 2000, School Bus",
"55165" => "File Manager trojan, File Manager trojan, WM Trojan Generator",
"55166" => "WM Trojan Generator",
"57341" => "NetRaider",
"58339" => "Butt Funnel",
"60000" => "Deep Throat, Foreplay, Sockets des Troie",
"60001" => "Trinity",
"60008" => "Lion, T0rn Rootkit",
"60068" => "Xzip 6000068",
"60411" => "Connection",
"61348" => "Bunker-Hill",
"61466" => "TeleCommando",
"61603" => "Bunker-Hill",
"63485" => "Bunker-Hill",
"64101" => "Taskman",
"65000" => "Devil, Sockets des Troie, Stacheldraht",
"65390" => "Eclypse",
"65421" => "Jade",
"65432" => "The Traitor (= th3tr41t0r)",
"65432" => "(UDP) - The Traitor (= th3tr41t0r)",
"65530" => "Windows Mite",
"65534" => "/sbin/initd",
"65535" => "Adore worm, RC1 trojan, Sins"
);

$host = $REMOTE_ADDR;

echo "당신의 IP.ADDRESS $host 입니다.

자신의 컴퓨터에 해킹이 가능한 포트가 열려 있는지 검사합니다.



\n";

$strNumberFound = 0;

echo "트로이 검색을 시작합니다...
\n";

foreach($trojans as $port=>$desc) {
$fp = fsockopen($host, $port);
if(!$fp) {
echo "접속 포트 $port 검사 해킹프로그램 $desc
\n";
} else {
echo "$desc 로 $port 포트에 해킹이 가능합니다.\n
\n";
$strNumberFound++;
fclose($fp);
}
flush();
}

if($strNumberFound == 0) {
echo "\n\n $host 에서 해킹이 가능한 포트를 찾지 못하였습니다.

";
} else {
echo "$strNumberFound 개의 해킹 가능한 포트가 열여 있습니다
\n";
echo "지금 당신의 컴퓨터는 해킹 될 가능성이 있습니다. 바이러스 검사와 트로이 제거프로그램을 사용하길 권합니다.


\n";
}

?>

function cutStringHan($str, $len)
{
$tail="";
if(strlen($str)>$len)
{
for($i=0; $i<$len; $i++) if(ord($str[$i])>127) $i++;
$str=substr($str,0,$i);
$tail=" ... ";
}
return $str.$tail;
}

1. 날짜 및 시간 관련함수 

*time() 
-용도: 현재 시각을 timestamp값으로 구한다. 
-방법: time() 

*date() 
-용도: 사용자가 지정한 형태로 시간을 표시. 특정시간의 날짜와 요일등을 배열로 리턴한다. 
-방법: date("표시할 시간의 포맷형태","특정한 timestamp값") 

*mktime() 
-용도: 지정된 날짜를 timestamp값으로 변환한다. 
-방법: mktime(시,분,초,월,일,년) 

*checkdate() 
-용도: 날짜와 시간이 올바른 범위 안에 있는지 검사한다. 
-방법: checkdate(월,일,년) 

*getdate() 
-용도: 특정timestamp값으로 시간,요일,날짜정보를 배열로 반환한다. 
-방법: getdate(timestamp값) 또는 getdate() 

*gettimeofday() 
-용도: 현재 시스템의 현재 시간 정보를 배열로 리턴한다. 
-방법: gettimeofday() 

*gmmktime() 
-용도: 그리니치표준 시간으로 지정한 날짜의 timestamp값을 리턴한다. 
-방법: gmmktime(시,분,초,월,일,년) 

*strftime() 
-용도: 특정한 포맷으로 날짜 정보를 출력하는데 언어를 지정할수 있다. 
-방법: strftime("표시할 시간의 포맷형태","특정시간의 timestamp값") 

*microtime() 
-용도: 현재시간의 마이크로타임 값과 timestamp값을 표시한다. 
-방법: microtime() 

*localtime() 
-용도: 현재 서버의 로컬 타임을 표시 
-방법: localtime() 또는 localtime("timestamp값") 

2. 문자열 처리함수 

*addslashes() 
-용도: 작은따옴표 큰따옴표와 같은 특정문자 앞에 역슬래시 문자를 붙인다. 
-방법: addslashes() 

*stripslashes() 
-용도: allslashes로 역슬래시 처리된 문자를 원상태로 되돌린다. 
-방법: stripslashes() 

*htmlspecialchars() 
-용도: HTML코드를 소스 그대로 출력해준다. 
-방법: htmlspecialchars() 

*nl2br() 
-용도: 문자열에 포함된 개행 문자를 
태그로 모두 바꿔준다. 
-방법: nl2br() 

*echo() 
-용도: 문자열 출력 
-방법: echo("변수명" 또는 "문자열") 

*sprintf() 
-용도: 포맷 문자열을 통해 지정해 준 포맷으로 문자열을 표시한다. 
-방법: sprintf("포맷","변수명") 

*printf() 
-용도: 지정할 수 있는 포맷에 따라 문자열을 출력한다. 
-방법: printf("포맷","변수명") 

*explode() 
-용도: 문자열을 지정해준 구분자로 분리하여 배열에 저장한다. 
-방법: explode("구분자","문자열인수") 

*implode() 
-용도: 구분자로 나누어 배열에 담은 문자열을 다시 지정해준 구분자로 연결하여 전체 문자열을 반환한다. 
-방법: implode("구분자",배열변수명) 

*join() 
-용도: implode()와 동일한 기능을 수행한다. 
-방법: join("/", "배열변수명") 

*split() 
-용도: 주어진 문자열을 정규표현식의 패턴에 따라 분리하여 배열에 저장한다. 
-방법: implode("정규표현식","문자열") 

*strcmp() 
-용도: 두개의 문자열을 비교하여 참이면1, 거짓이면 0을 반환한다. 
-방법: strcmp("문자열","문자열") 또는 strcmp("문자열","변수명") 또는 strcmp(변수명, 변수명) 

*substr() 
-용도: 문자열에서 특정시작 문자부터 길이만큼의 문자열을 추출하여 반환한다. 
-방법: substr("문자열", 시작문자번호, 문자열의 길이) 

*strchr() 
-용도: 문자열이 처음으로 나타나는 위치부터 끝까지 반환 
-방법: strchr("문자열","찾을 문자열") 

*strstr() 
-용도:strchr()함수와 동일한 수행을 한다. 
-방법: strstr("문자열","찾을 문자열") 

*strrchr() 
-용도: 문자열이 마지막으로 나타나는 위치부터 끝까지 반환한다. 
-방법: strrchr("문자열","찾을문자열") 

*strpos() 
-용도: 문자열 대신 처음으로 나타나는 위치를 숫자로 반환, 이때 숫자는 0부터 시작. 
-방법: strpos("문자열","찾을 문자열") 

*strrpos() 
-용도: 찾고자 하는 문자열에서 마지막으로 나타나는 위치를 반환한다. 
-방법: strrpos("문자열", "찾을 문자열") 

*strlen() 
-용도: 문자열의 길이를 반환한다. 
-방법: strlen($변수명) 또는 strlen("문자열") 

*strtolower() 
-용도: 알파벳 대문자를 모두 소문자로 바꾸어 반환한다. 
-방법: strtolower("문자열") 

*strtoupper() 
-용도: 알파벳 대문자를 소문자로 바꾸어 반환한다. 
-방법: strtoupper("문자열") 

*ucfirst() 
-용도: 알파벳 문자열의 첫 글자를 대문자로 반환한다. 
-방법: unfirst("문자열") 

*ucwords() 
-용도: 알파벳 문자열의 첫 글자를 대문자로 반환한다. 
-방법: ucwords("문자열") 

*strrev() 
-용도: 인자로 전달한 문자열의 순서를 역전시킨다. 
-방법: strrev("문자열") 

*strtr() 
-용도: 문자열에서 변경하고자 하는 문자열을 변경할문자열로 1:1 변경해준다. 
-방법: strtr("문자열","변경하고자하는 문자열","변경할 문자열") 

*str_replace 
-용도: 문자열 중에 변경하고자 하는 문자열을 찾아 변환한다. 
-방법: str_replace("찾을 문자열","변경할 문자열","문자열 원본") 

*chop() 
-용도: 문자열의 뒷부분의 공백 문자를 제거한 후 반환한다. 
-방법: chop("문자열") 

*trim() 
-용도: 문자열의 앞과 뒤에 있는 공백을 제거한 후 문자열을 반환한다. 
-방법: trim("문자열") 

*quotemeta() 
-용도: 메타문자 앞에 역슬래시를 붙인다. 
-방법: quotemeta() 

*ord/chr() 
-용도: ord()함수는 문자열에서 첫번째 문자에 아스키코드값을 반환하고 chr()함수는 아스키함수에 해당하는 문자를 반환한다. 
-방법: ord("문자열"), chr("아스키값") 

*parse_str() 
-용도: get방식과 같은 형태의 변수형을 변수와 값으로 받을 수 있게 해준다. 
-방법: parse_str(변수명) 

3.파일관련함수 

*fopen() 
-용도: 로컬경로의 파일이나 url경로의 파일을 읽기 모드나 쓰기 모드로 열어준다. 
-방법: fopen("절대경로명/파일", "모드")또는 fopen("url주소", "모드") 

*fclose() 
-용도: fopen으로 열린 파일을 닫는다. 
-방법: fclose($fp) 

*fread() 
-용도: 파일포인터가 가리키는 파일의 내용을 지정한 크기만큼 읽어 들인다. 
-방법:fread($fp,"읽어들일 바이트") 

*feof() 
-용도: 현재 파일 포인터가 파일의 끝인지를 알려주는 함수 
-방법: feof($fp) 

*fgets() 
-용도: 파일을 읽어올때 한줄씩 읽어온다. 
-방법: fgets($fp,"읽어들일 바이트") 

*fputs() 
-용도: 파일을 a 또는 w 모드로 열어 문자열을 파일에 기록한다. 
-방법: fputs($fp, "문자열") 

*fwirte() 
-용도: 파일을 기록한다. 
-방법: fwrite($fp, "문자열") 

*fpassthru() 
-용도: 파일포인터의 현재 위치에서 파일의 끝까지 읽어 들이도록 한다. 
-방법: fpassthru($fp) 

*readfile() 
-용도: fpassthru와 비슷하지만 fopen()없이 직접 바로 파일을 읽어들일 수 있다. 읽어들인 파일의 절대경로를 포함한다. 
-방법: readfile("파일의 절대경로 또는 상대경로/파일명") 

*fgetc() 
-용도: 파일로부터 한문자를 읽어들인다. 
-방법: fgetc($fp) 

*filesize() 
-용도: 파일의 크기를 바이트수로 반환한다. 
-방법: filesize("파일경로/파일명") 

*file_exists() 
-용도: 파일이름으로 지정한 파일이 존재하는지 검사한다. 
-방법: file_exists("파일경로/파일명") 

*is_file() 
-용도: 파일이름으로 지정한 이름이 파일면 true를 반환한다. 
-방법: is_file("파일경로/파일명") 

*is_dir() 
-용도: 파일이름으로 지정한 이름이 디렉토리일경우 true를 반환한다. 
-방법: is_dir("파일경로/파일명") 

*is_link() 
-용도: 파일이름으로 지정한 이름이 심볼릭 링크일경우 true를 반환한다. 
-방법: is_link("파일경로/파일명") 

*is_escutable() 
-용도: 파일이름으로 지정한 파일이 실행 가능한 파일이면 true를 반환한다. 
-방법: is_excutable("파일경로/파일명") 

*is_readable() 
-용도: 파일이름으로 지정한 파일이나 디렉토리가 읽기 가능한경우 true를 반환한다 
-방법: is_readable("파일경로/파일명 또는 디렉토리명") 

*is_writeable() 
-용도: 파일이름으로 지정한 파일이나 디렉토리가 쓰기 가능한 경우 true를 반환한다 
-방법: is_writeable("파일경로/파일명 또는 디렉토리명") 

*copy() 
-용도: 파일을 복사하고 제대로 수행이 되면 true를 반환한다. 
-방법: copy("파일경로/복사할 파일명", "파일경로/복사된 파일명") 

*rename() 
-용도: 파일을 이름을 바꾼다. 제대로 수행이 되면 true를 반환한다. 
-방법: rename("파일경로/변경할 파일명", "파일경로/변경후 파일명") 

*unlink() 
-용도: 파일을 삭제한다. 제대로 수행될 경우 true를 반환한다. 
-방법: unlink("파일경로/삭제할 파일명") 

*mkdir() 
-용도: 디렉토리를 생상하고 동시에 권한도 함께 지정할 수 있다. 
-방법: mkdir("경로/디렉토리명") 

*rmdir() 
-용도: 디렉토리 삭제 
-방법: rmdir("경로/디렉토리명") 

*basename() 
-용도: 경로명과 파일명을 받아 파일명만을 반환한다. 
-방법: basename("파일경로/파일명") 

*dirname() 
-용도: 경로명과 파일명을 받아 경로명만을 반환한다. 
-방법: dirname("파일경로/파일명") 

*file() 
-용도: 줄단위로 읽어서 각 줄으 문자열을 배열로 하여 반환한다. 
-방법: dirname("파일경로/파일명") 

4.디렉토리 관련함수 

*opendir() 
-용도: 지정한 디렉토리에 대한 핸들을 얻는다. 
-방법: opendir("디렉토리 경로") 

*closedir() 
-용도: opendir()함수 호출로 열어둔 디렉토리에 대한 핸들을 닫는다. 
-방법: closedir($od) 

*readdir() 
-용도: 디렉토리에 있는 모든 디렉토리 및 파일들의 이름을 읽어 배열의 형태로 반환 
-방법: readdir($od) 

*rewinddir() 
-용도: 디렉토리 핸들의 포인터 위치를 제일 처음으로 되돌린다. 
-방법: rewinddir($od) 

*chdir() 
-용도: 지저한 디렉토리로 바꾼다. 
-방법: chdir("경로명/디렉토리명") 

*dir() 
-용도: 디렉토리 관련 함수를 사용할 수 있는 클래스 
-방법: dir("경로/디렉토리명") 

5. URL관련함수 

*parse_url() 
-용도: url을 입력하면 해당 url에 대한 정보를 연관 배열로 저장하여 반환 
-방법: parse_url("URL주소") 

*urlencode() 
-용도: 데이터를 url인코딩해준다. 
-방법: urlencode("문자열") 

*urldecode() 
-용도: url을 통해 넘어온 값 중 인코딩된 문자열을 디코딩한다. 
-방법: urldecode("문자열") 

6.변수 및 수학 관련함수 

*gettype() 
-용도: 변수형을 반환한다. 
-방법: gettype("변수명") 

*settype() 
-용도: 변수형을 변환한다. 
-방법: settype("변수명", "변수타입") 

*intval() 
-용도: 변수값을 정수형 값으로 변환 
-방법: intval("변수값") 

*doubleval() 
-용도: 변수값을 실수형 값으로 변환한다. 
-방법: doubleval("변수값") 

*strval() 
-용도: 변수를 문자형 값으로 변환한다. 
-방법: strval("변수값") 

*isset() 
-용도: 변수가 존재하는지 확인한다. 
-방법: isset("변수명") 

*unset() 
-용도: 변수를 삭제한다. 
-방법: unset("변수명") 

*empty() 
-용도: 변수에 값이 존재하는지 확인하여 없으면 true를 있으면 false를 반환한다. 
-방법: empty("변수명") 

*is_array() 
-용도: 변수의 형이 배열인지 확인한다. 
-방법: is_array("변수명") 

*is_double 
-용도: 변수의 형이 더블형인지 확인한다. 
-방법: is_double("변수명") 

*abs() 
-용도: 변수의 절대값을 반환 
-방법: abs("변수명") 

*round() 
-용도: 변수의 반올림한 값을 구한다. 
-방법: round("변수명") 

*ceil() 
-용도: 변수 값의 무조건 올림 값을 구한다. 
-방법: ceil("변수명") 

*floor() 
-용도: 변수값의 무조건 내림 값을 구한다. 
-방법: floor("변수명") 

*pow() 
-용도: 인자 값만큼 제곱승 한 값을 구한다. 
-방법: pow("변수명", "제곱할 횟수") 

*max & min() 
-용도: 최대값과 최소값을 구한다. 
-방법: max("숫자값", "숫자값",...) min("숫자값", "숫자값",...) 

7.기타 알아두어야 할 함수 

*count()/sizeof() 
-용도: 배열의 크기를 구한다. 
-방법: count("변수명") sizeof("변수명") 

*each()/list() 
-용도: 배열의 내용을 출력할때 사용한다. 
-방법: each("배열변수명"), list("배열의 인자를 받을 변수명", "배열의 인자를 받을 변수명"...) 

*end()/next()/reset() 
-용도: 현재 배열의 포인터를 끝이나 다음으로 이동시킨다. reset은 배열포인터를 다시 처음으로 되돌린다. 
-방법: end("배열변수명") next("배열변수명") 

*exec() 
-용도: 리눅스 서버의 내부 명령어를 사용하게 한다. 
-방법: exec("리눅스명령어", "결과를 저장할 변수명" ,"에러발생시 저장할 변수명") 

*number_format() 
-용도: 천단위마다 ","를 붙여준다. 
-방법: number_format("변수명", "소수점자리수", "소수점 표시마크변경", "천단위 표시 마크변경") 

*show_source() / highlight_string() 
-용도: php파일의 소스를 보여준다. 
-방법: show_source("경로명/파일명") highlight_string("변수명") 

*uniqid() 
-용도: 유일한 아이디 값을 만들어준다 
-방법: uniqid() 

// koreaPHP

//////기관추적///////

$ipa='211.192.197.130'; 
//ip만 바꾸어 주세요.. 딴건 수정할 필요 없는 듯..하네요..참고로 아이피는 한국통신..유동아이피라 출력이 않 될 수 도 있습니다..

$find = array("연결 ISP명","기 관 명"); 

$contents = file("http://whois.nic.or.kr/whois/webapisvc?VALUE=".$ipa);

foreach($contents as $line => $value) {

if(eregi("^".$find[0]."",$value)) 
{ $isp=substr($value,21);} //21

if(eregi("^".$find[1]."",$value)) 
{ $serv=substr($value,16);} //16

}

$server=trim($isp.$serv); //통신업체

switch($server){
case "KORNET":
$host="한국통신";
break;

case "한국통신-초고속국가망":
$host="한국통신";
break;

case "주식회사 두루넷":
$host="두루넷";
break;

case "THRUNET":
$host="두루넷";
break;

case "HANANET":
$host="하나로통신";
break;

case "하나로통신(주)":
$host="하나로통신";
break;

case "SHINBIRO":
$host="온세통신";
break;

case "(주)데이콤":
$host="데이콤";
break;

case "데이콤초고속국가망":
$host="데이콤";
break;

case "PUBNETPLUS":
$host="PUBNET";
break;

case "한국과학기술정보연구":
$host="한국과학기술정보연구원";
break;


default:
$host=$server;
break;
}

echo $host; // 방문자 isp 출력
////////기관추적끝/////////

?>

'Coding' 카테고리의 다른 글

[PHP] 한글 문자열 자르는 함수  (0) 2017.01.07
자주 사용하는 PHP 함수  (0) 2017.01.07
불량 단어 필터링  (0) 2017.01.07
절대경로 표현하기  (0) 2017.01.07
색을 랜덤하게 뽑아서 출력합니다.  (0) 2017.01.07

ex) $res[subject] => {바보,미워}

1. 등록된 불량단어의 수를 알아온다.

$arr = explode(",", $res[subject]); 
$bad_word_count=0;
while(list($key, $val) = each($arr) ) {
$bad_word_count++; 
}

2. 불량단어를 바꾼다.
$html_use_temp=$res[subject];
for ($bad_temp=0; $bad_temp<$bad_word_count; $bad_temp++)
{
$res_temp=str_replace($arr[$bad_temp], ♡, $html_use_temp); // 내용중 불량단어 ♡로 치환
$html_use_temp=$res_temp;
}


제로보드 같은 경우 아예 글이 써지지 않지만 이렇게 하면
글을 올라가고 특정 단어는 다른 단어로 바꿀수 있어 좀더 좋은것 같더군요.

예) 
원문 : 넌 바보야 영원히 미워해!!!
변경 : 넌 ♡야 영원히 ♡해!!!

// 절대경로 알아내기 
global $PHP_SELF; 

$thisfilename=basename(__FILE__); 
$temp_filename=realpath(__FILE__); 
if(!$temp_filename) $temp_filename=__FILE__; 
$osdir=eregi_replace($thisfilename,"",$temp_filename); 
unset($temp_filename); 

$virdir = eregi_replace($thisfilename,"",$PHP_SELF); 


echo "현재 디렉토리의 절대경로 : ".$osdir."
"; 
echo "현재 디렉토리의 상대 경로 주소 : ".$virdir."
"; 

?>


먼저 메모장을 꺼내셔셔 위 소스를 그대로 복사해서 붙여넣기 하세요.
그리고 원하는 이름명으로 "이름.php" 형식으로 저장하세요. (*저는 "이름.php"로 설명하겠습니다.)
그리고는 계정에 접속해서 절대경로를 알아고자 하는 곳에다 아까 저장하신 "이름.php"를 업로드 하세요.

그런 다음 해당 "이름.php"로 웹브라우져 상에서 접속해 보세요.
예: http://계정주소/이름.php

그럼 아래와 같이 나올 것입니다.

현재 디렉토리의 절대경로 : 
현재 디렉토리의 상대 경로 주소 : 


제로보드의 경우 제로보드 폴더안에다 "이름.php"를 넣으면 되겠죠^^ 

* "이름.php"는 파일명을 바꾸셔도 무방합니다.
* 절대 경로 아래 나오는 상대경로는 절대경로와는 다른 것입니다. 

색을 랜덤하게 출력해주는 소스입니다.
mt_rand 함수와 rand 함수의 기본적인 역할은 같습니다. mt_rand 함수에는 가비지가 안들어가서 좋다고 하네요^^ 
테스트해본결과 rand 함수를 이용하면 유닉스 운영체제 환경에서는 안먹혔습니다.
현재 Leovote 0.2버전에서서 사용중입니다.

mt_srand((double)microtime()*1000000);
$color_1 = dechex(mt_rand(0,255)); //색을 랜덤하게.. 숫자만들기 시작!
$color_2 = dechex(mt_rand(0,255));
$color_3 = dechex(mt_rand(0,255));
if(strlen($color_1) == 1) $color_1 = $ctcolor_1 . "0";
if(strlen($color_2) == 1) $color_2 = $ctcolor_2 . "0";
if(strlen($color_3) == 1) $color_3 = $ctcolor_3 . "0";
$color = $color_1 . $color_2 . $color_3;

echo("");

'Coding' 카테고리의 다른 글

불량 단어 필터링  (0) 2017.01.07
절대경로 표현하기  (0) 2017.01.07
php predefined variables  (0) 2017.01.06
주민번호 생성원리  (0) 2017.01.06
CGI Setting  (0) 2017.01.06

PHP_SELF
document root를 기준으로 한 현재 실행중인 스크립트의 파일 이름. PHP를 커맨드라인으로 샐행한 경우 이 변수는 사용할 수 없다. 

HTTP_COOKIE_VARS
현재 스크립트에 HTTP 쿠키를 사용해 전달된 변수의 associative 배열 

HTTP_GET_VARS
현재 스크립트에 HTTP GET 메소드를 사용해 전달된 변수의 associative 배열 

HTTP_POST_VARS
현재 스크립트에 HTTP POST 메소드를 사용해 전달된 변수의 associative 배열 

HTTP_POST_FILES
현재 스크립트에 HTTP POST 메소드를 사용해 업로드된 파일에 대한 정보를 가진 associative 배열 $HTTP_POST_FILES 배열의 내용에 대한 자세한 정보는 POST method uploads 부분을 살펴보자. 

$HTTP_POST_FILES 변수는 4.0.0 이후에서만 유효하다. 

HTTP_ENV_VARS
현재 스크립트에 현재 환경 변수에서 전달된 변수의 associative 배열 

HTTP_SERVER_VARS
현재 스크립트에 HTTP 서버에서 전달된 변수의 associative 배열 이 변수들은 위에서 언급한 Apache 변수들과 유사한 내용으로 되어있다. 

-----------------------------------------------------------

GATEWAY_INTERFACE
서버가 사용하고 있는 CGI specification의 revision. 예: 'CGI/1.1'. 

SERVER_NAME
현재 스크립트가 실행되고 있는 호스트의 이름. 만약 스크립트가 가상 호스트에서 실행되고 있다면, 이 값은 가상 호스트의 값이 될 것이다. 

SERVER_SOFTWARE
요구에 대한 대답의 헤더에 사용할 서버 identification 문자열 

SERVER_PROTOCOL
페이지가 요구되어질 때 사용한 프로토콜의 이름과 리비젼. 예: 'HTTP/1.0'; 

REQUEST_METHOD
페이지가 요구될 때 사용된 method: 예: 'GET', 'HEAD', 'POST', 'PUT'. 

QUERY_STRING
해당 페이지를 접근할 때 사용된 query string. 

DOCUMENT_ROOT
현재 스크립트가 샐행중인 document root 디렉토리. 서버의 설정 파일에 정의되어 있다. 

HTTP_ACCEPT
현재의 요구(request)에 포함된 Accept: 헤더의 내용 (존재하는 경우만) 

HTTP_ACCEPT_CHARSET
현재의 요구(request)에 포함된 Accept-Charset: 헤더의 내용 (존재하는 경우만). 예: 'iso-8859-1,*,utf-8'. 

HTTP_ACCEPT_ENCODING
현재의 요구(request)에 포함된 Accept-Encoding: 헤더의 내용 (존재하는 경우만). 예: 'gzip'. 

HTTP_ACCEPT_LANGUAGE
현재의 요구(request)에 포함된 Accept-Language: 헤더의 내용 (존재하는 경우만). 예: 'en'. 

HTTP_CONNECTION
현재의 요구(request)에 포함된 Connection: 헤더의 내용 (존재하는 경우만). 예: 'Keep-Alive'. 

HTTP_HOST
현재의 요구(request)에 포함된 Host: 헤더의 내용 (존재하는 경우만). 

HTTP_REFERER
현재 페이지를 찾아온 페이지. 현재페이지로 넘어오는 링크가 있고, 이 링크를 클릭하여 현재 페이지로 넘어온 경우 이전 페이지의 주소가 설정된다. 이 값은 사용자의 브라우저에 따라 설정될 수도 있고 아닐 수도 있다. 

HTTP_USER_AGENT
현재의 요구(request)에 포함된 User_Agent: 헤더의 내용 (존재하는 경우만). 현재 페이지를 화면에 표시할 브라우저 소프트웨어의 상징이 되는 문자열이다. 예:Mozilla/4.5 [en] (X11; U; Linux 2.2.9 i586) 특히, 이 값을 get_browser()함수와 함께 사용하면, 해당 페이지를 시용자의 브라우저의 능력에 맞춰서 만들어 낼 수도 있다. 

REMOTE_ADDR
사용자가 현재 페이지를 보고 있는 시스템의 IP 주소 

REMOTE_PORT
사용자의 시스템이 웹서버와 통신하고 있는 port 번호 

SCRIPT_FILENAME
현재 실행되고 있는 스크립트의 절대 경로명 

SERVER_ADMIN
웹서버 설정 파일에서 SERVER_ADMIN (Apache의 예) 지시자에 설정되어 있는 값. 만약 스크립트가 가상 호스트 상에서 실행되고 있다면 이 값은 virtual host 설정내에 설정된 값이 된다. 

SERVER_PORT
웹서버가 사용하는 port 번호. 기본값으로 보통 '80'이 사용되지만, 예를들어 SSL을 사용하는 경우 여러분이 지정한 secure HTTP 포트의 값이 사용된다. 

SERVER_SIGNATURE
server-generated 페이지에 추가되는 서버 버전과 가상 호스트 명. (enabled된 경우만) 

PATH_TRANSLATED
모든 virtual을 real로의 전환을 마친 후, 현재 페이지의 파일시스템 기준의 경로. (document root 기준이 아니다.) 

SCRIPT_NAME
현재 스크립트의 경로. 이것은 해당 페이지가 자기 자신을 가리킬 때 사용하면 유용하다. 

REQUEST_URI
이 페이지를 접근하기 위해 사용한 URI. 예: '/index.html'. 

'Coding' 카테고리의 다른 글

절대경로 표현하기  (0) 2017.01.07
색을 랜덤하게 뽑아서 출력합니다.  (0) 2017.01.07
주민번호 생성원리  (0) 2017.01.06
CGI Setting  (0) 2017.01.06
Vi(m) 사용시 ^M 없애기  (0) 2017.01.06

+ Recent posts