Programeri.com

Programeski Web Blog

Konekcija sa MySQL

Avgust22

Znaci za sada imate MySql instoliran na vasem kompjuteru ili koristite server koji ima MySql instoliran. Jedan problem sto sam imo prije je svaki put kada zelim da napravim novu bazu podataka nisam bio u mogucnosti i moro sam svaki put pitati Sirmu da to uradi, (Sirmo - codeum administrator). Naravno dok nisam naucio PHP :)

Evo i komande kako da napravite vasu bazu podataka.

Recimo da zelimo da napravio knjigu gostiju. i treba nam baza podataka sa informacijama.

$sql = 'CREATE TABLE `knjiga_gostiju` (
`kg_ime` VARCHAR( 40 ) NOT NULL,
`kg_prezime` VARCHAR( 40 ) NOT NULL,
`kg_subjekat` VARCHAR( 100 ) NOT NULL,
`kg_datum` DATE DEFAULT '0000-00-00' NOT NULL,

`kg_id` INT NOT NULL auto_increment,
`kg_ip` VARCHAR( 50 ) NOT NULL,
`kg_text` TEXT NOT NULL
PRIMARY KEY ( `kg_id` )
)';
echo 'baza podataka napravljena !';
mysql_query( $sql );

VAZNO nemoj da zaboravite da napravite konekciju sa bazom podataka i tek onda da pravite bazu podataka. ISTO TAKO PAZITE DA nezatvorite konekciju sa bazom podataka jer ako to uradite nece biti u mogucnosti da napravite tabelu.

Objasnjenje:
CREATE TABLE `knjiga_gostiju`

Create je komanda u MySql koja ce napraviti tabelu koja se zove knjiga_gostiju

`kg_ime` VARCHAR( 40 ) NOT NULL,
`kg_prezime` VARCHAR( 40 ) NOT NULL,
`kg_subjekat` VARCHAR( 100 ) NOT NULL,
`kg_datum` DATE DEFAULT '0000-00-00' NOT NULL,
`kg_id` INT NOT NULL auto_increment,
`kg_ip` VARCHAR( 50 ) NOT NULL,
`kg_text` TEXT NOT NULL
PRIMARY KEY ( `kg_id` )

VARCHAR (40) stoji za jednu liniju texta duzine 40 charactera.
DATE je naravno za datum, i u slucaju da ne postavite datum pisace 0000-00-00.
INT je integer vrijednost. BROJ od 0 pa nadalje

auto_increment znaci da ako se jedna osoba upisala u bazu podataka i kada tu bazu update kg_id broj ce se automatski promjeniti (prosli_broj + 1).
TEXT je erija gdje mozete da pisete vece textove kao sto ce u nasem slucaju biti poruka.
PRIMARY KEY ( `kg_id` ), postavljamo kg_id da bude glavni kljuc ove baze podataka i svi ostali ce biti povezani sa tim brojem.
NOT NULL znaci da vrijednost tog polja nemoze ostati prazan. Ako necete da dobijate errors uklonite ovu opciju.

Evo kako bi sve trebalo da izgleda.

<?php
$link = mysql_connect("localhost","username","password");
if(! $link)

die("Nismo se konektirali u bazu podataka");
else
{
$sql = 'CREATE TABLE `knjiga_gostiju` (
`kg_ime` VARCHAR( 40 ) NOT NULL,
`kg_prezime` VARCHAR( 40 ) NOT NULL,
`kg_subjekat` VARCHAR( 100 ) NOT NULL,
`kg_datum` DATE DEFAULT '0000-00-00' NOT NULL,
`kg_id` INT NOT NULL auto_increment,
`kg_ip` VARCHAR( 50 ) NOT NULL,
`kg_text` TEXT NOT NULL

PRIMARY KEY ( `kg_id` )
)';
echo 'baza podataka napravljena !';
mysql_query( $sql );
}
";

mysql_close($link);
print "sve radi kako treba";
?>

To je to… Ako ste sve uradili kako treba, onda trebate da dobijete poruku sve radi kako treba…. Ako niste a sigurni ste da ste uradili sve kako treba javite se putem foruma.

Znaci sada imamo bazu podataka koja se zove knjiga_gostiju…
Slijedeci korak ce biti da se konektiramo sa bazom podataka i da pokupimo par informacija iz te baze podataka a i ujedno da sahranimo neke podatke u tu istu tabelu….

Nastavak kasnije :)

Kategorija: Ostalo | Bez Komentara »

PHP Form

Avgust22

Recimo sada zelite da imate forum fields gdje ce gost biti u mogucnosti da pohrani informacije u bazu podataka.

 <html>
 <head>
 <title>Knjiga Gostiju</title>
 </head>

 <body>
 <form action="knjiga_gostiju.php" method="post">

 Ime:
 <input type="text" name="ime">

 E-mail:
 <input type="text" name="email">

 URL Stranice:
 <input type="text" name="url" value="http://">

 Komentar:
 <textarea name="koment" cols="45" rows="5">
 </textarea>
 </body></html>
 

ovo je obicni html i <?php i ?> nisu ni potrebni.. sad za sad Eto to je to za sada slijedeci put cemo da napravimo tutorial kako da se upisu vrijednosti iz forme u bazu podataka….
Pozdrav Svima

Kategorija: Ostalo | Bez Komentara »

PHP OOP

Avgust22

