ããŒã ããŒãžã§ã客æ§ããã®åãåãããåãä»ããã«ã¯ãåãåãããã©ãŒã ãå¿
èŠãšãªããŸãããäœãé£ãããïœ¥ïœ¥ïœ¥ãšæ¬é ããŠããŸã£ãŠããæ¹ãå€ããšæããŸãã
Wordpressãå°å
¥ããããŒã ããŒãžã ãšããã©ã°ã€ã³ã䜿ã£ãŠæ¯èŒçç°¡åã«èšçœ®ãå¯èœã§ãããHTMLã ãã®ããŒã ããŒãžã ãšãã©ã°ã€ã³ã䜿çšã§ããŸããã
ããã§ä»åã¯ãç¡æã§äœ¿ããŠé«æ©èœãªãã¡ãŒã«ãã©ãŒã ãããã®èšçœ®æ¹æ³ãšã«ã¹ã¿ãã€ãºã«ã€ããŠè§£èª¬ããŸãã
ç®æ¬¡
ã¡ãŒã«ãã©ãŒã ããã®èšçœ®æ¹æ³
åŒçšå
ïŒæå¹Webå¶äœã®ã·ã³ã¯ã°ã©ãã£ã«: ããŒã ããŒãžå¶äœãšç¡æã¡ãŒã«ãã©ãŒã CGI
ã¡ãŒã«ãã©ãŒã ããCGIã¯ãã·ã³ã¯ã°ã©ãã£ã«æ§ããæäŸããŠããã¡ãŒã«ãã©ãŒã ã§ãã
åããŠãã©ãŒã ãèšçœ®ãã人ã«ã¯ãé£ããæããéšåããããããããŸããããã¡ãŒã«ãã©ãŒã ããã¯èšçœ®ã®ç°¡åããšé«ãã«ã¹ã¿ãã€ãºæ§ãèªåè¿ä¿¡æ©èœãªã©ãè©äŸ¡ãããŠãããæ¥åå¹çåã«åœ¹ç«ã€ããŒã«ãšããŠå€ãã®äŒæ¥ã§å©çšãããŠããŸãã
ããŠã³ããŒã
ãŸãã¯ãã·ã³ã«ã°ã©ãã£ã«æ§ã®å ¬åŒããŒãž(ãªã³ã¯å ã®ææ°çãç¡æããŠã³ããŒããã¯ãªãã¯ããŠãã ãã)ãããã¡ãŒã«ãã©ãŒã ããã®CGIããã°ã©ã ãããŠã³ããŒãããŠãã ããã

