praegune kellaaeg 24.04.2024 15:48:58
|
Hinnavaatlus
:: Foorum
:: Uudised
:: Ärifoorumid
:: HV F1 ennustusvõistlus
:: Pangalink
:: Telekavad
:: HV toote otsing
|
|
autor |
sõnum |
|
Cracker
Kreisi kasutaja
liitunud: 21.08.2007
|
12.07.2019 22:48:16
Andmebaas |
|
|
Tere!
Oleks soov ehitada nö andmebaas (web-app?). Eelnev programeerimiskogemus puudub, aga huvi on asja vastu ning tahaksin ise pusida ja õppida.
Eelneva andmebaasi ehitasin Microsoft Accessis ning põhimõtteliselt täitis kõik vajadused aga kuna soov oleks seda kasutada mitmes arvutis, muutus sellega asi keerulisemaks. Mõtlesin, et olen kaval ja kasutan dropboxi, aga seal hakkas koopiaid tegema kui oli mitmes arvutis lahti jne.
MS Accessis sai ilma otsese programmeerimiseta suht hästi hakkama, VBA-s natuke sai ikka tehtud.
Andmebaasi kasutaks enamasti üks inimene, vahel ka 2 või 3.
Põhimõtteliselt tegu väikese perefirma ettevõtte majandamise programmiga (tegeleme põllumajandusega). eAgronomi vms ei ole vaja soovitada, sooviksin just ise teha õppimise eesmärgil ning lisaks sellele saaks asja kohandada enda vajaduste/soovide järgi.
Oleks vaja siis kasutajasüsteem, vormid, mille kaudu andmeid lisada/uuendada. statistika tegemine jms.
Olen natukene uurinud ja sooviksin rohkem juhatust, milline tee oleks algajale lihtsaim. Kas php + html + mysql saaks asja aetud või kas XAMP + mõni CMS, mida siis kohandada võiks lahendus olla?
Hetkel pole hooajatööde tõttu kaugemale jõudnud kui olen ainult teemat guugeldanud ja natuke uurinud. Olen lugenud, et neid CMS saab päris palju kohandada, kas peaks äkki neist alustama ja vaatama kas sobivad minu vajadusele? Hetkel on ainult nö kiirülevaade neist tehtud.
Ehk oskab keegi siit anda suunavaid vihjeid või abi, kuidas/millest alustada?
|
|
Kommentaarid: 10 loe/lisa |
Kasutajad arvavad: |
|
:: |
0 :: |
0 :: |
9 |
|
tagasi üles |
|
|
napoleon
Unknown virus
liitunud: 08.12.2008
|
13.07.2019 23:22:26
|
|
|
PHP+html+MySQL abil saad teha praktiliselt kõike. Kui eelnev kogemus puudub, siis nõuab natuke õppimist ja katsetamist. Kui huvi ja soov on, siis anna tuld, aga sealt accessist saad üle kanda ainult andmed, kogu UI ja muu loogika pead nullist tegema.
Kui huvi pole ja lihtsamalt hakkama tahad saada, siis saad selle accessi ka tööle mitme kasutajaga. Aga selleks ei sobi dropbox. Märksõna on VPN ehk pead tekitama olukorra, kus see accessi fail paistaks nagu oleks lokaalvõrgus.
|
|
Kommentaarid: 76 loe/lisa |
Kasutajad arvavad: |
|
:: |
0 :: |
0 :: |
59 |
|
tagasi üles |
|
|
Ohohh
Kreisi kasutaja
liitunud: 13.09.2003
|
14.07.2019 10:59:12
|
|
|
Kui sa täiesti algajana hakkad PHP + MySQL'i tegema, siis tasub endale kohe selgeks teha, mis asi on "SQL injection" bugi, et oskaks seda algusest peale vältida.
See on peaaegu 100% garanteeritud, et kui hakkad ilma igasuguse kogemuseta nullist nikerdama, siis teed, sisselogimise päringu midagi taolist
var query = "SELECT * FROM USER WHERE USER_NAME = '" + $username + "' AND PASSWORD = '" + $password + "';
Kus $username ja $password on kasutajapoolne sisend logimise vormilt.
Probleem on aga selles, et kui ma nüüd kasutajanimeks sisestan
minukasutaja'; --
siis lõplik SQL pannakse kokku selline:
SELECT * FROM USER WHERE USER_NAME='minukasutaja'; --' AND PASSWORD = ''
Kuna parooli kontroll on nüüd kommentaariks moondunud, siis seda ei kontrollita üldse.
Ehk siis tuleks kasutada prepared statmente:
https://www.w3schools.com/php/php_mysql_prepared_statements.asp
Päring peaks olema kirjutatud sellisena
var query = "SELECT * FROM USER WHERE USER_NAME = ? AND PASSWORD = ?";
ning vormilt saadud kasutajanime ning parooli annad päringu väljakutsumisel parameetritena kaasa.
|
|
Kommentaarid: 6 loe/lisa |
Kasutajad arvavad: |
|
:: |
0 :: |
0 :: |
6 |
|
tagasi üles |
|
|
Bilderberg
HV kasutaja
liitunud: 26.08.2009
|
|
Kommentaarid: 11 loe/lisa |
Kasutajad arvavad: |
|
:: |
0 :: |
0 :: |
10 |
|
tagasi üles |
|
|
Cracker
Kreisi kasutaja
liitunud: 21.08.2007
|
14.07.2019 19:50:53
|
|
|
Ohohh kirjutas: |
Kui sa täiesti algajana hakkad PHP + MySQL'i tegema, siis tasub endale kohe selgeks teha, mis asi on "SQL injection" bugi, et oskaks seda algusest peale vältida.
See on peaaegu 100% garanteeritud, et kui hakkad ilma igasuguse kogemuseta nullist nikerdama, siis teed, sisselogimise päringu midagi taolist
var query = "SELECT * FROM USER WHERE USER_NAME = '" + $username + "' AND PASSWORD = '" + $password + "';
Kus $username ja $password on kasutajapoolne sisend logimise vormilt.
Probleem on aga selles, et kui ma nüüd kasutajanimeks sisestan
minukasutaja'; --
siis lõplik SQL pannakse kokku selline:
SELECT * FROM USER WHERE USER_NAME='minukasutaja'; --' AND PASSWORD = ''
Kuna parooli kontroll on nüüd kommentaariks moondunud, siis seda ei kontrollita üldse.
Ehk siis tuleks kasutada prepared statmente:
https://www.w3schools.com/php/php_mysql_prepared_statements.asp
Päring peaks olema kirjutatud sellisena
var query = "SELECT * FROM USER WHERE USER_NAME = ? AND PASSWORD = ?";
ning vormilt saadud kasutajanime ning parooli annad päringu väljakutsumisel parameetritena kaasa. |
Tänud näpunäite eest! Salvestan endale ära!
Ma arvan, et ei hakka seda accessi proovima tööle saada, proovin ikka ise midagi kokku panna.
Olen veel googeldanud ja tundub, et CMSiga vist põhimõtteliselt oleks võimalik ka midagi leiutada, aga tundub, et lihtsam on ikkagi ise teha nullist.
Samuti olen aru saanud, et selle asja nimi, mida mul vaja on, nimetatakse CRUD-iks.
Ise kodeerimise kohta kirjutatakse palju frameworkist. Saan aru, et see teeb programmeerija elu natuke lihtsamaks.
Valik oli päris suur. Hetkel jäi sõelale CakePHP.
Kas selles osas on soovitusi?
Adminerir osas ei oskagi hetkel midagi kosta, vaatasin üle ja kodulehel oli toodud päris suur nimekiri eelistest phpMyAdmin ees. Peab natuke süvenema veel sellesse.
|
|
Kommentaarid: 10 loe/lisa |
Kasutajad arvavad: |
|
:: |
0 :: |
0 :: |
9 |
|
tagasi üles |
|
|
napoleon
Unknown virus
liitunud: 08.12.2008
|
14.07.2019 19:59:17
|
|
|
CRUD on väga üldine asi. HeidiSQL või phpMyAdmin vastab ju ka kriteeriumitele, kuigi pole tõenäoliselt üldse see, mida soovid.
Framework osas olen mina alati väga nii ja naa meelestatud. Alati peab vaatama, kui suure osa vajadusest framework ise katab. Tihti läheb nendega nii, et ehitatakse sea selga sadul kui ülesanne on lihtne ehk lisaks koodi kirjutamisele pead kaklema ka framework-ga. Samas kui framework suurema osa vajadusest katab ja sinna on vaja vaid veidi funktsionaalsust juurde pookida, siis on framework mõistlik.
Aga väga detailselt ei oska siin nõu anda. PHP+MySQL vahel harva kasutan, aga see pole see, mis leiva lauale toob.
|
|
Kommentaarid: 76 loe/lisa |
Kasutajad arvavad: |
|
:: |
0 :: |
0 :: |
59 |
|
tagasi üles |
|
|
Cracker
Kreisi kasutaja
liitunud: 21.08.2007
|
15.07.2019 18:04:49
|
|
|
Selge, eks saan veel uurimustööd teha.
Kõrvalpõige : kui nüüd nö andmebaas/web app,või kuidas seda nimetada, tellida - kas programmeerijate hind on tunnipõhine või projektipõhine? Vastavalt kokkuleppele?
|
|
Kommentaarid: 10 loe/lisa |
Kasutajad arvavad: |
|
:: |
0 :: |
0 :: |
9 |
|
tagasi üles |
|
|
napoleon
Unknown virus
liitunud: 08.12.2008
|
15.07.2019 18:15:42
|
|
|
Cracker, progejaga saad nii ja teistpidi kokku leppida. Projektipõhise hinna saad küsida siis, kui suudad ülesande püstituse piisavalt täpselt kirjeldada ja pead arvestama, et kui tellid kandiliste ratastega auto, siis selle ka saad ja pole progeja mure, et sa sellega sõita ei saa[1]. Tunnitasu alusel võid iga hetk meelt muuta ja ülesande püstitust muuta, aga siis ei tea sa enne projekti lõppu kui palju see sulle maksma võib minna.
[1]kogenud progeja üldiselt oskab muidugi täpsustavaid küsimusi esitada kui näeb, et asi jama paistab, aga mingi väga spetsiifilise asjaga mitte alati. Rookie teeb täpselt nii nagu ütled.
|
|
Kommentaarid: 76 loe/lisa |
Kasutajad arvavad: |
|
:: |
0 :: |
0 :: |
59 |
|
tagasi üles |
|
|
|
lisa lemmikuks |
|
|
sa ei või postitada uusi teemasid siia foorumisse sa ei või vastata selle foorumi teemadele sa ei või muuta oma postitusi selles foorumis sa ei või kustutada oma postitusi selles foorumis sa ei või vastata küsitlustele selles foorumis sa ei saa lisada manuseid selles foorumis sa võid manuseid alla laadida selles foorumis
|
|
Hinnavaatlus ei vastuta foorumis tehtud postituste eest.
|