python surna pomoc

Sekcia: Programovanie 15.09.2007 | 20:17
Avatar Dare_devil Debian, OpenSuse  Používateľ
Dobry den. Potrebujem sa opytat par veci, ktore mi brania v tom aby som pokracoval v programovani programu...
Neviem docielit to, aby mi hodnotu premennej ulozilo do DB..
skusal som to takto:
cursor.execute('INSERT INTO tabulka VALUES(%s , %s , %s , %s)') % (meno, priezvisko, pocet_pocitacov, nazov)
ale neslo to, skusal som tam vlozit aj priamo premenne, ale to zapisalo do DB premenne ako text, a nie obsah premennych..
A taktiez by sa mi zislo vediet, ako spojit dve premenne v jednu napriklad ze:
x=1
while x<=3:
  premenna x = 'x+10'
  print premenna x 
  x=x+1
Dalej by ma zaujimalo, ako docielit, aby som zapisal do DB urcity unixovy cas, a od toho momentu by mi pocitalo kazdu sekundu... ale nie v tvare unixovycas+1 ale 1,2,3,4... a pripocitavalo by sa to az kym by som to nestopol.. to v PyQt4 , viem mam vela otazok, ale nikde to neviem najst, je toho malo celkovo na internete, malo prikladov a trapim sa s tym uz aspon tyzden. Nechcel som vas otravovat ale keby som to vedel najst sam tak sa nepytam..
Nebol by tu niekto kto by mi vo volnom case s tymto projektom rad pomahal?
Chcel by som to za dva mesiace dorobit, mam vela otazok, malo skusenosti a malo ludi ktori by ma usmernili :(.
Dakujem
There is no flag large enough to cover the shame of killing innocent people
    • Re: python surna pomoc 15.09.2007 | 20:55
      Avatar Miroslav Bendík Gentoo  Administrátor
      cursor.execute("INSERT INTO tabulka (`id`, `name`, ...) VALUES (%s, %s ...)" % (id, dbescape(meno) ...
      • Re: python surna pomoc 16.09.2007 | 16:37
        Avatar Dare_devil Debian, OpenSuse  Používateľ
        NameError: global name 'dbescape' is not defined
        co s tym?
        There is no flag large enough to cover the shame of killing innocent people
        • Re: python surna pomoc 16.09.2007 | 19:02
          Avatar Miroslav Bendík Gentoo  Administrátor
          dbescape si musíš napísať sám, je to funkcia na to aby ti dala strind do apostrofov a aby oescapovala vstup. Pre mysql to viem napísať, sqlite netuším.
          • Re: python surna pomoc 16.09.2007 | 19:59
            dare_devil - neprihlaseny   Návštevník
            Ja som v pythone este len zaciatocnik, sakra ://///
            • Re: python surna pomoc 16.09.2007 | 20:47
              Avatar Miroslav Bendík Gentoo  Administrátor
              Toto nie vecou pythonu. Neviem či si robil niekedy s mysql v php, tam je taká funkcie mysql_realy_escape_string ktorá pridá k ",',\ .. escapovací znak \. Ak to tam nie je je to potenciálna bezpečnostná chyba. Dokonca myslím, že sql nezožerie string keď nie je v ""
              • Re: python surna pomoc 17.09.2007 | 17:37
                Avatar Dare_devil Debian, OpenSuse  Používateľ
                s mysql a php pracujem, ale o tej funkcii nemam ani sajn.. Nemozes hodit nejaky priklad? :/
                There is no flag large enough to cover the shame of killing innocent people
                • Re: python surna pomoc 17.09.2007 | 18:45
                  Avatar Miroslav Bendík Gentoo  Administrátor
                  mysql_real_escape_string. Je to veľmi dôležitý bezpečnostný prvok pri práci s databázou. Niečo podobné treba napísať, alebo nájsť aj v pythonovi.
                  • Re: python surna pomoc 17.09.2007 | 18:58
                    Avatar Dare_devil Debian, OpenSuse  Používateľ
                    >:oooo uz ma to sere :( inac by to neslo? :( Pretoze potom sa asi na sqlite vykadim.. zabera mi to vela casu ktory uz teraz nemam :(
                    There is no flag large enough to cover the shame of killing innocent people
                    • Re: python surna pomoc 17.09.2007 | 19:13
                      Avatar Dare_devil Debian, OpenSuse  Používateľ
                      Preto hladam partaka python, bash, pyqt4, nieje tu nejaky? prosim ludia vo volnom case pomoct nemozete? ://
                      There is no flag large enough to cover the shame of killing innocent people
                    • Re: python surna pomoc 17.09.2007 | 19:40
                      Avatar Miroslav Bendík Gentoo  Administrátor
                      cursor.execute("INSERT INTO tabulka (`id`, `name`, ...) VALUES (%s, '%s' ...)" % (id, meno ...
                      Ale ak niekto v mene použije špeciálne znaky napr ', \ ... tak to nebude fungovať! Môžeš to fixnúť ako chceš, napr zablokovať tieto znaky, ponechať iba ascii.
                      • Re: python surna pomoc 17.09.2007 | 19:43
                        Avatar Dare_devil Debian, OpenSuse  Používateľ
                        Tak to urcite nepouzije... necham to potom ako open source takze sa to bude moct dalej rozvijat. Idem s tym na sutaz a tam urcite do mena nebudem davat ze Viktor ' OR 1=1 ... :))))
                        Dakujem idem to skusit
                        There is no flag large enough to cover the shame of killing innocent people
    • Re: python surna pomoc 16.09.2007 | 00:33
      Avatar lipo Arch Linux  Používateľ
      Ja sa sice do Pythonu az tak nerozumiem, ale co ti nefunguje s tymi dvoma premennymi? Akoze taketo nieco napises do kodu a ti to vyhodi chybu? Mne sa to zda celkom v pohode..
    • Re: python surna pomoc 16.09.2007 | 01:23
      Avatar lipo Arch Linux  Používateľ
      Teda okrem toho, ze premenne by sa pravdepodobne mali pisat bez medzier...
      • Re: python surna pomoc 16.09.2007 | 16:13
        Avatar Dare_devil Debian, OpenSuse  Používateľ
        nevznikne mi potom z toho premennax miesto premenna1 premenna2 a premenna3 ?
        There is no flag large enough to cover the shame of killing innocent people
        • Re: python surna pomoc 17.09.2007 | 17:44
          Avatar borg Fedora  Administrátor
          dynamicke pomenovavanie premennych? to prvykrat pocujem. tak si to davaj do pola a hotovo
          • Re: python surna pomoc 17.09.2007 | 21:11
            Avatar uid0 Debian  Používateľ
            pokial zalezi na tom pomenovani, tak je vhodnejsi hash (v terminologii pythonu dictionary)
            Debian. apt-get into it…