ãã©ã«ã
examples(ãã©ãŒã ã®èšçœ®äŸ)
iplogs(IPãã°æ©èœçšãã©ã«ã)
mailformpro(ã¡ãŒã«ãã©ãŒã ããã°ã©ã ã®ãã©ã«ã)
mfp.statics(CSSã»ç»åãã©ã«ã)
HTMLãã¡ã€ã«
example.html(åäœç¢ºèªçšãã©ãŒã )
thanks.html(åäœç¢ºèªçšéä¿¡å®äºããŒãž)
PDFãã¡ã€ã«
mailformpro4.3.1.pdf(ããã¥ã¢ã«)
ãµãŒããŒã«ã¢ããããŒã
ããŠã³ããŒããããã¡ã€ã«ããPDFãã¡ã€ã«ä»¥å€ããµãŒããŒã®èšçœ®ããããã£ã¬ã¯ããªã«FileZillaçã®FTPãœããã䜿çšããŠã¢ããããŒãããŸãã
ããŒããã·ã§ã³ãèšå®
次ã«ãããŒããã·ã§ã³ã®èšå®ãããŠãããŸãã
以äžã®è¡šéãã«ããŒããã·ã§ã³ãèšå®ããŠãã ããã
以äžã®äŸã§ã¯ãFileZillaã䜿çšããŠãmailformproããã©ã«ãã®ããŒããã·ã§ã³ãã755ãã«å€æŽããŠããŸãã
ä»ã®ãã¡ã€ã«ããããã¥ã¢ã«ã«èšèŒãããããŒããã·ã§ã³ã«åæ§ã«å€æŽããŠãã ããã
- mailformproãã©ã«ã(755)
- mailform.pro.cgi(755)
- dataãã©ã«ã(777)
- iplogsãã©ã«ã(755)
- iplogs.cgi(755)
- iplogs.dat.cgi(777)
example.htmlã«ã¢ã¯ã»ã¹
ããŒããã·ã§ã³ã®èšå®ãçµãã£ãããexample.htmlã«ã¢ã¯ã»ã¹ããŠèšå®ã«åé¡ãç¡ãã確èªããŸãã
Google Chromeçã®ãã©ãŠã¶ã䜿çšããŠãã¢ããããŒãããexample.htmlã«ã¢ã¯ã»ã¹ããŸãããã
ãã¡ã€ã³çŽäžã«ã¢ããããŒãããå ŽåïŒhttp://å¥çŽäžã®ãã¡ã€ã³/example.html
ã¢ããããŒããšããŒããã·ã§ã³ã®å€æŽã«åé¡ãç¡ããã°ã以äžã®ãããªç»é¢ã§ãæ£åžžã«åäœããŠããŸãããã®ã¡ãã»ãŒãžã衚瀺ãããŸãã
以äžã®ç»é¢ã衚瀺ãããªãå Žåã¯ãããŒããã·ã§ã³ã®èšå®ãèŠçŽãããã¡ã€ã«ãå
šãŠã¢ããããŒããããŠãããå確èªããŠãã ããã
åäœç¢ºèªãçµãã£ãããexample.htmlãšexampleãã©ã«ãã¯äžèŠã§ãã
ãµãŒããŒããåé€ããŠãããŸãããã
ãã©ãŒã ã®éãå ã»ä»¶åçãèšå®
mailformproãã©ã«ãå ã®ãconfig.cgiããã¡ã€ã«ãç·šéããåçš®èšå®ãè¡ããŸãã
ãã¡ã€ã«ã®å ŽæïŒmailformpro > config.cgi
config.cgiç·šéãœãã
ããã°ã©ã ã¯æåã³ãŒãUTF-8ã§äœãããŠãããã¡ã¢åž³çã§ç·šéãããšãBOMãšããç¹æ®ãªç®ã«èŠããªãããŒã¿ãå ãããããµãŒãäžã§ããã°ã©ã ãåäœããªããªãããšããããŸãã
以äžã®ãœããã䜿çšããŠç·šéããŸãããã
Windowsã®å Žåã¯TeraPad
http://www5f.biglobe.ne.jp/~t-susumu/library/tpad.html
MacOSã®å Žåã¯ããã«ããšãã£ãã
http://www.mimikaki.net/
ã䜿ãUTF-8NïŒBOMç¡ãïŒã»æ¹è¡ã³ãŒãLFã§ä¿åããŸãããã
ãã©ãŒã ã®å®å ã®ç·šé(12è¡ç®)â»å¿ é
## ãã©ãŒã ã®å®å
push @mailto,'support@synck.com';
12è¡ç®ã®push @mailto,’ä»»æã®ã¡ãŒã«ã¢ãã¬ã¹’;
ãåãåãããã¡ãŒã«ã¢ãã¬ã¹ã«å€æŽããŸãã
èªåè¿ä¿¡ã¡ãŒã«ã®å·®åºäººå(23è¡ç®)â»èªåè¿ä¿¡ããå Žåã¯å¿ é
## èªåè¿ä¿¡ã¡ãŒã«ã®å·®åºäººå
$config{'fromname'} = 'ã·ã³ã¯ã°ã©ãã£ã«';
èªåè¿ä¿¡ã¡ãŒã«ãéãå Žåã23è¡ç®ã«å·®åºäººåããããŸãã
ãµã³ã¯ã¹ããŒãžã®URLãç·šé(45è¡ç®)
## ãµã³ã¯ã¹ããŒãžã®URL(URLãsend.cgiããèŠãçžå¯Ÿãã¹)
$config{'ThanksPage'} = '../thanks.html?no=%s';
ãµã³ã¯ã¹ããŒãžã®URLã倿Žãããå Žåã¯ãç·šéããŠãã ããã
äœãããªããšããµã³ãã«ã®å®äºç»é¢ã衚瀺ãããŸãã
ã¡ãŒã«ã®ä»¶å(管çè å®)(49è¡ç®)ãç·šé
## èšçœ®è
ã«å±ãã¡ãŒã«ã®ä»¶å
$config{'subject'} = '[ %s ] ãåãåããã©ãŒã ãã';
管çè å®ã®ã¡ãŒã«ã®ä»¶åãç·šéããŠãã ããã
ã¡ãŒã«ã®æ¬æ(管çè å®)(52è¡ç®)ãç·šé
## èšçœ®è
ã«å±ãã¡ãŒã«ã®æ¬ææŽåœ¢
$_TEXT{'posted'} = <<'__posted_body__';
<_mfp_jssemantics_>
<_mfp_date_>
ãåãåããã©ãŒã ãã以äžã®ã¡ãŒã«ãåä»ãŸããã
ââââââââââââââââââââââââââ
åä»çªå·ïŒ<_mfp_serial_>
å
¥åæéïŒ<_mfp_input_time_>
ç¢ºèªæéïŒ<_mfp_confirm_time_>
éä¿¡å
ïŒ<_mfp_referrer_>
æ¯æéé¡ïŒ<_mfp_cartprice_>
åŸ
ã¡æé確èªçšURL
<_mfp_numticket_uri_>
äºæ³åŸ
ã¡æéïŒ<_mfp_numticket_wait_> åçšåºŠ
äºæ³æéïŒ<_mfp_numticket_datetime_>ïŒå®éã®ç¶æ³ã«ããååŸããŸãïŒ
é çªïŒ<_mfp_numticket_qty_> çªç®
åä»çªå·ïŒ<_mfp_numticket_number_>
ç
§äŒçªå·ïŒ<_mfp_numticket_code_>
<_resbody_>
ââââââââââââââââââââââââââ
<_mfp_env_>
ââââââââââââââââââââââââââ
â»ãã®çœ²åã¯ãµã³ãã«ã§ããå¿
ã倿ŽããŠãã ããâ»
ã·ã³ã¯ã°ã©ãã£ã« / SYNCKGRAPHICA
ã003-0021 æå¹åžçœç³åºæ é17äžç®4-1
TEL / 050-3390-0450ãFAX / 011-887-0450
http://www.synck.com
ââââââââââââââââââââââââââ
管çè
å®ã®ã¡ãŒã«ã®æ¬æãç·šéããŠãã ããã
äžèŠãªé
ç®ãåé€ãã眲åã倿ŽããŠãã ããã
èªåè¿ä¿¡ã¡ãŒã«ã®ä»¶å(89è¡ç®)ãç·šé
$config{"ReturnSubject"} = '[ %s ] ãåãåãããããšãããããŸãã';
ãŠãŒã¶ãŒå®ã®ã¡ãŒã«ã®ä»¶åãç·šéããŠãã ããã
èªåè¿ä¿¡ã¡ãŒã«ã®æ¬æ(92è¡ç®)ãç·šé
## èªåè¿ä¿¡ã¡ãŒã«ã®æ¬æ
$_TEXT{'responder'} = <<'__return_body__';
<_å§_> æ§
ââââââââââââââââââââââââââ
ãããã®ã¿ïŒ<_ãã¯ã_ããã_>
çŒèã®ã¿ïŒ<_ãã¯ã_çŒè_>
ãããïŒçŒèïŒ<_ãã¯ã_ããã_çŒè_>
<_æ±ºæžæ¹æ³_éè¡æ¯èŸŒ_><_æ±ºæžæ¹æ³_ã¯ã¬ãžããæ±ºæž_>
ãã®åºŠã¯ãåãåãé ãèª ã«ããããšãããããŸããã
æ¹ããŠæ
åœè
ãããé£çµ¡ããããŠããã ããŸãã
âãéä¿¡å
容ã®ç¢ºèªâââââââââââââââââ
åä»çªå·ïŒ<_mfp_serial_>
<_resbody_>
ââââââââââââââââââââââââââ
ãã®ã¡ãŒã«ã«å¿åœããã®ç¡ãå Žåã¯ããææ°ã§ãã
äžèšé£çµ¡å
ãŸã§ãåãåãããã ããã
ãã®åºŠã¯ãåãåããéããŠã瀌ç³ãäžããŸãã
ââââââââââââââââââââââââââ
ãâ»ãã®çœ²åã¯ãµã³ãã«ã§ããå¿
ã倿ŽããŠãã ããâ»ã
ãã·ã³ã¯ã°ã©ãã£ã« / SYNCKGRAPHICA
ãã003-0021 æå¹åžçœç³åºæ é17äžç®4-1
ãTEL / 050-3390-0450ãFAX / 011-887-0450
ãhttp://www.synck.com
ââââââââââââââââââââââââââ
ãŠãŒã¶ãŒå®ã®ã¡ãŒã«ã®æ¬æãç·šéããŠãã ããã
äžèŠãªé
ç®ãåé€ãã眲åã倿ŽããŠãã ããã
<_é
ç®å(nameå€)_>ã䜿çšããããšã§ãã¡ãŒã«ã«ãã©ãŒã ã«å
¥åããããååçãå
¥ããããšãåºæ¥ãŸãã
åäœãã§ãã¯ãã³ã¡ã³ãã¢ãŠã(174è¡ç®)
push @AddOns,'OperationCheck.js'; ## åäœãã§ãã¯ â»æ¬çªã§ã¯æ¶ããŠãã ãã
å é ã«ã#ããå ¥ããŠãåäœç¢ºèªçšã®è¡šç€ºãã³ã¡ã³ãã¢ãŠãããŠãã ããã
HTMLãŸãã¯PHPã®ç·šé
ãã©ãŒã ã®äžæºåãå®äºããã®ã§ãããããå®éã«åäœããå
¥åãã©ãŒã ãäœæããŠãããŸãã
ãŸãã¯ããã©ãŒã ãèšçœ®ãããããŒãžã®<header>ã«CSSã®èªã¿èŸŒã¿ã远å ããŸãã
<link href="mfp.statics/mailformpro.css" rel="stylesheet">
次ã«<body>ã®éãã¿ã°çŽåã«cgiã®èªã¿èŸŒã¿ã远å ããŸãã
<script src="mailformpro/mailformpro.cgi" id="mfpjs"></script>
<form>ã¿ã°ã以äžã®ããã«çœ®ãæããŸãã
<form id="mailformpro" action="mailformpro/mailformpro.cgi" name="form" method="POST">
ããŒãžã®éå±€ãã¡ãŒã«ãã©ãŒã ããã®èšçœ®å Žæã«ãã£ãŠããã¹ã¯å€æŽããå¿ èŠããããŸãã
äŸïŒã¡ãŒã«ãã©ãŒã ãããçŽäžã«èšçœ®ããåãåããããŒãžããcontactããã£ã¬ã¯ããªå ã®å Žå
<link href="../mfp.statics/mailformpro.css" rel="stylesheet">
äžéå±€äžã®ãã©ã«ãããèªã¿èŸŒã
ãã©ãŒã ã®é ç®èšå®
åºæ¬çã«inputã¿ã°çã®ãname屿§ããtype屿§ããé
ç®ã®å
容ã«åãããŠæå®ããŠãããŸãã
ãexample.htmlãããexamplesãã©ã«ããã®HTMLãããããã¹ãããã§ãã¯ããã¯ã¹ãã©ãžãªãã¿ã³ãéä¿¡ãã¿ã³çã®éšåãã³ããããŠäœæãããšæ¥œã«å®è£
åºæ¥ãŸãã
ã¡ãŒã«ã¢ãã¬ã¹ã®ã¿ããname屿§ãããemailããšããŸãã
ããããªããšãèªåè¿ä¿¡ã¡ãŒã«ãå±ããŸããã
<input type="email" name="email" >
å¿ é é ç®ã¯ãrequired屿§ããæå®ããŸãã
<input type="text" name="ãåå" required>
å šäœã®ãµã³ãã«
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="ja" lang="ja">
<head>
<title>Mailform Pro</title>
<link rel="stylesheet" href="mfp.statics/mailformpro.css" type="text/css">
</head>
<body>
<div id="wrapper">
<form id="mailformpro" action="mailformpro/mailformpro.cgi" method="POST">
<dl class="mailform">
<input type="hidden" name="ãåå" data-unjoin="å§+ +å+ïŒ+ã»ã€+ +ã¡ã€+ïŒ" value="">
<dt class="mfp"><span class="must">å¿
é </span>ãåå</dt>
<dd class="mfp">
<div class="mfp_rows">
<div class="mfp_col5">
<input type="text" name="å§" data-kana="ã»ã€" size="15" required="required">
</div>
<div class="mfp_col5">
<input type="text" name="å" data-kana="ã¡ã€" size="15" required="required">
</div>
</div>
</dd>
<dt class="mfp">ããªã¬ã</dt>
<dd class="mfp">
<div class="mfp_rows">
<div class="mfp_col5">
<input type="text" name="ã»ã€" size="15" data-charcheck="zenkaku">
</div>
<div class="mfp_col5">
<input type="text" name="ã¡ã€" size="15" data-charcheck="kana">
</div>
</div>
</dd>
<dt class="mfp"><span class="must">å¿
é </span>ã¡ãŒã«ã¢ãã¬ã¹</dt>
<dd class="mfp">
<div class="mfp_rows">
<div class="mfp_col10">
<input type="email" data-type="email" name="email" size="40" required="required">
</div>
</div>
</dd>
<dt class="mfp"><span class="must">å¿
é </span>確èªã®ããããäžåºŠ</dt>
<dd class="mfp">
<div class="mfp_rows">
<div class="mfp_col10">
<input type="email" data-type="email" name="confirm_email" data-post-disable="1" size="40" required="required">
</div>
</div>
</dd>
<dt class="mfp">é»è©±çªå·</dt>
<dd class="mfp">
<div class="mfp_rows">
<div class="mfp_col10">
<input type="tel" data-type="tel" name="é»è©±çªå·" size="16" data-min="9">
</div>
</div>
</dd>
<dt class="mfp">ãåãåããå
容</dt>
<dd class="mfp">
<div class="mfp_rows">
<div class="mfp_col10">
<textarea name="ãåãåããå
容" rows="60" cols="60"></textarea>
</div>
</div>
</dd>
<dt class="mfp"><span class="must">å¿
é </span>é信確èª</dt>
<dd class="mfp">
<div class="mfp_rows">
<div class="mfp_col10">
<label><input type="checkbox" required="required" data-exc="1" name="é信確èª" value="éä¿¡ãã§ãã¯æžã¿"> äžèšéä¿¡å
容ã確èªããããã§ãã¯ãå
¥ããŠãã ãã</label>
</div>
</div>
</dd>
</dl>
<div class="mfp_buttons">
<button type="submit">確èªç»é¢ãž</button>
</div>
</form>
<script type="text/javascript" id="mfpjs" src="mailformpro/mailformpro.cgi" charset="UTF-8"></script>
</div>
</body>
</html>
åäœç¢ºèª
é
ç®ãç·šéåºæ¥ãããåäœç¢ºèªããŠã¿ãŸãããã
åé¡ãªãèšå®åºæ¥ãŠããã°ãå¿
é é
ç®ã«äœãå
¥åããã«éä¿¡ãã¿ã³ãæŒããšä»¥äžã®ããã«ãšã©ãŒã¡ãã»ãŒãžã衚瀺ãããŸãã
äžèšã®ããã«è¡šç€ºãããªãå Žåã¯ãæ£åžžã«åäœããŸããã
ãèŠçŽ ãæ€èšŒãã§ãã³ã³ãœãŒã«ãã確èªããŸãããã
404ãšã©ãŒ
CSSãcgiãèªã¿èŸŒããŠããŸãããããŒãžã®éå±€ããã©ãŒã ã®èšçœ®å Žæã«ãã£ãŠãã¹ãå€ãã£ãŠããŸãã®ã§ã確èªããŠãã ããã
500ç³»ãšã©ãŒ
example.htmlã§ãåäœç¢ºèªOKãã«ãªã£ãŠããå Žåã¯ããã¡ã€ã«ã®ããŒããã·ã§ã³ã«ã¯åé¡ãããŸããã
<form>ã¿ã°ã®æå®ãCGIã®èªã¿èŸŒã¿éšåã«åé¡ãç¡ãã確èªããŠãã ããã
ã”(ããã«ã¯ã©ãŒããŒã·ã§ã³)ããå
šè§ã«ãªã£ãŠããããå
šè§ã¹ããŒã¹ãå
¥ã£ãŠãããšåããŸããã
CSSã®ç·šé
äžèšã®æ¹æ³ã ãšãããã©ã«ãã®CSS(mailformpro.css)ãèªã¿èŸŒãŸããŸãã
èªåãäœããããã¶ã€ã³ãšéãå Žåã¯ã衚瀺ã厩ããŠããŸããŸããããã®CSSãã¡ã€ã«ãèªã¿èŸŒãŸãªããšãšã©ãŒæã確èªç»é¢ãæ£åžžã«è¡šç€ºãããªãã®ã§ãèªã¿èŸŒãã ç¶æ
ã§èªåã®ã¹ã¿ã€ã«ãäžæžãããŠããã»ããçµæçã«æ¥œã«ãªããŸãã