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
82
超初心者向けWebアプリ開発講座
Uchida Yuma
September 20, 2017
Tweet
Share
Other Decks in Education
See All in Education
小さなチャレンジが生んだチームの大きな変化 -私のふりかえり探求の原点
callas1900
0
540
教員向け生成AI基礎講座(2025年3月28日 東京大学メタバース工学部 ジュニア講座)
luiyoshida
1
570
CHARMS-HP-Banner
weltraumreisende
0
180
Gamified Interventions for Composting Behavior: A Case Study Using the Gamiflow Framework in a Workplace Setting
ezefranca
1
120
OpenSourceSummitJapanを運営してみた話
kujiraitakahiro
0
700
Sponsor the Conference | VizChitra 2025
vizchitra
0
550
RELC_2025_KYI
otamayuzak
0
120
2025年度春学期 統計学 第5回 分布をまとめるー記述統計量(平均・分散など) (2025. 5. 8)
akiraasano
PRO
0
120
登壇未経験者のための登壇戦略~LTは設計が9割!!!~
masakiokuda
2
510
データ分析
takenawa
0
5.7k
計算情報学研究室 (数理情報学第7研究室)紹介スライド (2025)
tomonatu8
0
520
2025年度春学期 統計学 第10回 分布の推測とは ー 標本調査,度数分布と確率分布 (2025. 6. 12)
akiraasano
PRO
0
140
Featured
See All Featured
Building a Scalable Design System with Sketch
lauravandoore
462
33k
Put a Button on it: Removing Barriers to Going Fast.
kastner
60
3.9k
Optimizing for Happiness
mojombo
379
70k
BBQ
matthewcrist
89
9.7k
The Web Performance Landscape in 2024 [PerfNow 2024]
tammyeverts
8
680
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
29
2.7k
Making Projects Easy
brettharned
116
6.3k
Being A Developer After 40
akosma
90
590k
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
32
2.4k
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
107
19k
Done Done
chrislema
184
16k
Visualization
eitanlees
146
16k
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εΫϦϓτΛૠೖ
࣍ճ༧ࠂ
σʔλϕʔεૢ࡞ฤ σʔλͷग़͠ೖΕ σʔλͷड͚͠