<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="et">
	<id>http://www.lambda.ee/w/index.php?action=history&amp;feed=atom&amp;title=Servewithflask.py</id>
	<title>Servewithflask.py - Redigeerimiste ajalugu</title>
	<link rel="self" type="application/atom+xml" href="http://www.lambda.ee/w/index.php?action=history&amp;feed=atom&amp;title=Servewithflask.py"/>
	<link rel="alternate" type="text/html" href="http://www.lambda.ee/w/index.php?title=Servewithflask.py&amp;action=history"/>
	<updated>2026-11-07T01:31:54Z</updated>
	<subtitle>Selle lehekülje redigeerimiste ajalugu</subtitle>
	<generator>MediaWiki 1.43.11</generator>
	<entry>
		<id>http://www.lambda.ee/w/index.php?title=Servewithflask.py&amp;diff=16709&amp;oldid=prev</id>
		<title>Tammet: Uus lehekülg: &#039;&lt;pre&gt;  # Kaimapanekuks kaivita hoopis runserver programm kasurealt # See runserver kaivitab Flaski serveri ja ytleb, et kasutagu siinset programmi  # Brauserist katsetamiseks ava...&#039;</title>
		<link rel="alternate" type="text/html" href="http://www.lambda.ee/w/index.php?title=Servewithflask.py&amp;diff=16709&amp;oldid=prev"/>
		<updated>2020-02-13T13:36:28Z</updated>

		<summary type="html">&lt;p&gt;Uus lehekülg: &amp;#039;&amp;lt;pre&amp;gt;  # Kaimapanekuks kaivita hoopis runserver programm kasurealt # See runserver kaivitab Flaski serveri ja ytleb, et kasutagu siinset programmi  # Brauserist katsetamiseks ava...&amp;#039;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Uus lehekülg&lt;/b&gt;&lt;/p&gt;&lt;div&gt;&amp;lt;pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
