Latest forum activity...
HR tablice font?
Forum: Fontovi
(12 Replies) View latest post
Frikec
09.08.2018 16:40
pozivnica za yuwabits
Forum: FFA
(1 Reply) View latest post
prankter
02.03.2018 14:14
Pozivnice za privatne trackere
Forum: FFA
(1 Reply) View latest post
prankter
02.03.2018 14:13
YUWABITS
Forum: FFA
(2 Replies) View latest post
prankter
02.03.2018 14:12
Ima neko Invitation Code za TorrentHR.org
Forum: FFA
(51 Replies) View latest post
prankter
02.03.2018 14:12
Pozivnica za YUWABiTS.net
Forum: FFA
(53 Replies) View latest post
prankter
02.03.2018 14:11
Pistolero w/ Hans Dunkelkammer (DE) / Attack ...
Forum: Muzika
(0 Replies) View latest post
pistolero
04.03.2017 14:36
Tražim 3D modelere za modeliranje golf terena
Forum: Ponuda
(0 Replies) View latest post
dastefan
17.12.2016 14:50
 
 To the forum... 
Pošalji ovu stranicu prijatelju


Flash (2)
Freehand (4)
HTML (4)
Photoshop (7)
Programiranje - PHP (3)


 
» Username:
» Password:
Autologin?

 
» Registrirajte se!
» Zaboravili ste password?
403 korisnika su trenutno online
 
33 @ 0.053320
x



Shoutbox
Kreirajte svoj shoutbox u 7 koraka.
Programiranje - PHP
14.09.2003 21:53 14.09.2003 21:53 12    


printer friendly version

PHP SHOUTBOX
kreirajte vlastiti shoutbox u 7 jednostavnih koraka

Step 0. - Bok, šta je ovo?

Pozdrav.
Ovaj tutorial će Vam na jednostavan način (nadam se :) omogućiti izradu vlastitog shoutbox-a.
Pa, krenimo...

Step 1. - E, a kako to radi?

Princip rada shoutbox-a zapravo je vrlo jednostavan. U grubo se svodi na ispunjavanje forme i klikanja gumba za slanje. Zatim se forma šalje na određeni URL koji ju obrađuje i sprema u bazu podataka (u našem slučaju MySQL). Posljednji korak je ispis unesenih podataka (shouteva).

Step 2. - Super, kužim. Što mi sve treba?

Za izradu je potrebno imati podršku za PHP skriptni jezik i MySQL bazu podataka, te nešto sitno vremena i živaca.

Step 3. - Imam sve, dalje?

Izrada. Na prvi pogled se može činiti teško, ali je zapravo vrlo jednostavno.
Postoji nekoliko načina na koje se može realizirati. Ja sam odabrao način u kojem koristimo 2 (dva) fajla. Jedan obrađuje podatke i trpa ih u bazu, a drugi služi za prikaz rezultata iz baze.

Step 4. - Kako da napravim bazu?

Jedna od prvih stvari koja nam treba da bi uopće započeli sa izradom shoutboxa jest baza. Naime, prvo treba kreirati bazu i tablicu sa poljima u koje ćemo upisivati podatke koje upišemo u formu. Za bazu ćemo koristiti MySQL. Kreirat ćemo tablicu koja ima četiri polja: id, name, message i time (broj poruke, ime, tekst poruke i vrijeme slanja). Slijedeći kôd možete kopirati u svoju MySQL bazu koristeći program poput PHPMyAdmin-a (dolazi sa većinom Apache, PHP, MySQL instalacijskih paketa).

CREATE TABLE shoutbox (
    id int(11) NOT NULL auto_increment,
    name varchar(255) NOT NULL,
    message text NOT NULL,
    time text NOT NULL,
    PRIMARY KEY (id)
) TYPE=MyISAM;
        

