From 8195d1ad59d8ab9374c4e96fbeaa2bcba0202b7e Mon Sep 17 00:00:00 2001 From: Bertrand Benjamin Date: Sun, 22 Jan 2023 11:00:44 +0100 Subject: [PATCH] Fix(NSI): corection des erreurs vue pendant le cours --- .../exercises.tex | 11 ++--------- .../plan_de_travail.pdf | Bin 56301 -> 55525 bytes .../scripts/bottle_get_form.py | 2 +- .../scripts/bottle_post_form.py | 4 ++-- .../scripts/bottle_query.py | 6 +++--- 5 files changed, 8 insertions(+), 15 deletions(-) diff --git a/1NSI/05_Interaction_client-serveur/exercises.tex b/1NSI/05_Interaction_client-serveur/exercises.tex index 397b859..613476b 100644 --- a/1NSI/05_Interaction_client-serveur/exercises.tex +++ b/1NSI/05_Interaction_client-serveur/exercises.tex @@ -105,14 +105,7 @@ \begin{exercise}[subtitle={Application web avec Bottle - requête POST}, step={2}, origin={Ma tête}, topics={ Interaction client-serveur }, tags={ HTTP, Flask }] Les requêtes POST envoient des informations au serveur. Ces informations sont le plus souvent envoyé à partir d'une formulaire HTML. - On reprend le code de la question \ref{bottle_base} de l'exercice précédent. Puis on ajoute à côté du script de notre application, le modèle suivant: - - \begin{center} - \begin{minipage}{0.9\linewidth} - \inputminted[bgcolor=base3,linenos]{html}{./scripts/modele_base.html} - \end{minipage} - \end{center} - Ce modèle permettra d'avoir une structure HTML propre. Il n'y aura plus qu'à passer le contenu du body. + On reprend le code de la question \ref{bottle_base} de l'exercice précédent. \begin{enumerate} \item Supprimer la route \texttt{hello} et ajouter la route suivante @@ -165,7 +158,7 @@ \end{exercise} -\begin{exercise}[subtitle={QCM}, step={2}, origin={Ma tête}, topics={ Interaction client-serveur }, tags={ HTTP, Flask }] +\begin{exercise}[subtitle={QCM}, step={2}, origin={Annales}, topics={ Interaction client-serveur }, tags={ HTTP, Flask }] \begin{enumerate} \item Parmi GET et POST, quelle méthode d'envoi de formulaire crypte les informations envoyées au serveurs? \begin{tasks}(2) diff --git a/1NSI/05_Interaction_client-serveur/plan_de_travail.pdf b/1NSI/05_Interaction_client-serveur/plan_de_travail.pdf index bb12e738382411cfea7eecc5b94ce0a16c3337f1..002088e300cc615572d1e2269b21a70ca149a81e 100644 GIT binary patch delta 15362 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 delta 16140 zcmajFQ;;uA@GLmCZQHhO+qQMazp-uGwr$(Can9JY-~Zmb`*I()>!qTiUOJ*XGAk=j z8$oZ|K^yQ;L72Fbh4|3`v$&ISw48T)hRT9WQDQdWI1oFH_(bhq7u!Y(!O{xcazDRF zHv2Y>pR2HE2X$>SM+#9zR()T6e^1jn1^5I7_WixBx}gShREFsC`+K3ihcO$ajI1!G z6SeEo=LORMy{-%iu0I`LpO5Px$K~OR)j%oc0WKi{p2$LqmE4*DAwqA1`X@Ea!N-oC zFVK=-h%^DVAew_6GLA!*HKv5J1C(?i@qZDL#Dn0U1PzlfqY->^N$nmZy_!MC6^4?( zhNO7!R_kHyJiY8sA#9@hJ3in8j^=^Z6VygWYflFPaTJPw6w9jad~GNpO%f&C9HxjVqD6WX+!PU-m=<2G@j4tr z801Z9r3zHVb&}j+i$WOrBcx`u^IVT(qp48hj_zb=9r76YlZ#2vg_y+`&>YFb`X`Zw znwZ*?XbRCxnbDZaZ$>D;y~^fgj4+J;k3%lf+^;QXiN2$NqpEr+ODs-O@F30vhkwOy zee1w9W4B;7x_V2UqYEUJYLpCoXqx>{J?MURZ;lP#n^7<;Z50oCQmiN9t#>Igi>g|K z@8Ftyg@G{?JSyy_j$ZESPv;^k4Xx2M4hb!UL!c4Rjcf9JiViS1oz8mmUE94oRF_fWU z=sWD$A|ZviK8#AeQcap>6DI<^GGI&L9%;~flIre&k`d#@L=@ygWs{E=a`LGJ54ek9 zjK)nbbzu)AjX>&R38z{L(%NDQWaiO~oCGm@wb@#ioMQPU^N^%oihlZy!q_loDm5FH zy09$WaP3ujgUhadaamZ_XPK7j=s^v%oajBx&^}9N7^lT2w>5W+azuIugAqZM z3OE8lK+hvmqS?wRoiI*@Y97Nt1v9BZ`@BQgInOol7^NmLFZ8N=`U z@oayB6m?vYYNAP0_v!pELx1o0qb(YOC8Ib%w^q3g9tZ*3Gq{8+K&eJYCo0VO8|l7I?4mzM^EALw>=@v#i%n2`&8HTp>9e=pSa8J>Miz}WcD0#(y{n<26q3g;w&CxXdwxvJb;eTAPb0Nf&zD<&2 ze7XKLv^nR`Paa3C#8)Cx`pbFhK}N~*I-Ihdn;;EWP%51TWqfmLS7c$|M*)WV^sl0H zo#}=}jY-L(Oj!X-1-qp~K!F=@)t0zaCmgv4)ns=>d-_H3@(TSgQKZviDX#L6Nt(w< zFN#{8o4A-zs6Sy5k+z?-n2>n0EGgCM&?6Uv7E6X(*pr4fJ&c82vpV~V&k#rGccR8u zjNR{^%L~#Yhlq48qp0U#2HxVxG;Zn5(Kf4jk>KXi@Sx3umI)F;>E>$2 zY1UU@v(r4EDb`=riSE0LH&Og7HkQWz*NFh%BHtQbk6DP>WTPd_j2D#OQVX(Sv68r(gT>^jB$tJwu>=D{=-#CTm0pUStC{O@P zxYKJ4k7R5rC~omgmJ(b$z++*Bim(olw~--q4$7J!Da9=mR94*V^iT#vhK$(n>+Ot#HD zl!hZ(C!fUKWFz1#P0S4(ws5ftF@B@fj})gI#T4|B5@1KodIViuUmg8CXPmH&l5q;7 zUt5d^a_nb@otq?;1q(0Nf>5gOyDD7`{{E$LjML-aQabHj$I*8ff}!|%ORAJ@l8(;Z zn5&LOTxhNw2iXKPmm$nRvm<}xC==ysFSzYgqQ(|M0;V)pgZXUhuL|=Twc(Kf3l6Qa zuPyrUO}xhaJc}ni0aaZH;qd7HeJOYi?Ena|Y(Fj5`x! zHMbUzvatX2MXMe@ zZ1(wNTV#}93m z@zEq>z1A{&oX7EI6Cx55Brn=v=YV%4R}rcqYJ7lNCZBrO_CwcBNBoOll|?Mi6So+l z)tkqCvr}6au{UQ=*H(X;UW49G+9r7h)VU65fuQDgcs3WQThxjn#|cn&*1UH-ou^8S zJXg}?G#ug8ZSDP>Y_nQ_Kbcg!gpE8s14X-+eOututQe-;z8E3WHc%>)p)I9k0R88_ z%K;$jZEa=TOUk_IM~>q)#Q0(j@5ApAkyFof@!9@*OupL{(tIant^OC+k9PM0)JMA< ziM;{KMq5j(rSDwm`h<;8-EQ!*)y7XYxpaj0K4*w6Qv@W5U*Y~oiDJl)oU6oBgDMw? zZx}aqoAFg@_x>Lzn-m69#AT^KwPX`;YLLi-eZR2w610Iea}i!H^*{gY=<6ma3oBy- z)&4TGUXP8nl7jC;l^^6K4^w|k{bR@Ju?z2&>aI5VeZl=75JyUS$z*SQeh_xf|IH?K zW#dWPk^AQBF9eOU;*VglpcZbVfPH0IIEN`IU&wtT7~ems1+wYd$YgA=AvCJhIjgn4 zv=}jL-yc4Q())Y=$?nhiP~QaYL)45oo_Ff~y!mzhJtK@?{Cbr?@byKGK8VA%$FxTS zy-qjm?+?W+2!N)?fDWTZm?r!+@CW#Oewsd;>1q7TthlH?_kDfMbtZ%x_W2KS!^fEhh+>~x*WE$S{X5>w6o)!%mB7ZC10lp=0=-t8>l_ix zaz+1ve#8Iq8;Kv-Kl>Z30wWo8u6K;fbqHBG!VR5@>252IU@XQq)k1?(+yc1jY6-bv z1sxoYa)%XrB?B&GY-pR|mDYZpzD^4Rl1v%SgGnvB&MUcOr~#w9ip4Dx1p{^tXZ6R+ zjbpqvwC;L=R?zI!jg;XX@*%;il}W0Dy~uOJ!yh_^^r9as=BY~^IyT4zUZ^2#e;V?% zD6JH85@iI6T^<%{3pWU`bO0bxRe)#oXl7Y`krUTS5Iqr{;1TJtc4n3L1wty68Wn7T zB7}EGIW(N()ef7a8dk}< zl%mLolR6BApJ!8)bQpK2(5&VR0ZCwir%uS(z!7h&ntQJ?u4A+8asza2b6%Xqm9g$2 z&*rIM3aZBrMTimpmE4QzS}asGd%^K$%qlq%IU^E{ZpyvC4hvBu&A>F0 zs=(ms1n-JmC4FO^P(UJ|-AEoum=4g2d9Z*WH{p{i&2u{}GXnq!Jbv0rEfVx6L>JuT z9*bgnW|}B`yFW|&LxA!hmTDs92-BA_m(^k}3H2z|j}S1`zvqL>P;qA#jBaQ}q&fJD znJSqB$bMGDF3B{a6CNTGR>L8UDc_=*vWwUxmuNH)`Usx7k-lU_!8s;)@v7zv&Imj* zZTYRpa|KPoBmGbR`h4SIyztq>Cy5WH;PS?qqE?Fu{71;BLI7@(O5StAsUbOF!%{ic zM#wvJhO?zod<`LziZvV|+K1z#3b#E7so?v!JvlpGB3;LGuQ{z5JI^=46-KT?R9_ei zz|PeI1^i_Kc}X%_s`9(x&9@2bcuY&uJwCX}#UImkm8x>ZGAD<-6%K0!>pQ!p*Q}n> zeB@Z`hv3Pc&wvu*$r@^-F@~v&rRHKn6fkXxW%jXS1u2W+`%XX1j5_JfT2VzDAmUx_ z6qJ``4JBW~L=LsX_}YgOD}Ym^#Wk-mZA!^*&wDpyEBG*ZF}}*a#gqO#sk`xTEm_+TbVj_kQ`cO z(huV*E}Jzb0tO%G^d#t-uvL%`*4TItL+=OA#^pq!=98r+R7Bw;?t3X>c8`Pr6u%=?eIm06-7(94DY z!wkk)`!6W}xeH3nAz3u^`KD>SB~H4qwgG$@VrE84n05W7+@Zw*!`Hki?{H~0xDX>4 zsNUCOAd801?bj?!Qv^1SdeCxN2~jZVBVd?er!<{${+r2Om{UDOwGH`#tIVIf$Ko{7 zZS6ukCNfa4_lM4TWARPo{bq7`V z8ES}=pNeQ^jZr3hV?f#HhfnHzZ>1MSr^CYCeb&4MXFb9<_W!w0aT-y1}5P<>E-^iA^Rc-^67qEjQKS}g~D;pKh(TZw~Sfe zswm}OC4LuOg=ipB!*wrpDF54NF(Zxl3ENt#2r&1U4MUvCG^wMp@>G$nc58+lJ4b$Y zrh3cP3ytWSGecg!$IQ&pj{YCSAE^a<~8 z&mv{bv{ILzJ@n1jT7wbXa)RMv+q=>VVD495TmRljdCw=sB~^xR_@`Ef$xlu9?u4zn z{4`}nL&sl8Z|T-N7;^_RS2q`PWBdQf98GLsxS5lUA*eu^xLE#U*XRJ<&bX5a3dlH zpC6I-x)GhZryx!6tm9R!sdPbqLykOOZqD<5M!5B2Slt*RnPzco`I4a1bw|cK0V#R7 zb6C`zgVT5bV}I}0F&^NLv!$b8Zsw^MRsV)OD`$h#b|K;Xr(G)>LlsbB&K-Q zqJqg=6Ui8XpugjfD?9Hhsv#}9}o@@6Li@hm1q*H<(aT=PM`{Lo-gc=}xv}4b$1n;66 zo~88$!twTfzlb8|b%%Brc*UHZrW_Nf1doJe`l+kl+(W?SvQvM|i(9>Tmp~0!ubym$ zvx;1b*iy|*o=PqLn$({JySQ0M_5pNbJ#*$uN}B>wKLt>vV~H5zJqlcTDg0CKSkmfE z-({U&8`iSa-UF~DzmEp$*WL(vk@(qDPWa1851SYcC-NFd zZ+KZA)cqSJNy_9l`K^^vkhn{FrvNxR^Ka$VkpXWCB)eWsNe?A2^2uOrG&r93N}n2d zih{cI|DG5zt3UV~+NZ02>`_D4MuM|Pl*I>!ergcdPTo^Pc*)1ty%Y;Kzt)pFKmf)9 z!FtAL|JDg3|03W2kmX-G@TLQ>NYH@SB>#J^R{a%0s@p_fEB;OA~Of#|Emp^In z&PAPzGQ3j|+32GKJI{-U!slC}F`(Lm2NnKSSvQa7!p0=|(j7S|6a>+p1Pd%FObak5 zvZu=(sMsBx@&cJULCOu^=@DN7VW&H6+!DWC_Qp67Pplho!@YYU5I z3^)SSi?-(j?{Gzf)oeEA&pU+!p4>(1OCAH|3R%V z*h5TeS47r!i5fsaA0w&+fa|ZM1VQVsr2X*>R%_iL>K{sXx?)ueGitCkah$7M3&o&< zpAm4`dID7oLu#>a3QrFuj{yHkgt{qKJ&<56$KW27U+yOOwsOl%Zo$yZI3GQJDP?ye z#*q1$^ceG)L+y~n>1CBZU>=DLpuGXS;Z<`t5*265@bso-O(nr;L9#S?pJXk%XP7i{ z_SMS#6+t!@r1Q;7Q^kl+XF;9o;44H^?UftoNM{hP5^zHL`{O4(*#I*plqh2q!|D#V z>5Pzu{MT4Yb5ZR=GVnori71zVRK805!P?<6kh@`6mSPwg7G+7qrm)rmk;W`a>>a-I z%65AFfL2%~VJ+_H=Psn~E-T7^RTvL=?ECi}Lc+wfcvT>mW}()NsrqUnjY+=ecMHXl zsLf#=T^FLuVGcTSb^sgn*J?}SMhE8J6N>Pj3oiO? zxcng9#T^rYf3$0HtNrx_s*rs@q^z7(ZGB?vA4^<3d123WPPOB`b{g|9;A3hcLiZ zqsxS*(&gQD7VmAe-}^AdRK)E76#P=ZZ{Ys}p8o|aD0oO0=yeG2zv0}MfieB}`%Cxx zB=qZC=otVIWkAthWP%DCchY8uZzwmx4rHt#IS&EY+ft46A8 z3$9}L?Y3{-D{W#+-~aJYnDIE=FilgCH%#&4_i$<7QX!mE9nC;H;Fg*7@7A#C+qS+~ zk0q73kR6<){%7X4F6Y}7xQEi_Gn{362|Pe`H~*j{xjw59n$L98Dubc~?(-^l29QYaZ(RxpRf^n{!P+<9&=oem_{$mtzdZf?@vmfX2jy03~_ zVs|@>W#d7kj8nGa)Pr)eA{JAF#9AGeoLJ)!fl)Unr^S?mXsh8vj0ac;dqrn>(H~Ah z(+uR-Id=l>9V*J(0vL-oTFzAG{EDV>=tY;twH>f?snbCg)MTImT{L?rg?Qg{?@et) zL37`T_q^os5|f_+$I*)<%F=36@bnTe;jyfL53U}pXvs*5cI@z3#jDJ;ei21ABcB5c zLW0lD`srWK;RxAXLVM%0+t$sV$?A52Q(*N@*8;f+tD+is9_g0^UEvAAMRw}N!+ z0PDR*VQ~@SD5Gp0?*+=j9%@^r(Y_R)@tPl9|D9| z0r9B2X1c0j!P?I!8y^2T!|=ZZgTLLX0_`1qd`x~IQ12q87;kG6RLW{)TQf1WK5G^J z6T!wW)_Kh5cgv$OY+qNurw_tB+O|zo@Y#Dr*3~fe-bMq5T}nIUxKUQ^&Mrxq9Ikrs zS!ati2(IAmz?-=!`myh!5w_BKQwiwbg^kB0pO0%fvs^&^aIw-W^!j66h!HI%^GyY`%yf&(RYRms(8?? z|F9R{w0x)DJDwZ)9)xXyH-7Af?~HtxL;P>~JXTf0)3dC)#`UNh?>AxUU&fa8j&!J4&?uyADI6$c^E@bg0XP0G5;@pepGil?z#hc z_f_)^atL{!Y=P-Op&K$oKWPu%f?c?2Qh&zo;Xi#oiYARJ`sMkyz<44}s&UV~YQjL_ zSAf1e-w>k*#`>s8F}h()rUR_BR^S_2aa{4|=W%-bd|HukFSi7Fi_87vYaNy^T+mB} zc$X(sJi4J{`MiC(zJ9t0u+y~Rse#j%{iHvC{|7?x2Rh%-C@t>rX`k<9TN;w| z=IHPfpz!PYzTJFk(uzz&!+=#Q#C2wu98VoH!-c&I_imr(yUO#TtRT%^1cZA7tO#t-)}`PZ5DHxRvb z($plxXPP&z^)k0^hWY;a*vUcX5@mV&z^7|S&9ocYBN5YUt+CElz$m4jlrgr*KTdFZ zL=h+WOH0oXeY@=gKnIWW$19w=*xs9lHN27VuYoqFeW5I|RZD^LIUAX)N9B|Mff?rk zMQyg(VA{mP^wf!ro5Bc^Qsi0{}Bo?ROQMf?q9xLy&_a0 z1Ss)4_ri^#5nTUkyYd;K?aBU(+ZZX)q#lf=ad_#;HAYTKfQ=K%@%sq9xqN`bDH|=y zvs<=6ZBN6LJ=97#SW!bNczH{;sz;F*LL$|Of2G-bvWOY#VyAqs|AO6OjOn~y*~p|u zOL)mzMu$}42@dMBvD^*i&DhA$#2D&Q2Hqsu^Ybhf+Da);rHxJUEU#Q_zPUtn{%sst z=EoF&)tKxPfE|Co$~glinh8VntGK7)1|u-~6fLn)b|$Z+?Xq<|RnJ%Eg^pQ!wEX2G33%{lTY~Y3&w2cuOPr z$$5-8-7>~Fnbv}8vSkwlvCy|uV$$i|U&BKgYdVEMo!w+o-M71QhEa*MnUKpW-WjH# zQZ;b|O!KpCgMChAGxuU9p0gjUk0h>$wW2~W^v;BKTg z=~Xu}2ib*)EQ9OpBfvJZpHOQdd_CV;J>skE6CsM>L?fY4S}ex8-Rzw5dK zS}l_Ef@&>pc$MqoDAS_uW7);5Kqx><3%5Yo$;_r~4t&|WVEpeiFjQL7^g-_ms%@w4bWcY0IS1G zZinL5Zx`%x!6{xU)iJi4r;t!}bi*>5(8AcgPTC^^jL|;X-&F)?>798Oio6W87M(4U!(X1O@tb&C8GBnP{8wq=dqsR4oDIauwQ6YO3%erZs|}Yg zh7!WckWPx4k_&yMkGi8RcUV6zr{qJmZob1T+@!zI>gnko*Wo}MVOMep>UtKG$B@~%>4Gv#+O%#jS|T{<&^&>OK=3`iq!MuW>^o*5(ch2yg_u| z+10VdS?l9=zp?F@%hhU6>o&Wsw@mA`E;O6}F>&gO#JCSWiy8&Ma~2US_1a!t=~7_H zGnmu1W&RB&FOE_HLv?rxARu9dWavC{;5kO|im$Ylx`!{)wtdLE0LQi z4JC*4_$J{6?z|+Z9~3q*x+4QOlEuy~;|QQix+b> zBn*JEon3Gxx#R|9&+{Smg|MGplKk`2j<#%qa1iH}PXglCfHUoO-)-G&i=9b_pzU;qOC@LqW_gP$KAn&+?9IT5-G7^(9vlF)bRU z%)Oh&-!n)wZegWA<|tiEjy~x@OcGU=>2qBG>4gVb{_zID>EYBmGj>Bf`FkA~H#n27 zgpHYXe5RQ1k~5eL>mRANaFyeAkVhZDrzGSjBQ+yrb}b3S7@wM6==bd=x0Antrku1W z*`YbY2LFhyf%>mO5i1^TJFm?{x^mQOiGqi&WCGQVt#? zrs}N6;^&8o_u+r9&hv3aPbwb!7}wx_JIc;&YOYOf3J$-F>_xYNQ2c@XXb@r5pPn?4 z4Q&BHzQoMlwv1jmi@T0HkLHrjO*uAtLV6vqROaTrzc=d$8d$~u-Vd!zX66O*auA4p zocA#{rrm%2i6)D$l+Va3y$seB)Id8vKJ@F8qpWJ4n@yR+9{k*dsb8N@{{?PaLE8Dh zStth)6Vd;u*?fG-KYYT#|KmHx0O&j7wxjs1*Jq5s6zciAmO;Ug*(ci;(1Y-TZ$U^D zPHk&-M6D&PSuYvxv(k1a-nPo?GAtm1rcIm@nYMaQ+B{#o4CbndWP>i40 zkEE04b0Ir`pYy+q5K|H}qVX3ms=&oja;wG&3sYeeDKdwP5i6P9qEX8j14L9^Jh2E8 z`Hs7kL?ENmRN6v|L^Hq0K+?h22U4L}4q!Zsl}r*S4>}8wJp=Wj0ZGpIRJw2^;wjMU zkt`4#(%7d$VJZue)IRJYN=>4qrw70fRM7@XaR|ACsK77-l+h9?+^N!yDX>y#Q&x-@ z<5-f)5uP*`lvsMep$(-;fJ&`=C<@HzIq_~9!8-jm)C{GdXR!1XsB=tVXiC-!)EFTs znYIoH#j%5fs3h?90vhH7D)O(=c#OkHu$?6jA^L%&2>dS!Z1NbO6#g%Y7!(OAbu2d^ zaWKzGZArY^wt*_F=@H`$JaOHX|4f<<6k~quaC@#1M3@@%g`vhhfH9mOB((ubr|@Cb z5fRO~%1!JMhNO#h9H5LgFmUA~LX)i2vWddU8h>}MPbaqHR6i|mtPZGXUz6@0- zRLD&jw_psWbK!lXxrnUCE3gG##IqnzUM=bxRNx{E4ML$=60F+;?!XtkCpr@AhZAUa z$noXk_Xl|UtCrO#z}2v{Y+e>)w|F}bSLU3KO`pyFtmW-bv}J{dWBDU_Z<_>vs3TPx zBKlr!+*LzqMS3)o`u0g;^3O^9rf4+4}V6yNXqRK-|jk2lqEJ}rDG~E)Uo%wm(>%(qCa-Dwn|9*0}57*b#Eq%+xQcGQjSUUL*PC zO_xe#`B=RK6f^yt4mpicM&l0^GZBP33uB3L+7S|l{#zK@AfN3Byvpx+13UJ8aLL~A zK*eKc?9#-i8?PHe%dl9sL#NQbjGI#ILfSlzEQfC+6*JHi|U}}*d2l( zm{P)Xz~=c|$*U>(9|E-S+WoBGup1&MEF0amv$}`S?nT%LL{rE4B2ZkDLna^m3`6(0 ze#j!Oon^m2{LU^@Du!9IDTXI-Le9Q^`h2{bv479HQ4)T<^j>N>3XBpl@YL^7_;L7V z+l4>@SVlu^`A6M0rJ(;bUUu9ouH|#iif`k*?hYE5F3@@6}pYe+agEpTAi zX1KFk9w+4~Nvd8ncy(p&=(-*!_xAbO4wYvEF5Lt>&233cu>Yb+Cpg0`I%yCJhn*Vq zy_a5piu*hmN8BiL>T*inc9#j>cCY$&F^zw3kAg-lYBLXBy#qM35#@3hlh1g!U|lhH z?Yg+`*1pf}HaW&`O%`uW423}M^-F>xtNTTnaQU;%nKhQ~UUKQWlIcwbuzWp&*M=+{tLZ53zQj) zlom%Mj>d*3gil`MQ$90ayeIEyGtV{cK~Emlc5}{&%*RTP&HjEG$tf+h3d5^RVw+y- zJHqrl_+R_!d8m$q+l&qr+{TMEC1`{Uj8vubFt8$+8251^(<;#N7@gs)!*F}14) zFYPi=Q}-}kCy;<)Z;TwAlzwKdyNTeXEa*%nrKrWZiYv4tZ@- zqnvbuV%3N@^9Lcmy3sDN=b;S1DQdmM$kYgG8@&?D^jEV31rN+|Yq7-{PVXQVi)OIP zajJDDW3g`y7vWPpQHB){#UB!Ry>kvhx3}MJYL{oWO*O_xf!p%^A;*>Dp6Bu@-|fnB zSNutvr%-or@yicRAFTUYC03$uBF9k_@;vtEJaH)0kDi-@fI7{_<)j$E*Hwv4{^u}j z#}_Ua{GDT5N43calPxPRKIwXK%}R$u!Qd}STkGQdATC2CN-h?y^?w7C0LAH+XBk%g zrh8nnB*)q+4YRhsuWfG;rQzn@m5cu0qSfFglMPMUMic_#jU*NNuX*`q-2JV%AkZ_* zs%PVs+0QnlU!V_3!#tSgezEFsNG4`hc5W8#Wak;Y|1VFO=>z`XX3k#iZ3kS*|3F&v zskj3c;nN=&1T+nOwCPxjb~Ca!h``Eb2uU^>j2q^re_xefv?&`;22~v9fVq2qMNLyZ zzp77)YL*Liipl=3sW#G^b0c+%<&df%6Lp~VT#4!%x?E&{;bh9Fr4BRwNa6yHj?^5} zu=E^DvGg1>s?;1SEC3%Q?sj z6Y{-RjC_GRB9cUpH4O1a%LJ;x3m^+Jn@fNfEjK)5*Yei(l+%;6u7MpDn*X*f8Uz%B}9}!Bto3%_#|+ypB7rDr&Aa&?sv`83i}L z*O;)aV4o>)npm!>(yZH)F+_p38ukPXo%*_|Yc$w80i38ttdhwDH34~;F;3HQG~Z;y6;Iqvf{hcC@SUY8F& zN8RW>0WK`R5Vd}!=-0Hw5z17n3Z@Bz)2kI?0k!TKxrayY+}OXu`m&1^`_JejkgZqg z&Hq}={HU*o}$WkMEb*={=^%>NixZICAf zLpCpdd9dJ`?&xkXRrb9aHV;lZsjofUI;>;t0}zaXN;F2~Rb5f@{4)SK@&)KCBB5Rr z2pMuxrgNg8_cMs}evAM1k8C<32Vc=mJOn=d2%!D6<0z|b-gEK$dvXEPK6Zcoy>uBS zua8^T`B|(RGtvyLDY%&VSXAvMQ?iOr*@7&bbqBJ#9^inDD}_b9A(k(c?w z87z#JK454MK*ui3nJIhr(kTx8MEmuUr>9!cJ+=r-`w>1*q^)i~OZ;|=gDIc1h!0M- z$^47h0Ap*7cmM_eu7dYgxy(GMLA$w?)wI&@1sp%xeJlN-&bw(T@}cq#2EOh~)l;N}sKrmqBgrt)ZI4vm5U zx;jF~t_ZrNPQ}qvait5@0k4{~i75JbelU$1z`{ArEahEi#6=VrG;&G$Kl%WUb}82V zgP`~wSp-twSSpz;lL?LuAC*=5384m8?0iz*SIQbY5QM}5uDh@rtnJw5JY^B)K+bdv zkrWnp>6tS?olARWzoBLwGF>5b?wfN`d5e`w8Ej&DF&4-mtMm>(&d3zc8YZl_-UML_ zC<8%lU6)&Ih`S?ag7XmP`ab6M)?{?;bH1W5nAMXEcQ|4wZZp+w-#zP$OzDjCD7Y=I zL3ch}`d2b~tsa9m^$|)&Y)_paytJa_qIA7MS>AisN7U2%b$aw{+i+*YrOTgihEeTo zIB0r9#)biw$^ey-XD1AG85Ds2EtE73@JZskA?pNGkqI8S$tL+MCY|I7@=PLz`fyI} za!lU3l6Rhw2pr%m%U2>%%gD#2h+PqSuVKe5=Z+p`aDZONrW31JnN+|t1E{abo1kVV zc$LxZG@3&IlN@+Rbnv!at2;Ty6&M8^npb@uq{3(2pTjsS!C7e7j3 zG!47f3kP@50dha>!%=Dg+@^DNW%IZNNkxl7x84zks4tX+UF>|XW-UhdO&O1ED) z%BR{{%wgxwC{4pZp7B$!9xmO0C~b5}dyiy!b7=OCKILt_X5_$&;^XD_3V=F%x_bN^ z3z@4gLNsh(pX_JPcviCksL+swp%f4cI2uqYNY{AQwfomoLEYb3z_l!9YUx1t> zkP!-y#l?ye^mI1OI#9z-X`i(3lG-msz^OoTz$r1i=+Hw#7O}C{#7qF-lo%HyEnJS8 z4)L-9YxQpn;Qwo|d@1Kk$`yI$>LR1n%8S<6xddc#5mW`HF*jG#D^?E!13Byb#PR({0!y;d)d zqPpoIaoz$^{3)xt8?6+uxu0H2<h#<%vM?Yr0T(5whK*KP z!5SffP7!EUJ8iDCa>`0|1@q~)^Op{J$I|qX!9wIJGOAcMQ((r7Wbw9$Bc9@VHr_Nk2C@nBs=C=z;r& zr#foJr{Q?toT(m;ivMgPzL$J^3@X_JiI;lF3RbR z(H_SM6MFsyc1Zc*NQPYV5M>i#7vmJ;;^30t7G{!Q7iMQ+77-QU;N<4!W))*&lMo={ z`~Pc69#|s18!A_XR|Tb+9{Mk9GWmp8D1Pa&gS!UtVNM*v7Sm4=W)_nPSL)AHzU04o8)J? zo74D4_$6mDGwue}Zp7hRNxPIy7((e8W$8J`ch-?W6wU`DwFt)I#^Uyqom~9?2Iey< zA^*hWbd_UPSykCsdWBJ9YI5oyo4aP~zVW9c)0N4Y$r)O2>2LM?%U!pX$vM()1A4`* zG)?*YeTm#JzK84esRnEF*{4bj_a@h-M`C+6Ib1{e{qbUjFa`hr6?+0fRUCk9e~lYK Z8+K#u """ - return template("modele_base.html", boby=formulaire) + return formulaire diff --git a/1NSI/05_Interaction_client-serveur/scripts/bottle_post_form.py b/1NSI/05_Interaction_client-serveur/scripts/bottle_post_form.py index 56a93d7..22ca2b5 100644 --- a/1NSI/05_Interaction_client-serveur/scripts/bottle_post_form.py +++ b/1NSI/05_Interaction_client-serveur/scripts/bottle_post_form.py @@ -1,6 +1,6 @@ -@post('/formulaire') +@post('/bonjour') def bonjour() : nom = bottle.request.forms.get('nom') body = "

Bonjour mon(a) che(è)r(e) " + nom + "

" - return template("modele_base.py", body=body) + return body diff --git a/1NSI/05_Interaction_client-serveur/scripts/bottle_query.py b/1NSI/05_Interaction_client-serveur/scripts/bottle_query.py index d25abbd..5160a74 100644 --- a/1NSI/05_Interaction_client-serveur/scripts/bottle_query.py +++ b/1NSI/05_Interaction_client-serveur/scripts/bottle_query.py @@ -1,4 +1,4 @@ -from botte import request, get +from bottle import request, get @get('/age') def age_de(): @@ -6,9 +6,9 @@ def age_de(): name = request.query.name age = request.query.age - if age > 1: + if int(age) > 1: return name + " a " + age + " ans." - elif age <= 0: + elif int(age) <= 0: return "Mouai..." else: return name + " a " + age + " an."