Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
超初心者向けWebアプリ開発講座
Search
Uchida Yuma
September 20, 2017
Education
0
86
超初心者向けWebアプリ開発講座
Uchida Yuma
September 20, 2017
Tweet
Share
Other Decks in Education
See All in Education
The World That Saved Me: A Story of Community and Gratitude
_hashimo2
4
540
渡辺研Slackの使い方 / Slack Local Rule
kaityo256
PRO
11
11k
演習:Gitの応用操作 / 05-git-advanced
kaityo256
PRO
0
210
2025年の本当に大事なAI動向まとめ
frievea
1
200
Pen-based Interaction - Lecture 4 - Next Generation User Interfaces (4018166FNR)
signer
PRO
0
2.1k
GitHubによるWebアプリケーションのデプロイ / 07-github-deploy
kaityo256
PRO
1
180
自己紹介 / who-am-i
yasulab
6
6.5k
The browser strikes back
jonoalderson
0
800
Leveraging LLMs for student feedback in introductory data science courses (Stats Up AI)
minecr
1
240
Postcards
gabrielramirezv
0
160
ブランチ操作 / 02-a-branch
kaityo256
PRO
0
200
Padlet opetuksessa
matleenalaakso
12
15k
Featured
See All Featured
Designing for humans not robots
tammielis
254
26k
The Power of CSS Pseudo Elements
geoffreycrofte
82
6.2k
Sam Torres - BigQuery for SEOs
techseoconnect
PRO
0
220
Balancing Empowerment & Direction
lara
5
940
Understanding Cognitive Biases in Performance Measurement
bluesmoon
32
2.8k
Performance Is Good for Brains [We Love Speed 2024]
tammyeverts
12
1.5k
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
133
19k
The Anti-SEO Checklist Checklist. Pubcon Cyber Week
ryanjones
0
92
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
254
22k
WCS-LA-2024
lcolladotor
0
480
Templates, Plugins, & Blocks: Oh My! Creating the theme that thinks of everything
marktimemedia
31
2.7k
ラッコキーワード サービス紹介資料
rakko
1
2.6M
Transcript
ະܦݧ͔Β͡ΊΔ WebΞϓϦ։ൃ גࣜձࣾϧʔτϓϥεɹଧా༟അ
ຊͷϝχϡʔ 1.ΠϯτϩμΫγϣϯ(40) 2.։ൃڥͷηοτΞοϓ(20) 3.PHPͰͷίʔσΟϯά(60) 4.࣍ճ༧ࠂ(10) 5.࣭ɺ͘͘λΠϜ(40)
• גࣜձࣾΛܦӦɹɹɹɹɹɹɹ දऔక ࣾ • 1988ੜ·Εͷ28ࡀ • ཧՊͷڭһ໔ڐΛॴ࣋ ࣗݾհ ଧా༟അ
• ٿɺࣗసंڝٕ *ࣸਅ࢜ࢁώϧΫϥΠϜϨʔε • WebΞϓϦ։ൃ • ࠷ۙσβΠϯڵຯ͋Γ ܦྺ • 20123݄ ຊେֶֶ෦ԽֶՊ ଔۀ • 20124݄ʙ 20168݄ ΩϠϊϯʢגʣͰϓϦϯλʔͷ৽։ൃɺɹɹɹ ࣭ཧʹैࣄ • 20169݄ גࣜձࣾϧʔτϓϥεΛઃཱ ϦΫΤετܕΠϯλʔϯγοϓใαΠτΛϩʔϯν झຯ
ϓϩάϥϛϯάεΩϧʹ͍ͭͯ • WebΞϓϦͷ։ൃ • ΦϒδΣΫτࢦϓϩάϥϛϯά • ֎෦APIΛͬͨ։ൃ Ͱ͖Δ͜ͱ ܦྺ 2015/11݄
)5.-$44 .Z42-1)1 खଓ͖ܕ *ϓϩάϥϛϯάΛ։࢝ 2016/6݄ *α൛ 1)1 ΦϒδΣΫτࢦ 2016/9݄ *ϩʔϯν Ϋϥυαʔόʔ Ͱͷ্ཱͪ͛ ֎෦"1*ͷར༻ 2017/3݄ ϑϨʔϜϫʔΫ ͷར༻ +"7" &DMJQTF 2016/12݄ *SNSϩάΠϯͳͲ ػೳՃ
ϓϩάϥϛϯάܦྺʹ͍ͭͯ ࠳ંVer 26ࡀ 23ࡀ "OESPJEΞϓϦɹ࠳ંʼʻ 24ࡀ 8FC੍࡞ɹ࠳ંʼʻ 3VCZPO3BJMTɹ࠳ંʼʻ 25ࡀ
+"7"࠳ંɹʼʻ Mac & iPhoneߪೖ J1IPOFΞϓϦɹ࠳ંʼʻ PHPελʔτ ίπ͕͔Ε୭ͰϓϩάϥϚʔ
ͳͥϓϩάϥϛϯάʹ࠳ં͢Δ͔ • Կ͔Β࢝ΊΕ͍͍͔Θ͔Βͳ͍ • ։ൃڥͷߏஙͰ᪴͘(ϓϩάϥϛϯάͷ४උ) • Τϥʔͷղܾํ๏͕Θ͔Βͳ͍ ϓϩάϥϜΛॻ͘ࣄҎ֎Ͱͷ͖͕᪴ཧ༝ ͍ͬͨͳ͍ʂ
ຊͷඪ • WebΞϓϦͷΈΛཧղ͢Δ • PHPΛͬͯจࣈͷग़ྗ͕Ͱ͖Δ ࣗྗͰϓϩάϥϛϯάֶश͕Ͱ͖ΔΑ͏ʹͳΔ
͜Μͳࣄ͕Ͱ͖·͢ ϓϩάϥϛϯάڭҭ WebΞϓϦ։ൃ ๏ਓͰͷறࡏҊ݅ ݪ॓ͷϕϯνϟʔاۀ ϝσΟΞӡӦ ݪ॓ͷϕϯνϟʔاۀ ϦΫΤετܕ ΠϯλʔϯγοϓใαΠτ ϚονϯάܥαʔϏεͷ
ґཔ͕ଟ͍Ͱ͢ ʙϓϩάϥϛϯάΛֶͿͱ͜ΜͳϝϦοτ͕ʙ
WebΞϓϦέʔγϣϯͱʁ • ΠϯλʔωοτଓΛલఏͱͨ͠ΞϓϦ • WebϒϥβͱWebαʔόʔ্Ͱಈ࡞͢Δ • ձһػೳΛ࣋ͭΞϓϦଟଘࡏ͢Δ
WebΞϓϦͷଓ Ϣʔβʔ ϒϥβΛ௨ͯ͡ ϦΫΤετ ϦΫΤετʹԠͯ͡ ϖʔδใΛฦ͢ Webαʔόʔ DBαʔόʔ ඞཁʹԠͯ͡ αʔόʔಉ͕࢜௨৴
WebΞϓϦέʔγϣϯͷΈ σʔλϕʔε͔Βͷग़͠ೖΕ σʔλͷग़͠ೖΕ σʔλͷड͚͠ Webϒϥβ σʔλϕʔε Webݴޠ͕հ
FacebookͰֶͿΈ σʔλϕʔεͷதΛςϯϓϨʔτʹදࣔ ݻ༗*% OBNF DPNQBOZ MBTU@DPNQBOZ BEESFTT QPTU@UJNF QPTU@DPOUFOU
ଧా༟അ גࣜձࣾ ϧʔτϓϥε ΩϠϊϯגࣜձࣾ ౦ژ࿅അ۠ ݄ ͜ͷɺגɾɾɾ σʔλϕʔεʢΠϝʔδʣ ݻ༗IDͰ ϢʔβʔΛࣝผ
FacebookͰͷ֤ݴޠͷׂ ݻ༗*% OBNF DPNQBOZ ଧా༟അ גࣜձࣾ ϧʔτϓϥε BEESFTT QPTU@UJNF
౦ژ࿅അ۠ ݄ ݟͨΛ࡞Δ σʔλͷཧ Ϣʔβʔ͔Βड͚औΔ σʔλͷอଘ σʔλͷऔΓग़͠ ϒϥβɺWebݴޠɺDBׂ͕Λ࣋ͬͯಈ͘
WebΞϓϦ։ൃͷྲྀΕ 1. اըɾཁ݅ఆٛ 2. ։ൃڥͷηοτΞοϓ 3. ϩʔΧϧڥͰͷ։ൃ 4. Webαʔόʔʹઃஔ 5.
ςετ 6. ެ։ ཁ݅ఆٛ ࠓͷϝΠϯ
ී௨ͷ։ൃڥ(ϩʔΧϧڥ)ͱ ࣗͷPC্ͰΠϯλʔωοτଓΛ࠶ݱ ٖࣅαʔόʔ 1$ͷதʹ1$Λ࡞Δ ΞΫηε
ϩʔΧϧ։ൃڥͷߏஙखॱ ࡶͳͨΊɺॳ৺ऀ࠳ં͍͢͠ 1.ԾϚγϯΛઃஔ 2.ίϚϯυϥΠϯ͔ΒԾϚγϯΛૢ࡞ 3.OS(Linux)ΛΠϯετʔϧ 4.ϛυϧΣΞ(Mysql,PHPͳͲͷιϑτ)Λɹ Πϯετʔϧ 5.FTPιϑτͰԾϚγϯʹΞΫηε
ͱ͍͏͜ͱͳͷͰʂ ϩʔΧϧ։ൃڥ͔Βಀ͛·͢
͜Ε͔ΒΫϥυ։ൃڥΛ ηοτΞοϓ͍͖ͯ͠·͠ΐ͏ʂ
Ϋϥυ։ൃڥ ʙϩʔΧϧ։ൃڥΛϒϥβͷதʹ࠶ݱʙ ٖࣅαʔόʔ 1$ͷதʹ1$Λ࡞Δ ΞΫηε
Cloud9ͱ ϒϥβͷதʹϩʔΧϧڥΛ࠶ݱͰ͖ΔαʔϏε ݁ՌදࣔΤϦΞ ։ൃΤϦΞ ϑΝΠϧཧ ΤϦΞ
Cloud9Ͱ͓खܰ։ൃ ʙϩʔΧϧ։ൃڥߏஙͱͷൺֱʙ $MPVE ϩʔΧϧ։ൃڥ ηοτΞοϓ࣌ؒ ؙ ༻πʔϧ ίϚϯυૢ࡞ ͳ͠
ඞཁ ৄࡉઃఆ ϓϩάϥϛϯάΛֶशతͳΒCloud։ൃڥ ϒϥβ όʔνϟϧϘοΫε ʴϕΠάϥϯτ
Ϋϥυ9ͷձһొ ϝʔϧΞυϨε ΫϦοΫ ϝʔϧΞυϨεͰ؆୯ʹొͰ͖·͢
Ϋϥυ9ͷϩάΠϯ ϝʔϧΞυϨε ύεϫʔυ ઌ΄ͲͷϝʔϧΞυϨεͱύεϫʔυͰϩάΠϯ
࡞ۀεϖʔεͷηοτΞοϓ ϩάΠϯޙ͜ͷը໘Ͱ͋Δ͜ͱΛ֬ೝ ʴΛΫϦοΫ WorkSpaceͷʴΛΫϦοΫͯ͠࡞ۀεϖʔεΛ࡞
ඞཁ߲ͷೖྗ ϓϩάϥϜͷ໊લ PHPΛબͿ ͷϘλϯΛΫϦοΫ ͨͬͨ3εςοϓͰOK 1. ໊લΛೖྗ 2. ͏ݴޠΛબͿ 3.
OKϘλϯΛԡ͢ ۭനͰOK ۭനͰOK
։ൃڥ͕ ೖྗͨ͠ϓϩάϥϜ໊ͷϑΥϧμ͕ଘࡏ͢ΕOK
PHPͰϓϩάϥϜΛॻ͜͏ʂ
ࠓͷษڧձͰѻ͏ൣғ σʔλͷग़͠ೖΕ σʔλͷड͚͠
ࠓͷඪ PHPͰจࣈΛग़ྗͰ͖Δ PHPͱHTMLΛΈ߹ΘͤͯίʔσΟϯάͰ͖Δ HTML͔Βड͚औͬͨจࣈΛPHPͰ͑Δ
͜ͷϓϩάϥϜΛ࡞͍͖ͬͯ·͢
PHPϑΝΠϧͷ४උ 1.Կͳ͍ॴͰӈΫϦοΫ 2.New File 3.index.phpͱೖྗ ʙαΠτʹΞΫηεͨ͠ࡍʹಡΈࠐ·ΕΔϑΝΠϧΛ࡞ʙ index.php͕࠷ॳʹಡΈࠐ·ΕΔ
HTMLͷ४උ ~PHPʹσʔλΛૹΔͨΊͷϑΥʔϜΛ༻ҙ͍͖ͯ͠·͢~ ຊޠ จࣈͷॲཧํ๏ ϒϥβͷදࣔ͞ΕΔλΠτϧ bodyλάͷؒʹ ॻ͔Εͨͷ͕ ϒϥβʹදࣔ͞ΕΔ formλάॏཁͳͷͰ࣍ϖʔδͰৄ͘͠ղઆ
formλάͷղઆ ~formλάͰPHPͱ࿈ܞ~ ࣍formͷதΛॻ͍͍͖ͯ·͢ formλάͱʁ σʔλΛૹ৴͢ΔͨΊͷϑΥʔϜΛ ࡞ΔͨΊͷλά ࠓճ͏formλάͷॻ͖ํ <form action=“” method=“post”>
</form> •action:ૹ৴ͨ࣌͠ͷಈ͖ •method:σʔλͷૹ৴ํ๏ ಉ͡ϖʔδͰσʔλΛड͚औΔͷͰۭ postͱget͕͋ΔɻࠓPOSTΛ༻
<form action=“” method=“post”> <input type=“text” name=“data”> <input type=“submit” name=“datapost” value=“໊લΛૹ৴”
</form> formͷதΛ࡞Ζ͏ จࣈྻ σʔλͷϥϕϧ(ҙʹܾΊΒΕΔ) σʔλͷϥϕϧ(ҙʹܾΊΒΕΔ) ϑΥʔϜσʔλͷૹ৴
PHPͰσʔλΛड͚औΖ͏ <form action=“” method=“post”> <input type=“text” name=“data”> <input type=“submit” name=“datapost”
value=“໊લΛૹ৴”> </form> ͜ͷϑΥʔϜ(postϝιου)ʹೖྗͨ͠σʔλ PHPͰ͏ࡍʹ$_POST[“data”]Ͱड͚औΔ͜ͱͰ͖Δ ˎHTMLϑΥʔϜͰૹ৴ͨ͠σʔλPHPͷม$_POSTʹ֨ೲ͞ΕΔ
<?php echo $_POST[“data”]; ?> ड͚औͬͨσʔλΛPHPͰදࣔ ~PHPͰจࣈྻΛදࣔ͢Δʹʁ HTMLͷதʹPHPΛॻ͘ʹ จࣈྻΛग़ྗ͢Δ໋ྩ ֯εϖʔε HTML͔Βड͚औͬͨσʔλ
໋ྩͷ࠷ޙηϛίϩϯ
PHPͰϒϥβʹจࣈΛදࣔ͠Α͏ <body> <h1>σʔλड͚औΓϓϩάϥϜ</h1> <p>໊͓લΛೖྗ͍ͯͩ͘͠͞</p> <form action="" method="post"> <input type="text"
name="data"> <input type="submit" name="datapost"> </form> <?php echo $_POST["data"]; ?> </body> </html> HTMLͷதʹPHPΛॻ͘ʹ ද͍ࣔͤͨ͞෦ʹ PHPεΫϦϓτΛૠೖ
࣍ճ༧ࠂ
σʔλϕʔεૢ࡞ฤ σʔλͷग़͠ೖΕ σʔλͷड͚͠