Napomena: pretpostavlja se da u MySQL-u već imate bazu proizvoljnog imena. Ukoliko nemate - napravite :)
Otvorite PHPMyAdmin-> Create new database -> unos imena (baza) -> Create.
Database baza has been created. -> Run SQL query/queries on database baza -> kopirat gornji kod u textbox -> GO

Sada imamo bazu imenom BAZA i u njoj tablicu imenom SHOUTBOX.

Step 5. - I kak sad upisujem u bazu?

Sada ćemo početi sa prvim dijelom shoutboxa - upisom u bazu.
Prvo se spajamo na bazu, zatim "uzimamo" trenutni datum i vrijeme koje će se upisati u bazu i na kraju popunjavamo podatke u tablicu.
Evo kako to izgleda u PHP-u. Možete sljedeći kod kopirati u običan txt file koji kasnije nazovete shoutbox.php.

<?php
// spajanje na bazu i odabir baze
mysql_pconnect("localhost","username","password");
mysql_select_db("shoutbox");

if($submit) { // ako je pritisnut submit...
    // uzima datum u formatu 01.01.2003., 12:46
    $time = date("d.m.Y., H:i ");
    $result = mysql_query("
        INSERT INTO 
            shoutbox 
        SET
            name = '$name',
            message = '$message',
            time = '$time'
    ");
    // podaci se spremaju u tablicu shoutbox 
    // koju smo ranije kreirali u mysql-u
    // nakon upisa prikazuje stranicu za ispis
    header("Location: viewshoutbox.php");
}
?>
        

Step 6. - A di ja to sve onda vidim?

Sljedeće što trebamo uraditi je da ispišemo podatke... Taj file nazovemo viewshoutbox.php.
Evo cijelog html/php koda da se nemorate previse mučiti ;)


<html> 
<head>
    <title>Shoutbox</title>
</head>
<body>

<!--forma za upis--> 
<form action="shoutbox.php" method="post">
<input type="text" value="name/nick" name="name">
<input type="reset" name="Reset" value="clear">
<br>
<input type="text" value="message" name="message">
<input type="submit" name="submit" value="shout!">
</form>

<?php

// spajanje na bazu i odabir baze
mysql_pconnect('localhost', 'username', 'password');
mysql_select_db('shoutbox');

// selektiranje iz baze
// odabir zadnjih 20 poruka obrnutim redosljedom
$result = mysql_query("
    SELECT
        *
    FROM
        shoutbox
    ORDER BY
        id DESC
    LIMIT 20
");

// while petlja, vrtimo se kroz rezultate
while($r = mysql_fetch_array($result)) { 
    // ispis imena i vremena
    echo $r['name'] . ', ' . $r['time'] . '<br>';
    // ispis poruke
    echo $r['message'] . '<br><br>';
}

?>
</body>
</html>

        

Step 7. - PHEEEWW... finish!!1

Eto, to bi bilo to... ako ste sve radili (kopi-pejstali :) kako sam napisao trebali bi imati svoj prvi (?) shoutbox.
Sljedeće što bi trebali napraviti je malo dotjerati ispis nekim CSS-om stilom i slično, malo formatirat text, dodat bojice i tako, pošto sam ja izbacio svako formatiranje da bude manje source-a i što jednostavnije.
Nisam prije napomenuo, ali podrazumijeva se da se shoutbox.php i viewshoutbox.php nalaze u istom direktoriju.

Nadam se da ovo gore napisano pomaže, a ako imate bilo kakvih prijedloga, pitanja ili komentara slobodno upitajte na forumu.

pozdrav,

che.UP | unpljugged.com

 

 

« povratak

Komentari

re: Shoutbox
al cu sad kenjat :>
zas su ti u mysql tablici svi fieldovi text (nepotrebno zauzimanje memorije)?
sto ako je register globals off na nekom serveru (nece radit slanje i updateanje podataka)?
sam pitam, inace gg za shoutbox, trea vise takih tutoriala, al mora se bit picajzla :)
 Komentar: maxy 16.09.2003 12:57
