Tervetuloa kameralaukkuun!

Pääset mukaan keskusteluihin rekisteröitymällä.
Register Now
  1. Tämä sivusto käyttää evästeitä. Jatkamalla tämän sivustoa käyttöä, hyväksyt evästeidemme käytön. Lue lisää.

Tietokanta kotisivulle

Keskustelu osiossa 'Yleistä keskustelua' , aloittajana stepe, 4 Elokuu 2005.

  1. stepe

    stepe Member

    88
    1
    8
    Minä mistään mitään ymmärrä, mutta kuitenkin.

    Ajattelin tällätä sivuilleni tietokannan, mutta mitä siihen tarvitaan? Mitä pitää tehdä? Saako sitä tämmöinen ummikko edes aikaiseksi.
    Minulle MySQL ja PhP:t on hepreaa ja hepreaa en osaa.

    100 megaa on tietokannalle tilaa kuulemma.
     
  2. mitä teet tietokannalla jos et osaa käyttää sitä? nettisivuissa kun ei tietokannalla tee juuri mitään ellet osaa juuri PHP:ta (tai ASP:ia) ja SQL:än perusteita.

    jos sinulle sanotaan että 100mb on tietokannalle tilaa, ei sinun ilmeisesti tehdä mitään muuta kuin korkeintaan pyytää että käyttäjänimesi aktivoidaan
     
  3. Niin, tietokannalla et vielä tee mitään, vaan tarvitset myös sen sovelluksen, joka sitä tietokantaa käyttää. Esim. tämä foorumi on sellainen sovellus. Tälle kelpaa muistaakseni tietokannaksi niin MySQL kuin PostgreSQL, jotka molemmat tulevat kunnon Linuxdistroissa mukana. Jos et ole itse kyseisen palvelimen adminsistraattori, tulee tietokantamoottori palveluntarjoajan puolesta, mahd. lisähintaan, ja sinä saat vaan käyttäjätunnuksen ja salasanan, jolla sitä käyttää.

    Tietokantasovelluksen tekeminen itse on jo varsin vaikeaa ohjelmointia. Raaka SQL (siis tietokantamoottorin kanssa keskustelu) on kamalaa, ainakin tämmöistä viimeksi C:n kultakaudella ohjelmoinnista jotain ymmärtänyttä oksettaa :) Valmiin sovelluksen asentaminen sen sijaan on joskus suorastaan liikuttavan helppoa.
     
  4. Pöh.. SQL on 4th generation programming language, ts.

    "Often abbreviated 4GL, fourth-generation languages are programming languages closer to human languages than typical high-level programming languages. Most 4GLs are used to access databases."

    Kun taas ed. main. C on 3rd generation.. eli lähempänä konekieltä. SQL:stä esimerkki:
    Koodi:
    SELECT count(pää) from kameralaukku_users;
    tuo pullauttaisi tulokseksi kuinka monta päätä löytyy kameralaukun käyttäjistä. Esimerkki fiktionaalinen.
     
  5. stepe

    stepe Member

    88
    1
    8
    Lainaan itseäni.

    Tyhmät kysyvät ja viisaat vastaavat. Enhän minä kysyisi, jos tietäisin.

    Tunnus on aktivoitu ja joku PhpMyAdmin juttu löytyi, mutta siihen se jäi, kun ei tiedä mitä pitää tehdä.

    Ajatuksena oli laittaa etsi toiminto etusivulle. Liekö mahdoton ajatus?

    Täytyy kuukkeloida ja käydä kirjastossa.
     
  6. Kysymys on vaan vähän nurinkurinen koska et tee mitään tietokannalla ellet tiedä mihin käyttää sitä. Ei sitä nurmikonleikkuria tarvii ostaa omalle hiekkapihalleen vaikka kaikilla naapureilla onkin nurmimaa. Lähestyt asiaa väärin päin.
     
  7. mitä sieltä kotisivuilta pitäisi etsiä?
     
  8. Nimenomaan, eikä siis selkeässä, käsitettävässä muodossa olevia rakenteita, kuten:

    #include <stdio.h>
    main()
    {
    int paaluku=800;
    printf("Päitä on %i kpl\n", paaluku);
    return 0;
    }

    SQL on melkein yhtä kauheaa kuin Cobol. Kun C:ssä komento on "printf", niin siinä se on jotakin "lähempänä ihmisten kieltä", tyyliin "Herra tietokone, olisitteko niin ystävällinen, että tulostaisitte näytölle tällaisen numeron, kuin että:" Minä lakkasin yrittämästä kun Windows ja objektikielet tulivat, ei niitä vanha tajua. Jotain VBA-juttuja joutuu väsäämään, ja niissäkin sielu parkuu, kun pitää kirjoittaa monikymmenmerkkisiä komentoja, joiden logiikka on täysin vierasta.
     
  9. Saaga

    Saaga

    293
    0
    0
    Onko siis tarkoitus, että etsi toiminnonto kohdistuu omiin sivuihisi? Joillakin webhotelleilla tuommonen haku kuuluu "vakiovarusteena" sivustoon?
     
  10. Noh.. Miten vaan.
    Kuinkas esittäisit esim tilanteen jossa ed. mainitusta käyttäjämäärästä pitäisi valita moderaattorit jotka ovat naisia?
    Koodi:
    SELECT username FROM kameralaukku_users WHERE user_priv="moderaattori" AND sukupuoli="nainen";
    Noin pseudosti jälleen.
    (kohta iskee moderaattori kyl tähän threadiin ja siirtää tän osion keskustelusta taisteluosastoon .. (toivottavasti) )

    PS. SQL on muuten 70-luvun alun juttuja. SQL (Structured Query Language) -nimityskin tulee alunperin lyhenteesta SEQUEL (Structured English Query Language). SQL on siis mallinnettu olemaan helposti omaksuttava kieli jonka "kielioppi" on hyvin lähellä ihmisten käyttämää kieltä, tässä tapauksessa englantia.

    Oliokieli -argumentin ymmärrän, se vaatii muutaman vuoden harjoittelun jotta siitä ymmärtää miten sitä pitää väärinkäyttää..
     
  11. Niin eikä nuo hakulauseet vielä, ne ovatkin ihan selkeitä, mutta vaikkapa tietokantojen perustamiset ja käyttäjien määrittelyt, ne ne vasta kauheita ovat.
     
  12. Se riippuu aivan kannasta.. esim. noi pienet mysql, postgres on aika mukavia käyttää tuoltakin kannalta. Noihin isompiin, esim oracle, sybase (no, mainitaan se SAP, vaikka tuotteena se on muutakin kuin relaatiotietokanta.. toivottavasti siihen ei tarvi ikinä enää koskea) onkin sit jotkut gui-härpäkkeet ja erikseen ingengöörit jotka tekee pelkästään sitä.

    Tietokantojen määrittely on aika yksinkertaista. Luodaan tietokanta nimeltä xyz (MySQL: "create database xyz"). Kantaan xyz voidaan sitten luoda tauluja. Taulujen luonti on yksinkertaista, määritellään vain millaista dataa halutaan tallettaa. Aivan sama kuin esim. jos c:ssä haluat määritellä onko muuttuja int vai char, joskin SQL tarjoaa mahdollisuuden rajoittaa kolumnin sisältöa huomattavasti tarkemmin.

    Taulut sopivat mukavasti analogiaksi perinteiseen kortistoon, ja tietokannat kuvastavat arkistokaappeja.

    Käyttäjien määrittely ja hallinta on usein myös suht vaivatonta. käyttäjille usein annetaan jotain tiettyja oikeuksia johkin tiettyyn tietokantaan, esim. MySQL:ssa " GRANT privileges ON xyz.* TO user@host IDENTIFIED BY 'password' "

    * privileges voi olla esim select,insert,update tai ALL (ja muutakin, mutta irrelevanttia esimerkissä)

    olis voinu lisätä viel postgres -esimerkit mut sitä tulee käytettyä harvemmin nii ei voi muistaa ulkoo esim. tuota käyttäjä-ylläpitoa. Mutta sitä varten on hyllyssä kirja mistä voi luntata. Muistaakseni sopivassa kohtaa on myös kirjanmerkki valmiina.

    Pitää toki muistaa että yleensä SQL:ää käytetään jostain 3 generaation kielestä, esim C, C++, Java, PHP, Perl, Python tulee nyt mieleen, jolla sitten tarjoillaan tietokannan sisältö käyttäjälle sopivassa käyttöliittymässä, esim. käyttämällä ed. main. C:n printf -komentoa, vaikkapa.

    Mutta eiköhän tämä ala oleen tässä..
     
  13. Omasta mielestäni alkaa homma mennä sen verran offtopiciksi, että mitäpä jos halukkaat jatkavat SQL tutoriaalien etsimisellä ja loput yrittävät pysyä pätemättä ruodussa.
     
  14. keijok

    keijok Member

    245
    15
    18
    Kuten muut ovat jo ansiokkaasti tuoneet esille, et tällä kotisivujesi tietokantaominaisuudella tee mitään ellet osaa käyttää sitä.

    Lisäksi tuollaisen hakutoiminnon toteuttaminen tietokantaa käyttäen kotisivullesi vaatii sen, että kaikki kotisivujesi (teksti)materiaali on tallennettu sinne tietokantaan. Eli et tee staattisia HTML -sivuja vaan dynaamisia sivuja joiden näytettävä sisältö haetaan tuolta tietokannasta.

    Ehkäpä helpoin tapa tehdä dynaamisia tietokantapohjaisia web -sivustoja lienee käyttää PHP -ohjelmointikieltä. Tätä ohjelmointikieltä käyttäen on toteutettu mm. tämä sivusto. Kuitenkin laajan, toimvan ja ennen kaikkea turvallisen sivuston tekeminen 0 -tilanteesta alkaen on iso urakka ja oikeastaan nykyään tarpeeton. Saatavilla on nimittäin freeware -pohjalta toteutettuja hyvinkin monipuolisia (julkaisu)sivustopaketteja jotka sisältävät galleriat, keskustelufoorumit, artikkeleiden julkaisun, hakutoiminnot jne. Minulla on kokemusta PHP-Nuke -pohjaisesta julkaisupaketista ja hyvin toimii. Vastaavia on muitakin ja oikeastaan oma innostuksesi ratkaisee sen mitä käytät. Joka tapauksessa jo tuo mainittu SQL -kieli tulee olla hanskassa, joudut sitä ennemmin tai myöhemmin käyttämään mikäli tietokantoja aiot hyödyntää esim. web -sivuillasi tavalla tai toisella. Lisäksi tuo mainitsemani PHP -kieli pitää hallita vaikkakin nuo mainitsemani julkaisupaketit ovat aika yksinkertaisia ottaa käyttöön ja (yleensä) niissä tulee seikkaperäiset rautalankaohjeet homman käynnistämiseksi.
     
  15. Teal

    Teal

    29
    0
    0
    Taitaa mennä taas pahasti ot, mutta johan tässä ollaan sivuraiteilla...

    *Yök* PHP-Nuke tekeen aivan tolkuttoman määrän tietokantahakuja yhden sivupyynnön aikana (mikä on yleensäkin näiden portaalisoftien ongelmana). Suositussa sivustossa tietokantapalvelin joutuu kovaan rasitukseen "turhaan".

    Talkoohengellä kun nousee tuollaisia isoja systeemejä, ei kukaan seiso puikoissa kontrolloimassa hommaa ja tuossa on sitten tulos.

    nimim. pieni on kaunista
     
  16. Haun toteuttaminen ei toki tarvitse tietokantoja, yksinkertaisella skriptillä haku onnistuu tekstimuotoisista webbisivuistakin. Ei tietenkään niin nopeasti kuin tietokannasta, mutta useimpiin tarkoituksiin tarpeeksi nopeasti.

    Tässä yksi: Matt's Script Archive: Simple Search
     
  17. mutta jos puhutaan kuvista, eikä tekstistä, niin esim. gallery, joka itsellänikin on käytössä weppialbumissani, sisältää haun. tosin kaikki kuvat pitää kuvailla myös sanoin että haku ne löytää. varmaan copperminessäkin on samanlainen ominaisuus, en ole perehtynyt.
     
  18. stepe

    stepe Member

    88
    1
    8
    Yäk! Minä unohdan koko ajatuksen toistaiseksi.
     
  19. JPu

    JPu Well-Known Member

    5 398
    179
    63
    Tuo tietokanta olisi kohtalaisen hyvä juttu kun haluaa jakaa sivuille käyttäjätunnuksia ja suojattuja alueita. Eli osa kuvista tm.s tiedostoista vain tietyn porukan käyttöön, osa julkiselle puolelle.

    Tällaisesta olen minäkin haaveillut, mutta kun ei ole hallussa nuo tietokannat, niin on jäänyt tekemättä.. Nyttemmin sitten koko kotisivunkin katsoin tarpeettomaksi, paitsi kuvapankkina verkossa.

    Jos joku osaa tai tietää yksinkertaisen ja kevyen softan jolla tuollainen onnistuu ja osaa jopa kertoa asioita, joita sellaisen asentelu edellyttää ostetulle web-tilalle, niin olisin kiinnostunut minäkin tiedonjyvistä.
     
  20. Oletkos vilkaissut tätä:
    http://www.google.com/searchcode.html

    ... ja malli kuinka olen toteuttanut sen omilla sivuillani monen aiheen etusivulla:http://www.metsat.net/sivustot.html

    Kuten mainitaan niin vaatii rekisteröimisen, mutta eipä tuosta haittakaan ole olut. HTML-koodin pätkä toimii riittävästi ja on muokattavissa helposti sivujen ulkoasuun sopivaksi.

    Myös mainittu Coppermine on albumikäytössäni, mutta sitä en suosittele SQL:n takia aloittelijoille vaikka simppeli onkin. Copperminessa pystyy jakamaan rajoitetusti käyttöoikeuksia mm. tiettyihin albumeihin jos haluaa ja tästä malli: http://www.metsat.net/coppermine/index.php?cat=20&page=2

    * * *
    PS. Linkkieni tarkoitus ei ole mainostaa kotisivujani vaan esimerkkinä po. hakupalvelun ja softien käyttömahdollisuuksista.