Koriste se za definisanje objekta ? klasa je samo sablon na osnovu koga se kreiraju objekti. Na osnovu jedne definicije klase moguce je kreirati vise objekata. Novi objekat se kreira upotrebom kljucne rijeci new na sledeci nacin:

<ime_varijable > = new <ime_klase>(<lista_varijabli>)
<lista_varijabli> - varijable koje se predaju konstruktoru

NPR: $obj = new my_class();

 class <ime_klase>
 {
     <varijable>
     <konstruktor klase>
     <funkcije>
 }
 

<varijable> - lista varijabli koje ce biti koristene unutar klase

<konstruktor klase> - funkcija istog imena kao i klasa koja se poziva kada se kreira nova instanca klase
<funkcije> - funkcije klase

4.1 Varijable

 class c_test
 {
     //test varijable
     var $a;
     var $b;

 }

 $a = new c_test(); // kreiranje objekta "a" na osnovu klase "c_test"
 $b = new c_test(); // kreiranje objekta "b" na osnovu klase "c_test"
 

Ovde su $b i $a objekti ili instance klase c_test. Prustup varijablama se vrsi kao:

 $a->a = "varijabla a"
 $a->b = "varijabla b"

 echo $b->a; //izlaz je "", zato sto varijable objekta b jos nisu primile //nikakvu vrijednost i zato sto nemaju nikakve veza sa objektom a.

 echo "ja sam " . $a->a ; //izlaz je "ja sam varijabla a"

 echo "a ja " . $a->b ; //izlaz je "a je varijabla b"
 

Operator "->" - koristi se za pristup clanovima klase.

4.2 Funkcije

 class c_test
 {

     //test varijable
     var $a;
     var $b;
     function zbir() { return $this->a + $this->b; }
     function produkt() { return $this->a*$this->b; }
     function razlika() { return $this->a-$this->b; }

     function kolicnik() {
     if ($this->b != 0){
         return $this->a/$this->b;
     }else{
         return "nije definisano" ;
     }

     function pozovi_zbir(){
         //primjer pozivanja funkcije
         return ($this->zbir());
     }
 }
 

$this - isto kao $a->a za pristup varijabli a u objektu a, $this->ime_varijable koristi se za pristup varijabli koja je definisana u klasi, za varjable u oblasti funkcije ne treba koristiti $this.

 $obj = new c_test();

 $obj->a = 15;
 $obj->b = 20;

 echo $obj->zbir(); // izalz je 35
 echo $obj->produkt(); // itd.

 echo $obj->razlika; //ne radi zato sto nema "()" iza funkcije;
 

4.3 Konstruktori klase
Konstruktor klase je funkcija koja se poziva prilikom kreiranja nove klase. Funkcija je konstruktor ako ima isto ime kao i klasa.

 class test {
     function test() { echo "testing..."; }
 }

 $x = new test(); //
 $y = new test(); // ) ? svaki put se poziva funkcija test() klase test
 $z = new test(); // /

 class osoba{
    var $ime;

    var $prezime;
     function osoba ($ime ="", $prezime="") //konstruktor
     {
         $this->ime = $ime;
         $this->prezime= $prezime;
     }
 }

 $x = new osoba("abc","xyz"); //ovi argumenti su predati funkciji "osoba"
 $y = new osoba(); //argumenti su izostavljeni pa se koriste podrazumijevane vrijednosti

 echo $x->ime . "
 "; //abc
 echo $x->prezime; //xyz
 

4.4 Nasle?ivanje

 class <nova_klasa> extends <osnovna_klasa>
 {
 }
 

Ovako definisana klasa nasledjuje sve osobine osnovne klase. Sve funkcije koje je imala osnovna klasa bice dostupne u novoj klasi. Ako nova klasa nema konstruktora koristi se konstruktor osnovne klase ukoliko postoji.

NPR:

 class a{
     function aa(){ echo "ovo je funkcija aa klase a
 "; }
 }
 class b extends a{
     function bb(){ echo '"ovo je funkcija bb klase b
 "; }
 }
 

Klasa b je naslijednila sve osobine klase a, klasa a sadrzi funkciju aa, a klasa b sadrzi funkciju aa i bb.


 $x = new b();
 $b->aa();
 $b->bb();
 

Izlaz:
ovo je funkcija aa klase a
ovo je funkcija bb klase b

Kategorija: Ostalo | Bez Komentara »

Photoshop do WebStranice

Avgust1

Evo korak po korak instrukcije kako da isjecete PDF sliku i napravite webstranicu.

Stranica je na Engleskom, ali se moze vidjeti svaka instrukcija.

Pogledajte stranicu ovdje

Kategorija: Ostalo | Bez Komentara »

 Posljednje Mon, 13:38

mario: mozes li reci sta vraca ova rekurzivna funkcija iz c jezika long pot(long x, long y) { return x * pot(x, y - 1);

Miljand83: http://sr.boljiposao.com/sr/posao-23724/net-programer-m-z.aspx

admin: josip pita: ako mi netko moze pomoći dovrsiti software architecture document za class dijagram neka mi se javi na mail…platit cu!

svjetlana: ja bih da pitam nesto….ali ne mogu da nadjem pravi prostor za to…. Trazim nekoga ko bi mi uradio u asp ili asp.net portal za agenciju nekretninama….ako je neko zainteresovan enka mi se javi na mail svjetlanap@gmail.com thanks

» Postavi Pitanje