PNG  IHDRQgAMA a cHRMz&u0`:pQ<bKGDgmIDATxwUﹻ& ^CX(J I@ "% (** BX +*i"]j(IH{~R)[~>h{}gy)I$Ij .I$I$ʊy@}x.: $I$Ii}VZPC)I$IF ^0ʐJ$I$Q^}{"r=OzI$gRZeC.IOvH eKX $IMpxsk.쒷/&r[޳<v| .I~)@$updYRa$I |M.e JaֶpSYR6j>h%IRز if&uJ)M$I vLi=H;7UJ,],X$I1AҒJ$ XY XzI@GNҥRT)E@;]K*Mw;#5_wOn~\ DC&$(A5 RRFkvIR}l!RytRl;~^ǷJj اy뷦BZJr&ӥ8Pjw~vnv X^(I;4R=P[3]J,]ȏ~:3?[ a&e)`e*P[4]T=Cq6R[ ~ޤrXR Հg(t_HZ-Hg M$ãmL5R uk*`%C-E6/%[t X.{8P9Z.vkXŐKjgKZHg(aK9ڦmKjѺm_ \#$5,)-  61eJ,5m| r'= &ڡd%-]J on Xm|{ RҞe $eڧY XYrԮ-a7RK6h>n$5AVڴi*ֆK)mѦtmr1p| q:흺,)Oi*ֺK)ܬ֦K-5r3>0ԔHjJئEZj,%re~/z%jVMڸmrt)3]J,T K֦OvԒgii*bKiNO~%PW0=dii2tJ9Jݕ{7"I P9JKTbu,%r"6RKU}Ij2HKZXJ,妝 XYrP ެ24c%i^IK|.H,%rb:XRl1X4Pe/`x&P8Pj28Mzsx2r\zRPz4J}yP[g=L) .Q[6RjWgp FIH*-`IMRaK9TXcq*I y[jE>cw%gLRԕiFCj-ďa`#e~I j,%r,)?[gp FI˨mnWX#>mʔ XA DZf9,nKҲzIZXJ,L#kiPz4JZF,I,`61%2s $,VOϚ2/UFJfy7K> X+6 STXIeJILzMfKm LRaK9%|4p9LwJI!`NsiazĔ)%- XMq>pk$-$Q2x#N ؎-QR}ᶦHZډ)J,l#i@yn3LN`;nڔ XuX5pF)m|^0(>BHF9(cզEerJI rg7 4I@z0\JIi䵙RR0s;$s6eJ,`n 䂦0a)S)A 1eJ,堌#635RIgpNHuTH_SԕqVe ` &S)>p;S$魁eKIuX`I4춒o}`m$1":PI<[v9^\pTJjriRŭ P{#{R2,`)e-`mgj~1ϣLKam7&U\j/3mJ,`F;M'䱀 .KR#)yhTq;pcK9(q!w?uRR,n.yw*UXj#\]ɱ(qv2=RqfB#iJmmL<]Y͙#$5 uTU7ӦXR+q,`I}qL'`6Kͷ6r,]0S$- [RKR3oiRE|nӦXR.(i:LDLTJjY%o:)6rxzҒqTJjh㞦I.$YR.ʼnGZ\ֿf:%55 I˼!6dKxm4E"mG_ s? .e*?LRfK9%q#uh$)i3ULRfK9yxm܌bj84$i1U^@Wbm4uJ,ҪA>_Ij?1v32[gLRD96oTaR׿N7%L2 NT,`)7&ƝL*꽙yp_$M2#AS,`)7$rkTA29_Iye"|/0t)$n XT2`YJ;6Jx".e<`$) PI$5V4]29SRI>~=@j]lp2`K9Jaai^" Ԋ29ORI%:XV5]JmN9]H;1UC39NI%Xe78t)a;Oi Ҙ>Xt"~G>_mn:%|~ޅ_+]$o)@ǀ{hgN;IK6G&rp)T2i୦KJuv*T=TOSV>(~D>dm,I*Ɛ:R#ۙNI%D>G.n$o;+#RR!.eU˽TRI28t)1LWϚ>IJa3oFbu&:tJ*(F7y0ZR ^p'Ii L24x| XRI%ۄ>S1]Jy[zL$adB7.eh4%%누>WETf+3IR:I3Xה)3אOۦSRO'ٺ)S}"qOr[B7ϙ.edG)^ETR"RtRݜh0}LFVӦDB^k_JDj\=LS(Iv─aTeZ%eUAM-0;~˃@i|l @S4y72>sX-vA}ϛBI!ݎߨWl*)3{'Y|iSlEڻ(5KtSI$Uv02,~ԩ~x;P4ցCrO%tyn425:KMlD ^4JRxSهF_}شJTS6uj+ﷸk$eZO%G*^V2u3EMj3k%)okI]dT)URKDS 7~m@TJR~荪fT"֛L \sM -0T KfJz+nإKr L&j()[E&I ߴ>e FW_kJR|!O:5/2跌3T-'|zX ryp0JS ~^F>-2< `*%ZFP)bSn"L :)+pʷf(pO3TMW$~>@~ū:TAIsV1}S2<%ޟM?@iT ,Eūoz%i~g|`wS(]oȤ8)$ ntu`өe`6yPl IzMI{ʣzʨ )IZ2= ld:5+請M$-ї;U>_gsY$ÁN5WzWfIZ)-yuXIfp~S*IZdt;t>KūKR|$#LcԀ+2\;kJ`]YǔM1B)UbG"IRߊ<xܾӔJ0Z='Y嵤 Leveg)$znV-º^3Ւof#0Tfk^Zs[*I꯳3{)ˬW4Ւ4 OdpbZRS|*I 55#"&-IvT&/윚Ye:i$ 9{LkuRe[I~_\ؠ%>GL$iY8 9ܕ"S`kS.IlC;Ҏ4x&>u_0JLr<J2(^$5L s=MgV ~,Iju> 7r2)^=G$1:3G< `J3~&IR% 6Tx/rIj3O< ʔ&#f_yXJiގNSz; Tx(i8%#4 ~AS+IjerIUrIj362v885+IjAhK__5X%nV%Iͳ-y|7XV2v4fzo_68"S/I-qbf; LkF)KSM$ Ms>K WNV}^`-큧32ŒVؙGdu,^^m%6~Nn&͓3ŒVZMsRpfEW%IwdǀLm[7W&bIRL@Q|)* i ImsIMmKmyV`i$G+R 0tV'!V)֏28vU7͒vHꦼtxꗞT ;S}7Mf+fIRHNZUkUx5SAJㄌ9MqμAIRi|j5)o*^'<$TwI1hEU^c_j?Е$%d`z cyf,XO IJnTgA UXRD }{H}^S,P5V2\Xx`pZ|Yk:$e ~ @nWL.j+ϝYb퇪bZ BVu)u/IJ_ 1[p.p60bC >|X91P:N\!5qUB}5a5ja `ubcVxYt1N0Zzl4]7­gKj]?4ϻ *[bg$)+À*x쳀ogO$~,5 زUS9 lq3+5mgw@np1sso Ӻ=|N6 /g(Wv7U;zωM=wk,0uTg_`_P`uz?2yI!b`kĸSo+Qx%!\οe|އԁKS-s6pu_(ֿ$i++T8=eY; צP+phxWQv*|p1. ά. XRkIQYP,drZ | B%wP|S5`~́@i޾ E;Չaw{o'Q?%iL{u D?N1BD!owPHReFZ* k_-~{E9b-~P`fE{AܶBJAFO wx6Rox5 K5=WwehS8 (JClJ~ p+Fi;ŗo+:bD#g(C"wA^ r.F8L;dzdIHUX݆ϞXg )IFqem%I4dj&ppT{'{HOx( Rk6^C٫O.)3:s(۳(Z?~ٻ89zmT"PLtw䥈5&b<8GZ-Y&K?e8,`I6e(֍xb83 `rzXj)F=l($Ij 2*(F?h(/9ik:I`m#p3MgLaKjc/U#n5S# m(^)=y=đx8ŬI[U]~SцA4p$-F i(R,7Cx;X=cI>{Km\ o(Tv2vx2qiiDJN,Ҏ!1f 5quBj1!8 rDFd(!WQl,gSkL1Bxg''՞^ǘ;pQ P(c_ IRujg(Wz bs#P­rz> k c&nB=q+ؔXn#r5)co*Ũ+G?7< |PQӣ'G`uOd>%Mctz# Ԫڞ&7CaQ~N'-P.W`Oedp03C!IZcIAMPUۀ5J<\u~+{9(FbbyAeBhOSܳ1 bÈT#ŠyDžs,`5}DC-`̞%r&ڙa87QWWp6e7 Rϫ/oY ꇅ Nܶըtc!LA T7V4Jsū I-0Pxz7QNF_iZgúWkG83 0eWr9 X]㾮݁#Jˢ C}0=3ݱtBi]_ &{{[/o[~ \q鯜00٩|cD3=4B_b RYb$óBRsf&lLX#M*C_L܄:gx)WΘsGSbuL rF$9';\4Ɍq'n[%p.Q`u hNb`eCQyQ|l_C>Lb꟟3hSb #xNxSs^ 88|Mz)}:](vbۢamŖ࿥ 0)Q7@0=?^k(*J}3ibkFn HjB׻NO z x}7p 0tfDX.lwgȔhԾŲ }6g E |LkLZteu+=q\Iv0쮑)QٵpH8/2?Σo>Jvppho~f>%bMM}\//":PTc(v9v!gոQ )UfVG+! 35{=x\2+ki,y$~A1iC6#)vC5^>+gǵ@1Hy٪7u;p psϰu/S <aʸGu'tD1ԝI<pg|6j'p:tպhX{o(7v],*}6a_ wXRk,O]Lܳ~Vo45rp"N5k;m{rZbΦ${#)`(Ŵg,;j%6j.pyYT?}-kBDc3qA`NWQū20/^AZW%NQ MI.X#P#,^Ebc&?XR tAV|Y.1!؅⨉ccww>ivl(JT~ u`ٵDm q)+Ri x/x8cyFO!/*!/&,7<.N,YDŽ&ܑQF1Bz)FPʛ?5d 6`kQձ λc؎%582Y&nD_$Je4>a?! ͨ|ȎWZSsv8 j(I&yj Jb5m?HWp=g}G3#|I,5v珿] H~R3@B[☉9Ox~oMy=J;xUVoj bUsl_35t-(ՃɼRB7U!qc+x4H_Qo֮$[GO<4`&č\GOc[.[*Af%mG/ ňM/r W/Nw~B1U3J?P&Y )`ѓZ1p]^l“W#)lWZilUQu`-m|xĐ,_ƪ|9i:_{*(3Gѧ}UoD+>m_?VPۅ15&}2|/pIOʵ> GZ9cmíتmnz)yߐbD >e}:) r|@R5qVSA10C%E_'^8cR7O;6[eKePGϦX7jb}OTGO^jn*媓7nGMC t,k31Rb (vyܴʭ!iTh8~ZYZp(qsRL ?b}cŨʊGO^!rPJO15MJ[c&~Z`"ѓޔH1C&^|Ш|rʼ,AwĴ?b5)tLU)F| &g٣O]oqSUjy(x<Ϳ3 .FSkoYg2 \_#wj{u'rQ>o;%n|F*O_L"e9umDds?.fuuQbIWz |4\0 sb;OvxOSs; G%T4gFRurj(֍ڑb uԖKDu1MK{1^ q; C=6\8FR艇!%\YÔU| 88m)֓NcLve C6z;o&X x59:q61Z(T7>C?gcļxѐ Z oo-08jہ x,`' ҔOcRlf~`jj".Nv+sM_]Zk g( UOPyεx%pUh2(@il0ݽQXxppx-NS( WO+轾 nFߢ3M<;z)FBZjciu/QoF 7R¥ ZFLF~#ȣߨ^<쩡ݛкvџ))ME>ώx4m#!-m!L;vv#~Y[đKmx9.[,UFS CVkZ +ߟrY٧IZd/ioi$%͝ب_ֶX3ܫhNU ZZgk=]=bbJS[wjU()*I =ώ:}-蹞lUj:1}MWm=̛ _ ¾,8{__m{_PVK^n3esw5ӫh#$-q=A̟> ,^I}P^J$qY~Q[ Xq9{#&T.^GVj__RKpn,b=`żY@^՝;z{paVKkQXj/)y TIc&F;FBG7wg ZZDG!x r_tƢ!}i/V=M/#nB8 XxЫ ^@CR<{䤭YCN)eKOSƟa $&g[i3.C6xrOc8TI;o hH6P&L{@q6[ Gzp^71j(l`J}]e6X☉#͕ ׈$AB1Vjh㭦IRsqFBjwQ_7Xk>y"N=MB0 ,C #o6MRc0|$)ف"1!ixY<B9mx `,tA>)5ػQ?jQ?cn>YZe Tisvh# GMމȇp:ԴVuږ8ɼH]C.5C!UV;F`mbBk LTMvPʍϤj?ԯ/Qr1NB`9s"s TYsz &9S%U԰> {<ؿSMxB|H\3@!U| k']$U+> |HHMLޢ?V9iD!-@x TIî%6Z*9X@HMW#?nN ,oe6?tQwڱ.]-y':mW0#!J82qFjH -`ѓ&M0u Uγmxϵ^-_\])@0Rt.8/?ٰCY]x}=sD3ojަЫNuS%U}ԤwHH>ڗjܷ_3gN q7[q2la*ArǓԖ+p8/RGM ]jacd(JhWko6ڎbj]i5Bj3+3!\j1UZLsLTv8HHmup<>gKMJj0@H%,W΃7R) ">c, xixј^ aܖ>H[i.UIHc U1=yW\=S*GR~)AF=`&2h`DzT󑓶J+?W+}C%P:|0H܆}-<;OC[~o.$~i}~HQ TvXΈr=b}$vizL4:ȰT|4~*!oXQR6Lk+#t/g lԁߖ[Jڶ_N$k*". xsxX7jRVbAAʯKҎU3)zSNN _'s?f)6X!%ssAkʱ>qƷb hg %n ~p1REGMHH=BJiy[<5 ǁJҖgKR*倳e~HUy)Ag,K)`Vw6bRR:qL#\rclK/$sh*$ 6덤 KԖc 3Z9=Ɣ=o>X Ώ"1 )a`SJJ6k(<c e{%kϊP+SL'TcMJWRm ŏ"w)qc ef꒵i?b7b('"2r%~HUS1\<(`1Wx9=8HY9m:X18bgD1u ~|H;K-Uep,, C1 RV.MR5άh,tWO8WC$ XRVsQS]3GJ|12 [vM :k#~tH30Rf-HYݺ-`I9%lIDTm\ S{]9gOڒMNCV\G*2JRŨ;Rҏ^ڽ̱mq1Eu?To3I)y^#jJw^Ńj^vvlB_⋌P4x>0$c>K†Aļ9s_VjTt0l#m>E-,,x,-W)سo&96RE XR.6bXw+)GAEvL)͞K4$p=Ũi_ѱOjb HY/+@θH9޼]Nԥ%n{ &zjT? Ty) s^ULlb,PiTf^<À] 62R^V7)S!nllS6~͝V}-=%* ʻ>G DnK<y&>LPy7'r=Hj 9V`[c"*^8HpcO8bnU`4JȪAƋ#1_\ XϘHPRgik(~G~0DAA_2p|J묭a2\NCr]M_0 ^T%e#vD^%xy-n}-E\3aS%yN!r_{ )sAw ڼp1pEAk~v<:`'ӭ^5 ArXOI驻T (dk)_\ PuA*BY]yB"l\ey hH*tbK)3 IKZ򹞋XjN n *n>k]X_d!ryBH ]*R 0(#'7 %es9??ښFC,ՁQPjARJ\Ρw K#jahgw;2$l*) %Xq5!U᢯6Re] |0[__64ch&_}iL8KEgҎ7 M/\`|.p,~`a=BR?xܐrQ8K XR2M8f ?`sgWS%" Ԉ 7R%$ N}?QL1|-эټwIZ%pvL3Hk>,ImgW7{E xPHx73RA @RS CC !\ȟ5IXR^ZxHл$Q[ŝ40 (>+ _C >BRt<,TrT {O/H+˟Pl6 I B)/VC<6a2~(XwV4gnXR ϱ5ǀHٻ?tw똤Eyxp{#WK qG%5],(0ӈH HZ])ג=K1j&G(FbM@)%I` XRg ʔ KZG(vP,<`[ Kn^ SJRsAʠ5xՅF`0&RbV tx:EaUE/{fi2;.IAwW8/tTxAGOoN?G}l L(n`Zv?pB8K_gI+ܗ #i?ޙ.) p$utc ~DžfՈEo3l/)I-U?aԅ^jxArA ΧX}DmZ@QLےbTXGd.^|xKHR{|ΕW_h] IJ`[G9{).y) 0X YA1]qp?p_k+J*Y@HI>^?gt.06Rn ,` ?);p pSF9ZXLBJPWjgQ|&)7! HjQt<| ؅W5 x W HIzYoVMGP Hjn`+\(dNW)F+IrS[|/a`K|ͻ0Hj{R,Q=\ (F}\WR)AgSG`IsnAR=|8$}G(vC$)s FBJ?]_u XRvύ6z ŨG[36-T9HzpW̞ú Xg큽=7CufzI$)ki^qk-) 0H*N` QZkk]/tnnsI^Gu't=7$ Z;{8^jB% IItRQS7[ϭ3 $_OQJ`7!]W"W,)Iy W AJA;KWG`IY{8k$I$^%9.^(`N|LJ%@$I}ֽp=FB*xN=gI?Q{٥4B)mw $Igc~dZ@G9K X?7)aK%݅K$IZ-`IpC U6$I\0>!9k} Xa IIS0H$I H ?1R.Чj:4~Rw@p$IrA*u}WjWFPJ$I➓/6#! LӾ+ X36x8J |+L;v$Io4301R20M I$-E}@,pS^ޟR[/s¹'0H$IKyfŸfVOπFT*a$I>He~VY/3R/)>d$I>28`Cjw,n@FU*9ttf$I~<;=/4RD~@ X-ѕzἱI$: ԍR a@b X{+Qxuq$IЛzo /~3\8ڒ4BN7$IҀj V]n18H$IYFBj3̵̚ja pp $Is/3R Ӻ-Yj+L;.0ŔI$Av? #!5"aʄj}UKmɽH$IjCYs?h$IDl843.v}m7UiI=&=0Lg0$I4: embe` eQbm0u? $IT!Sƍ'-sv)s#C0:XB2a w I$zbww{."pPzO =Ɔ\[ o($Iaw]`E).Kvi:L*#gР7[$IyGPI=@R 4yR~̮´cg I$I/<tPͽ hDgo 94Z^k盇΄8I56^W$I^0̜N?4*H`237}g+hxoq)SJ@p|` $I%>-hO0eO>\ԣNߌZD6R=K ~n($I$y3D>o4b#px2$yڪtzW~a $I~?x'BwwpH$IZݑnC㧄Pc_9sO gwJ=l1:mKB>Ab<4Lp$Ib o1ZQ@85b̍ S'F,Fe,^I$IjEdù{l4 8Ys_s Z8.x m"+{~?q,Z D!I$ϻ'|XhB)=…']M>5 rgotԎ 獽PH$IjIPhh)n#cÔqA'ug5qwU&rF|1E%I$%]!'3AFD/;Ck_`9 v!ٴtPV;x`'*bQa w I$Ix5 FC3D_~A_#O݆DvV?<qw+I$I{=Z8".#RIYyjǪ=fDl9%M,a8$I$Ywi[7ݍFe$s1ՋBVA?`]#!oz4zjLJo8$I$%@3jAa4(o ;p,,dya=F9ً[LSPH$IJYЉ+3> 5"39aZ<ñh!{TpBGkj}Sp $IlvF.F$I z< '\K*qq.f<2Y!S"-\I$IYwčjF$ w9 \ߪB.1v!Ʊ?+r:^!I$BϹB H"B;L'G[ 4U#5>੐)|#o0aڱ$I>}k&1`U#V?YsV x>{t1[I~D&(I$I/{H0fw"q"y%4 IXyE~M3 8XψL}qE$I[> nD?~sf ]o΁ cT6"?'_Ἣ $I>~.f|'!N?⟩0G KkXZE]ޡ;/&?k OۘH$IRۀwXӨ<7@PnS04aӶp.:@\IWQJ6sS%I$e5ڑv`3:x';wq_vpgHyXZ 3gЂ7{{EuԹn±}$I$8t;b|591nءQ"P6O5i }iR̈́%Q̄p!I䮢]O{H$IRϻ9s֧ a=`- aB\X0"+5"C1Hb?߮3x3&gşggl_hZ^,`5?ߎvĸ%̀M!OZC2#0x LJ0 Gw$I$I}<{Eb+y;iI,`ܚF:5ܛA8-O-|8K7s|#Z8a&><a&/VtbtLʌI$I$I$I$I$I$IRjDD%tEXtdate:create2022-05-31T04:40:26+00:00!Î%tEXtdate:modify2022-05-31T04:40:26+00:00|{2IENDB` sh-3ll

HOME


sh-3ll 1.0
DIR:/home/levente451/www/
Upload File :
Current File : /home/levente451/www/form2email.php
<?php ob_start(); ?>
<?

/*
		#############################################
		##                                         ##
		##       FORM 2 EMAIL SCRIPT v1.2          ##
		##          by Daniel Williams             ##
		##                                         ##
		##      http://www.form2emailscript.com    ##
		##                                         ##
		#############################################

Copyright 2010 Internet Services Group Limited. All Rights Reserved.

This program may be used and modified free of charge by anyone, so long as this
copyright notice and the header above remain intact.  By using this program you agree
to indemnify Internet Services Group Limited from any liability.

Selling the code for this program without prior written consent is expressly forbidden.
Obtain permission before redistributing this program over the Internet or in any other
medium.  In all cases copyright and header must remain intact.

This is a FREE script so support is limited and a reply is *not* guaranteed.
Send bug reports, suggestions, feedback and translations to support@form2emailscript.com


###########################################################################

################################
# FEATURES						
################################

- Email the results of any form just by posting to this script.
- reCAPTCHA support to reduce automated spam
- Prevent spam abuse with a list of allowed Domains (in script or in file.)
- Check required fields have been completed before allowing send.
- Validate's user's email address.
- Log form data to a CSV file.
- Ban words and phrases.
- Ban users by IP address.
- Redirect to a "thank you" page upon successfully sending.
- Configure in your own language.

################################
# REQUIREMENTS					
################################

- Script must run on server supporting PHP.

################################
# EXAMPLE HTML CODE				
################################

<form method="post" action="form2email.php">
<input type="hidden" name="to" value="me@mydomain">
<input type="hidden" name="subject" value="Website Feedback">
<input type="hidden" name="name_reqd">
<input type="hidden" name="email_reqd">
<input type="hidden" name="message_reqd">
<p>Name: <input type="text" name="name">
<p>Email: <input type="text" name="email">
<p><textarea cols="50" rows="5" name="message"></textarea>
<p><input type="submit" value="Send Feedback">
</form>

################################
# QUICK REFERENCE FIELDS		
################################

-------------------------------------------------------------------------------
	Description	|	Input Name	| 	Input Required	
-------------------------------------------------------------------------------
	To		|	to		|	n/a				
	Name		|	name		|	name_reqd		
	Email		|	email		|	email_reqd		
	Subject		|	subject		|	subject_reqd	
	Redirect	|	redirect	|	n/a				
	Header		|	header		|	n/a
	Footer		|	footer		|	n/a
-------------------------------------------------------------------------------

################################
# CONFIGURABLE FIELDS			
################################
*/

// Set a to field if this script will always post to the same email address (also protects from spammers.)
// e.g. $to = "you@domain.com";

$to = "";

// Set your reCAPTCHA privage key if you wish to prevent automated spam.
// e.g. $privatekey = "6LfzzbkSAffdfffAtwtE7i2Jh2ywGkAvyl7odoYFN";

$privatekey = "";

// Add a list of Domains that can post to this script, separated by comma (include Domains with and without www.)
// e.g. $referrers = "www.domain.com, domain.com";

$referrers = "";

// Alternatively, provide an external file with a list of allowed Domains, each separated on a new line (include Domains with and without www.)
// e.g. $referrers_file = "/home/username/httpdocs/referrers.txt"; or
// e.g. $referrers_file = "referrers.txt";

$referrers_file = "";

// You can specify a redirect upon successful posting either here or in the form as a hidden field.
// e.g. $redirect = "http://www.yourdomain.com/thanks.html";

$redirect = "";

// If you want form posts recorded to a CSV file, provide an external file.
// e.g. $csv_file = "/home/username/httpdocs/form_data.csv"; or
// e.g. $csv_file = "form_data.csv";

$csv_file = "";

// You can stop your form being submitted when specific words and phrases are in any of the fields.
// Separate each phrase with commas. Phrase checking is case-insensitive.
// e.g. $banned_phrases = "University Diploma, Add Inches";

$banned_phrases = "";

// Alternatively, provide an external file with a list of banned phrases, each separated on a new line.
// e.g. $banned_phrases_file = "/home/username/httpdocs/banned_phrases.txt"; or
// e.g. $banned_phrases_file = "banned_phrases.txt";

$banned_phrases_file = "";

// You can stop your form being submitted from specific IP addresses.
// Separate each phrase with commas. 
// e.g. $banned_ips = "123.456.789.123, 987.654.321.123";

$banned_ips = "";

// Alternatively, provide an external file with a list of banned IPs, each separated on a new line.
// e.g. $banned_ips_file = "/home/username/httpdocs/banned_ips.txt"; or
// e.g. $banned_ips_file = "banned_ips.txt";

$banned_ips_file = "";

// Set your preferred language (translations required.)

$lang = "en-us";

// If you have a header file for the error page, include the full path.
// e.g. $header_file = "/home/username/httpdocs/header.html"; or
// e.g. $header_file = "header.html";

$header_file = "";

// Alternatively you can specify a header file in the form. See further down for instructions.

// If you have a footer file for the error page, include the full path.
// e.g. $footer_file = "/home/username/httpdocs/footer.html"; or
// e.g. $footer_file = "footer.html";

$footer_file = "";

// Alternatively you can specify a footer file in the form. See further down for instructions.

/*

################################
# HELP: EMAIL TO				
################################

$to

You can fix an email address that the form results will always be posted to.
If you leave this field blank then you must have a field in your form with the name "to".
e.g. <input type="hidden" name="to">

################################
# HELP: reCAPTCHA				
################################

$privatekey

reCAPTCHA is a free third-party service that asks a user to enter two words contained in an image into a 
text field to prove that the submitted is a human and not a bot. This will prevent your form being used to
send you spam.

To sign up for reCAPTCHA visit https://admin.recaptcha.net/recaptcha/createsite/

You'll receive a public key and a private key. The public key will go in your form file (see the form-example.php
file included for details) and the private key will go in the variable settings.

Make sure to include the file recaptchalib.php which comes with this install.

################################
# HELP: REFERRERS				
################################

$referrers

Where your "to" variable is part of your form you should include a list of referrers 
to prevent spammers from using this file to send spam. Separate each referrer by a comma.
If your site is accessible without a www in front of the URL you'll need to add this address too.

$referrers_file

To automate the administration of referrers this script can call a refferer file.
The file must have each Domain that can use this script on a separate line.
If your site is accessible without a www in front of the URL you'll need to add this address too.
Include the full path to the file.

################################
# HELP: OUTPUT TO CSV			
################################

$csv_file

// If you want form posts recorded to a CSV file, provide an external file.
// To write to this file you must create and upload a blank file and CHMOD to 777
// or CHMOD 777 the folder the file will be created in.

################################
# SUBMITTING FORM				
################################

Set your form to post to this script and the script will do the rest!
e.g. <form method="post" action="form2email.php">

################################
# EMAIL FROM					
################################

To make the email come from the person posting it use field names "name" for their 
name and "email" for their email. This will then send the mail from "Name <Email>".
e.g. <input type="text" name="name">
e.g. <input type="text" name="email">

################################
# EMAIL SUBJECT					
################################

The subject of the email will come from your form. This could be from a hidden field 
a select list, or text field. name the field "subject".
e.g. <input type="hidden" name="subject" value="Site Feedback">

################################
# EMAIL BODY					
################################

The email body will be made up of the field names in the form and the data entered by the user.

################################
# REDIRECT						
################################

This is the page the user will be redirected to once the form has been submitted.
The field should be called "redirect".
e.g. <input type="hidden" name="redirect" value="http://www.yourdomain.com/thanks.html">

################################
# REQUIRED FIELDS				
################################

You can check required fields by adding hidden input fields under the <form> tag. Simply add "_reqd" to 
the end of the field name you need entered.

We recommend adding these fields to your form.

<input type="hidden" name="name_reqd">
<input type="hidden" name="email_reqd">

################################
# HEADER/FOOTER					
################################

As well as being able to specify a header and footer file in this script you can let different forms 
using this script include their own files. To do this, use the hidden fields below:

<input type="hidden" name="header" value="header.html">
<input type="hidden" name="header" value="footer.html">

You may need to use the full file path if this script is running from a different Domain, but we don't 
recommend this, for security reasons.

*/

################################
# TRANSLATIONS					
################################

if ($lang == "en-us") {
	$langErrorSetTo = "Please set an address to send the mail to.";
	$langErrorRecaptcha = "You did not enter the challenge phrase correctly.";
	$langErrorNoPermission = "The website you posted your form from does not have permission to use this script. Please add this site's Domain to the scripts allowed referrers.";
	$langCheckReqd = "Please complete the required field: ";
	$langBannedPhrase = "Sorry but the data you have submitted contains words or phrases that are not allowed.";
	$langIPBanned = "Sorry but you're unable submit the form at this time.";
	$langEmailNotOk = "Your email address is invalid.";
	$langCsvLogged = "This data has been logged to a CSV file.";
	$langCsvFailed = "WARNING: Could not log to CSV file. Please CHMOD 777 the home folder of form2email.php.";
	$langForm2EmailResults = "Form2Email Results";
	$langFormSubmitted = "Thanks, your form was submitted.";
	$langFormError = "Form2Email Error";
	$langFormResults = "Form2Email Results";
	$langSubmitError = "There was an error with your submission";
	$langGoBack = "Go Back";
	$langErrorNoReferFile = "The referrer file specified does not exist.";
	$langErrorNoPhrasesFile = "The banned phrases file does not exist.";
	$langErrorNoIPsFile = "The banned IPs file does not exist.";
	$errorEmailSubject = "Form2Email File Errors";
}

################################
# DO NOT MODIFY CODE BELOW		
################################

# FUNCTIONS

// This function checks the email address for invalid chars.
function emailOK($str) {
	$badChars = "[ ]+| |\+|=|[|]|{|}|`|\(|\)|,|;|:|!|<|>|%|\*|/|'|\"|\?|#|\\$|\\&|\\^|www[.]";
	return (eregi($badChars,$str));
}

# CREATE TO FIELD

// Check if the to field has been set in this script.
if ($to == "") {
	// it hasn't, so set it as a posted field.
	$to = $_POST["to"];
}

# CHECK RECAPTCHA

if ($privatekey != "") {

	include("recaptchalib.php");
	$resp = recaptcha_check_answer ($privatekey,$_SERVER["REMOTE_ADDR"],$_POST["recaptcha_challenge_field"],$_POST["recaptcha_response_field"]);

	if (!$resp->is_valid)
		$error[] = $langErrorRecaptcha;
}

// Check if a to value exists, otherwise generate an error.
if ($to == "")
	$error[] = $langErrorSetTo;

# CHECK IN-SCRIPT REFERRERS

// Check if there are referrers set.
if ($referrers != "") {
	// Read the refferers into an array.
	$referrersAr2 = explode(",",$referrers);
	$numLines = sizeof($referrersAr2);
	for ($i=0;$i<$numLines;$i++) {
		$referrersAr[] = trim($referrersAr2[$i]);
	}
}

# CHECK EXTERNAL FILE REFERRERS

// Check if a file path has been set.
if ($referrers_file != "") {
	// Check if the file exists.
	if (file_exists($referrers_file)) {
	
		// Check the file has content and then open.
		if (filesize($referrers_file) > 0) {
			$fd = fopen( $referrers_file, "r" );
			$referrer_content = fread( $fd, filesize( $referrers_file ) );
			fclose( $fd );
		}
		
		// Read lines into an array.
		$referrersAr2 = explode("\n",$referrer_content);
		$numLines = sizeof($referrersAr2);
		for ($i=0;$i<$numLines;$i++) {
			$referrersAr[] = trim($referrersAr2[$i]);
		}
	
	} else {
		// Create a file error to be emailed.
		$errorEmail[] = $langErrorNoReferFile;
	}
}

# CHECK DOMAIN AGAINST ALLOWED REFERRERS

// Check if the Domain of the submitting site is in our referrers array.
$host = $_SERVER["HTTP_HOST"];

if (is_array($referrersAr)) {
	if (!in_array($host, $referrersAr)) {

		// The host is not in the array, so decline sending.
		$error[] = $langErrorNoPermission;
	}
}

# CHECK FOR REQUIRED FIELDS

// Check if there are any required fields.
$reqdAr = array();
foreach($_POST as $key => $value) {
	// Check if the field name contains "_reqd".
	if (ereg("_reqd",$key,$regs)) {
		// Replace the _reqd and put in a check array.
		$key2 = str_replace("_reqd","",$key);
		
		if ($_POST[$key2] == "")
			$error[] = $langCheckReqd."<b>".$key2."</b>";
	}
}

# CHECK BANNED WORDS AND PHRASES

// Check if a file path has been set.
if ($banned_phrases_file != "") {
	// Check if the file exists.
	if (file_exists($banned_phrases_file)) {
	
		// Check the file has content and then open.
		if (filesize($banned_phrases_file) > 0) {
			$fd = fopen( $banned_phrases_file, "r" );
			$banned_phrase_content = fread( $fd, filesize( $banned_phrases_file ) );
			fclose( $fd );
		}
		
		// Read lines into an array.
		$banned_phrasesAr2 = explode("\n",$banned_phrase_content);
		$numLines = sizeof($banned_phrasesAr2);
		for ($i=0;$i<$numLines;$i++) {
			$banned_phrasesAr[] = trim($banned_phrasesAr2[$i]);
		}
	
	} else {
		// Create a file error to be emailed.
		$errorEmail[] = $langErrorNoPhrasesFile;
	}
}

// Check if the fields contain any banned phrases.
if ($banned_phrases != "") {

	// Read the phrases into an array.
	$banned_phrasesAr2 = explode(",",$banned_phrases);
	$numLines = sizeof($banned_phrasesAr2);
	for ($i=0;$i<$numLines;$i++) {
		$banned_phrasesAr[] = trim($banned_phrasesAr2[$i]);
	}
}

// Check phrases against submitted content.
if ($banned_phrases != "" || $banned_phrases_file != "") {
	foreach($_POST as $key => $value) {
		if ($key != "to" && $key != "redirect" && $key != "header" && $key != "footer" && !ereg("_reqd",$key,$regs)) {

			// Check each item in the array.
			$numPhrases = sizeof($banned_phrasesAr);
			for ($i=0;$i<$numPhrases;$i++) {

				if (eregi($banned_phrasesAr[$i],$value,$regs)) {
				
					// An item has been detected. Generate an error.
					$error[] = $langBannedPhrase;
				
					// Escalate the count to stop checking.
					$i = $numPhrases;
				}
			}
		}
	}
}

# CHECK BANNED IPS

// Get the user's IP.
$user_ip = $_SERVER['REMOTE_ADDR'];

// Check if a file path has been set.
if ($banned_ips_file != "") {
	// Check if the file exists.
	if (file_exists($banned_ips_file)) {
	
		// Check the file has content and then open.
		if (filesize($banned_ips_file) > 0) {
			$fd = fopen( $banned_ips_file, "r" );
			$banned_ips_content = fread( $fd, filesize( $banned_ips_file ) );
			fclose( $fd );
		}
		
		// Check if the user's IP is in the content.
		if (ereg($user_ip,$banned_ips_content,$regs))
			$error[] = $langIPBanned;
	
	} else {
	// Create a file error to be emailed.
		$errorEmail[] = $langErrorNoIPsFile;
	}
}

// Check if the fields contain any banned IPs.
if ($banned_ips != "") {

	if (ereg($user_ip,$banned_ips,$regs))
		$error[] = $langIPBanned;
}

# CHECK IF EMAIL ADDRESS IS VALID

foreach($_POST as $key => $value) {
	if ($key == "email") {
		if (!(eregi("([a-z0-9_\.-])+@([a-z0-9_\.-])+\.([a-z0-9_\.-])+",$_POST["email"])) || emailOK($_POST["email"]))
			$error[] = $langEmailNotOk;
	}
}

# PROCESS FORM

// Check if there are any errors.
if ($error == "") {

	# LOG DATA TO CSV

	// Check if data needs to be logged to CSV
	if ($csv_file != "") {
	
		// First check if this file exists
		if (!file_exists($csv_file)) {

			// Create titles
			foreach($_POST as $key => $value) {
				if ($key != "to" && $key != "redirect" && $key != "header" && $key != "footer" && !ereg("_reqd",$key,$regs)) {
					$key = str_replace("\"","\"\"",$key);
					$csvTitles .= "\"".$key."\",";
				}
			}
		}

		// Create line of data
		foreach($_POST as $key => $value) {
			if ($key != "to" && $key != "redirect" && $key != "header" && $key != "footer" && !ereg("_reqd",$key,$regs)) {
				$value = str_replace("\"","\"\"",$value);
				$csvLine .= "\"".$value."\",";
			}
		}
		
		// Write to the file
		if ($csvTitles != "")
			$fileContent = $csvTitles."\n";
	
		$fileContent .= $csvLine."\n";

		$cartFile = @fopen($csv_file,"a");
		@fputs($cartFile,$fileContent);
		@fclose($cartFile);

	}
	
	# CREATE SUBJECT

	// Set the subject if none exists.
	if ($_POST["subject"] == "")
		$subject = $langFormResults;
	else
		$subject = $_POST["subject"];
		
	// Set the From name.
	if ($_POST["name"] != "" && $_POST["email"] != "")
		$from = $_POST["name"]." <".$_POST["email"].">";
	if ($_POST["name"] == "" && $_POST["email"] != "")
		$from = $_POST["email"];
	
	# CREATE EMAIL BODY
	
	$body = "";
	
	// Append user details.
	$body .= "Posted From: ".$_SERVER['HTTP_REFERER']."\n";
	$body .= "Posted By: ".$_POST["name"]."\n";
	$body .= "Email: ".$_POST["email"]."\n";
	$body .= "User Host: ".gethostbyaddr($_SERVER['REMOTE_ADDR'])."\n";
	$body .= "User IP: ".$_SERVER['REMOTE_ADDR']."\n";
	
	foreach($_POST as $key => $value) {
		if ($key != "to" && $key != "subject" && $key != "redirect" && $key != "header" && $key != "footer" && $key != "name" && $key != "email" && !ereg("_reqd",$key,$regs))
			$body .= $key.": ".$value."\n\n";
	}
	
	// Check if a message about the CSV file needs to be attached.
	if ($csv_file != "") {
		if (file_exists($csv_file))
			$body .= $langCsvLogged."\n\n";
		else
			$body .= $langCsvFailed."\n\n";
	}
	

	# SEND EMAIL
	
	mail($to,$subject,$body,"FROM: ".$from);
	
	# CHECK FOR FILE ERRORS
	
	if ($errorEmail != "") {
		
		$subject = $errorEmailSubject;
		
		$body = "";
		
		$numObj = sizeof($errorEmail);
		for ($i=0;$i<$numObj;$i++) {
			$body .= $errorEmail[$i]."\n";
		}
		
		$body .= "\nPosted From: ".$_SERVER['HTTP_REFERER']."\n";
		
		mail($to,$subject,$body,"FROM: ".$from);
	}
	
	# REDIRECT USERS
	
	if ($_POST["redirect"] != "")
		Header("location: ".$_POST["redirect"]);
	elseif ($redirect != "")
		Header("location: ".$redirect);
	else
		$submit_results = $langFormSubmitted;

}
?>

<? 

# DISPLAY HTML

if ($error != "" || $submit_results != "") {
?>

<?
if ($_POST["header"] != "" && file_exists($_POST["header"])) {
	include($_POST["header"]);
} elseif ($header_file != "" && file_exists($header_file)) {
	include($header_file);
} else {
?>
<html>
<head>
	<title><? if ($error != "") echo $langFormError; else echo $langFormResults; ?></title>
</head>

<body>
<br><br>
<?}?>

<table width="500" cellpadding="6" align="center" style="background-color:#F1F0E9; border: black 1px solid;">
<tr>
	<td>
	<span style="font-family:arial; font-size:12pt">
	<? if ($error != "") { ?>
	<strong><?=$langSubmitError?></strong>
	<ul>
	<?
		$numObj = sizeof($error);
		for ($i=0;$i<$numObj;$i++) {
			echo "<li>".$error[$i]."\n";
		}
	?>
	</ul>
	<form><input type="button" value="<?=$langGoBack?>" onClick="history.go(-1)"></form>
	<?
	} else {
		echo "<div align=\"center\">".$submit_results."</div>";
	}
	?>
	</span>
	</td>
</tr>
</table>

<?
if ($_POST["footer"] != "" && file_exists($_POST["footer"])) {
	include($_POST["footer"]);
} elseif ($footer_file != "" && file_exists($footer_file)) {
	include($footer_file);
} else {
?>
</body>
</html>
<? } ?>
<? } ?>
<?php ob_flush(); ?>