{"id":2287,"date":"2016-01-08T10:29:23","date_gmt":"2016-01-08T14:29:23","guid":{"rendered":"http:\/\/linguagemprisma.br4.biz\/blog\/?p=2287"},"modified":"2016-01-08T10:35:34","modified_gmt":"2016-01-08T14:35:34","slug":"testes-com-prisma-cgi-em-servidor-com-sucesso","status":"publish","type":"post","link":"https:\/\/linguagemprisma.br4.biz\/blog\/web\/testes-com-prisma-cgi-em-servidor-com-sucesso\/","title":{"rendered":"Testes com prisma cgi em servidor com sucesso!"},"content":{"rendered":"<p>Fiquei muito mais otimista com prisma, isto \u00e9 uma evolu\u00e7\u00e3o da linguagem&#8230;<\/p>\n<p>Sem muita pretens\u00e3o, fui ver como seria rodar um script prisma em modo cgi no servidor instalado em minha m\u00e1quina local. Para minha surpresa funcionou perfeitamente.<\/p>\n<p>N\u00e3o \u00e9 poss\u00edvel instalar prisma num servidor compartilhado mas acho que num dedicado ou vpn daria certo, enquanto isso, fica aberta a possibilidade de criarmos programas em rede local usando prisma + html + javascript+css. Muito \u00fatil em com\u00e9rcios que precisam ter acesso por diversos tipos de aparelhos inclusive celular.<\/p>\n<p>Bom, eu uso Xampp para Linux\u00a05.5.30 instalado em Ubuntu 14.04 em \/opt\/lampp\/, \u00e9 muito simples basta baixar Xampp <a href=\"https:\/\/www.apachefriends.org\/pt_br\/download.html\" target=\"_blank\">aqui<\/a> e executar em modo administrador. (Obs. vou fazer outro post ensinando instalar Xampp em Linux e Windows);<\/p>\n<p>Testes com m\u00e9todo POST:<\/p>\n<p>Salve como form.html na pasta htdocs do Lampp (precisa de privil\u00e9gio sudo);<\/p>\n<pre class=\"lang:xhtml decode:true\">&lt;FORM ACTION=\"http:\/\/localhost\/post.pri.cgi\"\r\n METHOD=\"POST\"&gt;\r\n&lt;DIV&gt;Digite algo aqui (80 chars no m\u00e1x.):&lt;BR&gt;\r\n&lt;INPUT NAME=\"dado\" SIZE=\"60\" MAXLENGTH=\"80\"&gt;&lt;BR&gt;\r\n&lt;INPUT TYPE=\"SUBMIT\" VALUE=\"Send\"&gt;&lt;\/DIV&gt;\r\n&lt;\/FORM&gt;\r\n<\/pre>\n<p>Agora vem o prisma cgi, salve como post.pri.cgi \u00a0em htdocs:<\/p>\n<p>(necess\u00e1rio dar permiss\u00e3o de execu\u00e7\u00e3o em Linux, basta digitar no terminal, senha de usu\u00e1rio e ENTER:<\/p>\n<pre class=\"lang:prisma highlight:0 decode:true\">sudo chmod 755 \/opt\/lampp\/htdocs\/post.pri.cgi \u00a0)<\/pre>\n<p>&nbsp;<\/p>\n<pre class=\"lang:prisma decode:true  \">#!\/usr\/local\/bin\/prisma\r\n\r\nimprima \"Content-type:text\/html\\r\\n\\r\\n\";\r\nimprima '&lt;html&gt;';\r\nimprima '&lt;head&gt;';\r\nimprima '&lt;title&gt;Prisma cgi&lt;\/title&gt;';\r\nimprima '&lt;\/head&gt;';\r\n\r\nimprima '&lt;body&gt;';\r\n\r\ndado = leia(); \r\n\/\/o formulario metodo post em html ser\u00e1 respons\u00e1vel direcionar o que o usu\u00e1rio digitar para c\u00e1.\r\n\r\ndado = dado ou \"OLA MUNDO\";\r\n\r\nget = sis.obtvarambiente(\"QUERY_STRING\");\/\/caso voce passe no url um ?+string.\r\n\/\/essa \u00e9 capturada e posta em get.\r\nimprima(get);\r\nimprima '&lt;h2&gt;Teste prisma cgi&lt;\/h2&gt;';\r\nimprima('&lt;p&gt;' .. dado .. '&lt;\/p&gt;');\r\nimprima '&lt;\/body&gt;';\r\nimprima '&lt;\/html&gt;';\r\n\r\n<\/pre>\n<p>O resultado ser\u00e1 isso aqui:<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-medium wp-image-2289\" src=\"https:\/\/linguagemprisma.br4.biz\/blog\/wp-content\/uploads\/2016\/01\/prisma_cgi1-300x117.png\" alt=\"prisma_cgi1\" width=\"300\" height=\"117\" srcset=\"https:\/\/linguagemprisma.br4.biz\/blog\/wp-content\/uploads\/2016\/01\/prisma_cgi1-300x117.png 300w, https:\/\/linguagemprisma.br4.biz\/blog\/wp-content\/uploads\/2016\/01\/prisma_cgi1.png 530w\" sizes=\"auto, (max-width: 300px) 100vw, 300px\" \/><\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-medium wp-image-2288\" src=\"https:\/\/linguagemprisma.br4.biz\/blog\/wp-content\/uploads\/2016\/01\/prismacgi2-300x146.png\" alt=\"prismacgi2\" width=\"300\" height=\"146\" srcset=\"https:\/\/linguagemprisma.br4.biz\/blog\/wp-content\/uploads\/2016\/01\/prismacgi2-300x146.png 300w, https:\/\/linguagemprisma.br4.biz\/blog\/wp-content\/uploads\/2016\/01\/prismacgi2.png 404w\" sizes=\"auto, (max-width: 300px) 100vw, 300px\" \/><\/p>\n<p>Note que onde havia espa\u00e7os h\u00e1 um + e onde havia o sinal ! h\u00e1 um %21, o servidor faz essas codifica\u00e7\u00f5es automaticamente, mas n\u00e3o \u00e9 dif\u00edcil criar uma fun\u00e7\u00e3o para reverter isso do lado do cgi prisma.<\/p>\n<hr \/>\n<p>&nbsp;<\/p>\n<p>O m\u00e9todo GET n\u00e3o tem segredo, \u00e9 aquele em que as vari\u00e1veis s\u00e3o passadas pela url ap\u00f3s o sinal de ?<\/p>\n<p>ex.: \u00a0www.site.com\/teste.cgi?n=120;z=14 \u00a0 etc.<\/p>\n<p>para pegar essas vari\u00e1veis no cgi prisma use: \u00a0 \u00a0local str =\u00a0 sis.obtvarambiente(&#8220;QUERY_STRING&#8221;);<\/p>\n<p>e a vari\u00e1vel str para a levar a string inteira da url ap\u00f3s o ponto de interroga\u00e7\u00e3o.<\/p>\n<p>Obs. lembre-se de que espa\u00e7os s\u00e3o substitu\u00eddos por + e caracteres como sinais, aspas etc. s\u00e3o trocados por % seguido do n\u00famero unicode.<\/p>\n<p>Pretendo fazer uma lib especial s\u00f3 para web, com inclusive uma fun\u00e7\u00e3o para decodificar a string enviada.<\/p>\n<p>Por enquanto \u00e9 isso, obrigado por acompanhar nosso site, at\u00e9 mais!<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Fiquei muito mais otimista com prisma, isto \u00e9 uma evolu\u00e7\u00e3o da linguagem&#8230; Sem muita pretens\u00e3o, fui ver como seria rodar um script prisma em modo cgi no servidor instalado em minha m\u00e1quina local. Para minha surpresa funcionou perfeitamente. N\u00e3o \u00e9 poss\u00edvel instalar prisma num servidor compartilhado mas acho que num dedicado ou vpn daria certo,&#8230;<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[20],"tags":[],"class_list":["post-2287","post","type-post","status-publish","format-standard","hentry","category-web"],"_links":{"self":[{"href":"https:\/\/linguagemprisma.br4.biz\/blog\/wp-json\/wp\/v2\/posts\/2287","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/linguagemprisma.br4.biz\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/linguagemprisma.br4.biz\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/linguagemprisma.br4.biz\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/linguagemprisma.br4.biz\/blog\/wp-json\/wp\/v2\/comments?post=2287"}],"version-history":[{"count":6,"href":"https:\/\/linguagemprisma.br4.biz\/blog\/wp-json\/wp\/v2\/posts\/2287\/revisions"}],"predecessor-version":[{"id":2291,"href":"https:\/\/linguagemprisma.br4.biz\/blog\/wp-json\/wp\/v2\/posts\/2287\/revisions\/2291"}],"wp:attachment":[{"href":"https:\/\/linguagemprisma.br4.biz\/blog\/wp-json\/wp\/v2\/media?parent=2287"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/linguagemprisma.br4.biz\/blog\/wp-json\/wp\/v2\/categories?post=2287"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/linguagemprisma.br4.biz\/blog\/wp-json\/wp\/v2\/tags?post=2287"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}