re: Shoutbox
koji bi ti stavio tip field-a?
glede register off-a -> prva verzija tuta je nastala dok je jos difolt bio na on :) al lako se sredi - zato ima dole link na forum ako postoje neke nejasnoce :)
 Komentar: che.UP 17.09.2003 01:02
re: Shoutbox
name varchar(20), message text, date varchar(16). da se sejva memorija (trebo bi sad objasnit kak se to sejva memorija itd. al necu, to ti jako ljepo na faksu objasne, pa se meni neda) :)
 Komentar: maxy 17.09.2003 09:40
re: Shoutbox
date je bolje staviti u format datetime kad vec picajzliras :) A što se ostalog tice stoji. Super da je prvi 'progi' tutorial napisan. Za ubuduće, predložio bi sljedeće: - tutoriali bi trebali dati malo više informacija o svakom koraku. nije poanta da netko samo kopi-pejsta (makar je i to okej), nego da se skuži koncepcija (zbog čega se nešto radi i eventualno koje su alternative) - programski kod pisati u
 tagovima
 Komentar: njava 17.09.2003 16:21
re: Shoutbox
prvi macici se u vodu bacaju :)
slazem se oko ovog za vise informacija, iako mislim da bi mozda bilo bolje napravit par basic stuff tutora, ono... uvod u baze, varijable, petlje, itd... tako da se u buducim tutorima moze samo polinkat na njih za referencu (tipa ono da nemoras u svakom tutu koji koristi bazu objasnjavat kako i zasto se to radi...)
ako me pamcenje dobro sluzi, bilo je na starom mi3ju beta verzija bas basic stuff tuta i to dosta opsirno...

na sta si mislio s ovim - programski kod pisati u tagovima?
 Komentar: che.UP 17.09.2003 23:44
re: Shoutbox
Typo. Mislio sam na pre tagove...
    while($a>$b) {
        $c++;
    }
 Komentar: njava 18.09.2003 13:50
re: Shoutbox
je kuzim, u orginalu sam stavio css na fixed-width font za kod ali neko je mako :)
 Komentar: che.UP 18.09.2003 14:17
bub
kad se picajzlira, mogo je stavit int za date pa stavit time() unutra i sa mktime vadit datum kako oce :P
 Komentar: maxy 19.09.2003 15:06
re: Shoutbox
Kak sam apsolutna štanga za MySQL i PHP, a trenutno radim site pod ASP-om (kojeg isto tak kužim......slabo :) trebalo bi mi nešto slično samo u kombinaciji Access baza+asp.....? Lastane pomozi....... :)
 Komentar: TYPE01 19.12.2003 11:15
re: Shoutbox
mislim da ti je onda najbolje da pitas na forumu, prije ces dobit odgovor nego tu :)
 Komentar: che.UP 20.12.2003 00:26
re: Shoutbox
baca mi SQL errore....nekaj s passwordima... :((
 Komentar: boby-s 06.02.2005 11:44
re: Shoutbox
Frend me pito kaj mislim o ovome, pa mi je jedna sitnica odmah upala u oko...

if($submit) { // ako je pritisnut submit...

...naime, to bih eventualno zamjenio sa
if (isset ($_POST['submit']) && $_POST['submit']=='shot!!') { // tralala

Objasnjenje: u slucaju da se submit varijabla iz nekog razloga ne posalje, php ce generirati warning (ak se ne varam). Drugi problem je malo ozbiljniji. Ukoliko je u php.ini opcija register_globals iskljucena $submit nece nikad primit podatak dosao on sa POST ili sa GET i skripta nece (ili ce prestati) raditi.

Jos nesto! Mislim da je cisto stvar ukusa, ali nekako mi je draza upotreba fetch_object umjesto fetch_array... malo je preglednije, a i lakse je napisati $foo->bar nego $foo['bar'] ;) nhf...
 Komentar: DedaMraz 26.04.2006 20:05
** Trenutno niste ulogirani pa ne možete ni dodavati komentare **