Tervehdys ohjelmointiputkan väki.
Olen tässä suunnitellut sivuilleni tämmöistä käyttäjien välistä privaattia viestintämenetelmää. Eli ideana on tämä:
Antti kirjautuu sisään
Antti lähettää viestin pekalle.
Pekka kirjautuu sisään ja huomaa että yksi uusi viesti on saapunut.
Pekka lukee viestin ja vastaa viestiin.
Ja pitäisi onnistua php:n ja mysql:n avulla. Joten nyt kysyn, että minkälainen tapa olisi helpoin tämän toteuttamiseen.
Itse ajattelin jonkin tämän tapaista; Aina kun rekisteröidään uusi käyttäjä tietokantaan niin lisätään tälle luodulle käyttäjälle myös jonkin näköinen "viestilokero" tietokantaan. Eli kun käyttäjä lähettää viestin toiselle niin viestilokeroon kirjoitettaisiin erilaista tietoa jonka mukaan sitten pelaillaan.
Eli tämmöistä, toivottavasti ymmärsitte idean :)
Minä tekisin yhen uuen taulun "privaviestit", jossa sarakkeet lähettäjä, vastaanottaja, lähetysaika, viesti ja luettu. Siitä on helppo hakea viestejä tarpeen mukaan.
Blazen neuvolla on helppo listata myös tietyn käyttäjän kaikki viestit (saapuneet ja lähetetyt) ja kontaktit.
CREATE TABLE users ( id INT AUTO_INCREMENT, nick VARCHAR(30), PRIMARY KEY(id) ) CREATE TABLE private_messages ( id INT AUTO_INCREMENT, from_user INT, to_user INT, message TEXT, PRIMARY KEY(id) )
Siinä vähän pohjaa relaatiotietokannalles :). Yks taulu käyttäjille, ja yks viesteille.
Kiitoksia nopeista vastauksista. Kokeilen alkuun tuota Blazen ehdotusta ja pistän sitten lisäinfoa, että miten kävi :)
Noniin sain tuon systeemin toimimaan loistavasti mutta nyt on mielessä jo uusi asia.
Lisäsin sivun postilaatikko.php josta näkee helposti kaikki vastaanotetut ja lähetetyt viestit. Ne näkyvät tämänkaltaisessa taulukossa:
[Viestin otsikko] [Lähettäjä] [Aika]
(Tervehdys) (Antti) (12.00)
Kun tuosta viestin otsikosta painaa niin aukeaisi uusi sivu jossa lukisi se lähetetyn viestin sisältö. Miten saisin tuon sillä tapaa tehtyä?
Oletettavasti sulla on joku primary key kenttä (esim. Matson esimerkin id-kentät). Laitat vaan otsikosta linkin, jossa on parametrina ko. kentän arvo ja sitten katselusivulla haet viestin jossa Id on se parametrina annettu ja lähettäjänä tai vastaanottajana kirjautunut käyttäjä (ettei pääse muiden viestejä lukemaan parametria muuttamalla).
Aihe on jo aika vanha, joten et voi enää vastata siihen.