# Kaimapanekuks kaivita hoopis runserver programm kasurealt&lt;br /&gt;
# See runserver kaivitab Flaski serveri ja ytleb, et kasutagu siinset programmi&lt;br /&gt;
&lt;br /&gt;
# Brauserist katsetamiseks ava &lt;br /&gt;
# http://localhost:5000/getdata&lt;br /&gt;
&lt;br /&gt;
# kasutame neid teeke: Flask tuleb eelnevalt installeerida,&lt;br /&gt;
# teised on pythonisse sisse ehitatud standardteegi osad&lt;br /&gt;
&lt;br /&gt;
from flask import Flask, request&lt;br /&gt;
import sqlite3&lt;br /&gt;
import json &lt;br /&gt;
&lt;br /&gt;
# nii tuleb Flaskile oelda&lt;br /&gt;
app = Flask(__name__)&lt;br /&gt;
&lt;br /&gt;
# see jargmine rida ytleb, mis urli ja mis http meetodi&lt;br /&gt;
# jaoks jargmine programm kaivitub&lt;br /&gt;
&lt;br /&gt;
@app.route(&amp;#039;/getdata&amp;#039;, methods=[&amp;#039;POST&amp;#039;, &amp;#039;GET&amp;#039;])&lt;br /&gt;
&lt;br /&gt;
# sinu programm, mis pannakse paringu peale kaima&lt;br /&gt;
&lt;br /&gt;
def getdata():&lt;br /&gt;
   	&lt;br /&gt;
  # vaata, kas urlil anti key, op ja val parameetrid&lt;br /&gt;
  key=request.args.get(&amp;quot;key&amp;quot;,&amp;#039;&amp;#039;)&lt;br /&gt;
  op=request.args.get(&amp;quot;op&amp;quot;,&amp;#039;&amp;#039;)&lt;br /&gt;
  val=request.args.get(&amp;quot;val&amp;quot;,&amp;#039;&amp;#039;) &lt;br /&gt;
  &lt;br /&gt;
  # vota baasiga yhendust, valmista ette paring&lt;br /&gt;
  conn = sqlite3.connect(&amp;#039;data.db&amp;#039;)&lt;br /&gt;
  cur = conn.cursor()&lt;br /&gt;
  &lt;br /&gt;
  # hakka kokku panema paringu-sqli, alustades standardosast&lt;br /&gt;
  sql=&amp;quot;&amp;quot;&amp;quot;select id,c1,c2,c3,c4,c5,c6,c7,c8,c9,c10 from maintable &amp;quot;&amp;quot;&amp;quot;&lt;br /&gt;
  &lt;br /&gt;
  # kui olid olemas key, op ja val, siis ehita where tingimus&lt;br /&gt;
  if key and val:&lt;br /&gt;
    if not op: # vaikimisi olgu op =&lt;br /&gt;
      op = &amp;quot;=&amp;quot;&lt;br /&gt;
    # kontrollime, kas parameetrid ok  &lt;br /&gt;
    if (not (key in [&amp;quot;id&amp;quot;,&amp;quot;c1&amp;quot;,&amp;quot;c2&amp;quot;,&amp;quot;c3&amp;quot;,&amp;quot;c4&amp;quot;,&amp;quot;c5&amp;quot;,&amp;quot;c6&amp;quot;,&amp;quot;c7&amp;quot;,&amp;quot;c8&amp;quot;,&amp;quot;c9&amp;quot;,&amp;quot;c10&amp;quot;]) &lt;br /&gt;
        or&lt;br /&gt;
        not (op in [&amp;quot;=&amp;quot;,&amp;quot;&amp;lt;&amp;quot;,&amp;quot;&amp;gt;&amp;quot;,&amp;quot;!=&amp;quot;])):&lt;br /&gt;
      # valed parameetrid, sulge yhendus&lt;br /&gt;
      cur.close()&lt;br /&gt;
      conn.close()&lt;br /&gt;
      # anna veateade ja lopeta&lt;br /&gt;
      return(&amp;#039;&amp;quot;error&amp;quot;&amp;#039;)&lt;br /&gt;
    # siin koik ok&lt;br /&gt;
    where = &amp;quot; where &amp;quot; + key + op + &amp;quot;?&amp;quot;&lt;br /&gt;
    args = [val]&lt;br /&gt;
  else:&lt;br /&gt;
    where=&amp;quot;&amp;quot;&lt;br /&gt;
    args=None&lt;br /&gt;
    &lt;br /&gt;
  # liida where tingimus sql standardosale&lt;br /&gt;
  sql = sql + where&lt;br /&gt;
  &lt;br /&gt;
  # liida sql lausele sorteering&lt;br /&gt;
  sql = sql + &amp;quot; order by id asc&amp;quot;&lt;br /&gt;
  &lt;br /&gt;
  # tryki debugimiseks sql lause ja args valja&lt;br /&gt;
  print(sql,args)&lt;br /&gt;
  &lt;br /&gt;
  # tee paring baasi&lt;br /&gt;
  if args:&lt;br /&gt;
    cur.execute(sql,args)&lt;br /&gt;
  else:&lt;br /&gt;
    cur.execute(sql)&lt;br /&gt;
    &lt;br /&gt;
  # loe koik read sisse, mis paringuga klapivad&lt;br /&gt;
  res=cur.fetchall()&lt;br /&gt;
  # sulge yhendus&lt;br /&gt;
  cur.close()&lt;br /&gt;
  conn.close()&lt;br /&gt;
  &lt;br /&gt;
  # teisenda saadud tulemus json formaati ja anna vastuseks&lt;br /&gt;
  return json.dumps(res)&lt;br /&gt;
&lt;br /&gt;
# see paneb tegelikult sinu serverirakenduse kaima,&lt;br /&gt;
# pordil 5000 ja igaltpoolt kattesaadav &lt;br /&gt;
&lt;br /&gt;
app.run(debug=True, port=5000, host=&amp;#039;0.0.0.0&amp;#039;)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;/div&gt;</summary>
		<author><name>Tammet</name></author>
	</entry>
</feed>