Autorius Tema: [Pamoka]SQL duomenų bazės duomenų tvarkimas naudojant PHP.  (Skaityta 9944 kartus)

Neprisijungęs Haris

  • Dalyvis
  • **
  • Įrašai: 833
  • Karma: +56/-0
    • Žiūrėti profilį
    • www.RubikoKubas.Lt
[Pamoka]SQL duomenų bazės duomenų tvarkimas naudojant PHP.
« Įrašytas: 2009-03-31 15:34:53 pm »
Naudojant PHP galima ištraukti iš SQL duomenų bazės duomenis , irašyti duomenis į ją , ištrinti , sukurti lentelę ir taip toliau , ir tokiems tikslams naudojame PHP funkciją
mysql_query(); į ją galima įterpti SQL užklausas.


Prisijungimas prie SQL duomenų bazės

Jungiamės prie mySQL DB

$dbadresas="localhost";
$dbvartotojas="root";
$dbslaptazodis="";
$jungiames=mysql_connect($dbadresas,$dbvartotojas,$dbslaptazodis);
$dbpasirinkimas=mysql_select_db('Mano_duomenu_baze',$con);
if(!$jungiames || !$dbpasirinkimas){
   echo"nepavyko prisijungti prie duomenu bazes";exit;
}else{
   echo"Pavyko prisijungti prie duomenu bazes";
}
 Prisijungeme prie duomenu bazes pavadinimu: Mano_duomenu_baze . :)

Lentelės kūrimas:

Sukursime lentele vartotojai su stulpeliais vardas , pavarde , adresas.

<?php
/*Kuriame lentele*/
 $lentele=mysql_query("CREATE TABLE vartotojai (
        vardas VARCHAR(30) NOT NULL,
        pavarde VARCHAR(30) NOT NULL,
   adresas VARCHAR(100) NOT NULL,
    ");
/*tikriname ar viskas gerai*/
if(!$lentele){
print"Klaida";
}else{
print"Lentelė sukurta";
}
?>

Įrašome į lentelę:

Dabar įrašysime į lentelę vartotojo duomenis t.y. vardas , pavardė , adresas.

<?php
/*Susidedam duomenis į kintamuosius(galima ir imti duomenis iš formų)*/
$vardas="Vytautas";
$pavarde="Vitenis";
$adresas="Vilnius";
$irasome=mysql_query("INSERT INTO `vartotojai` SET `vardas`='$vardas' , `pavarde`='$pavarde' , `adresas`='$adresas' ");
/*Tikriname ar viskas gerai*/
if(!$irasome){
print"Klaida";
}else{
print"Duomenis irasyti";
}
?>

Duomenų ištraukimas ir atvaizdavimas:

Ištrauksime sukurto vartotojo duomenis iš lenteles 'vartotojai' ir juos atvaizduosime.

<?php
/*Paimame duomenis is lenteles (* zvaigzdute reiskia kad imame visu stulpeliu reiksmes) */
$imame=mysql_query("SELECT * FROM `vartotojai`");
/*Darome cikla su kuriuo galesime visus duomenis parodit vienu metu*/
/*mysql_fetch_array(); f-ja sudeda visas reiksmes i masyva*/
while($stulpelis=mysql_fetch_array($imame)){
print"Vardas:".$stulpelis['vardas']."
Pavarde:".$stulpelis['pavarde']."
Adresas:".$stulpelis['adresas']."";
}
/*tarp [''] rasomas stulpelio pavadinimas pvz: $stulpelis['vardas'] parodys varda.*/

/*Atvaizduojame tik viena lenteles eilute */
/*WHERE ir LIMIT parametrai nurodo: WHERE nurodo pagal koki stulpeli traukti duomenis  LIMIT nurodo kiek turi paroditi reiksmiu siuo atveju 1 reiksme t.y. tik eilute su Vytautas vardu*/
$imame1=mysql_query("SELECT * FROM `vartotojai` WHERE `vardas`='Vytautas' LIMIT1");
$st=mysql_fetch_array($imame1,MYSQL_NUM);
print"Vardas:$st['0']";
print"Pavarde:$st['1']";
print"Adresas:$st['2']";
?>
Rezultatas:
(su while)
Vardas:Vytautas
Pavarde:Vitenis
Adresas:Vilnius

(be while)
Bus tas pats kas ir su while.

Triname įrašus:

Ištrinsime Vytautą iš duomenų bazės :D

<?
/*Vykdome uzklausa*/
$trinam=mysql_query("DELETE FROM `vartotojai` WHERE `vardas`='Vytautas' LIMIT1");
/*Tikriname*/
if(!$trinam){
print"Klaida";
}else{
print"Vytautas istrintas :D ";
}
?>

Kaikurios f-jos:

Pateiksiu keletą dažnai naudojamu f-jų ir auksčiau naudotu f-jų paaiskinimus.

mysql_num_rows(); - Parodo kiek rasta irasu.
mysql_query(); - Vykdo joje esančia SQL užklausą
mysql_fetch_array(); - Sudeda lenteles įrašus į masyvą (Array)
mysql_connect(host,user,passwors); - prijungia prie mySQL duomenu bazes
mysql_select_db(); - Nustato prie kokios duomenu bazes jungtis.
mysql_close(); - nutraukia sujungima su duomenu baze

Pabandžiau jus supažindinti su mySQL duomenų bazės valdymu naudojant PHP funkcijas , gal ir pavyko :)
Jei rasite netikslumu ar siaip ko nors blogo rašykite šioje temoje ;)

Neprisijungęs Lukas

  • Administratorius
  • Herojus
  • ******
  • Įrašai: 7431
  • Karma: +232/-15
    • Žiūrėti profilį
Re: [Pamoka]SQL duomenų bazės duomenų tvarkimas naudojant PHP.
« Atsakymas #1 Įrašytas: 2009-03-31 18:46:07 pm »
Gera pamoka, tik siulyciau naudoti kodo blokus, kad atrodytu kazkas tokio:

:]

Realiai to pacio padariau mini toki straipsniuka

Pagrindiniai kintamieji:

$db   = 'duombaze';
$user = 'root';
$pass = 'slaptazodis';
$host = 'localhost';

pasijungia ir pasirenka duombaze, jei kazkas nepavyksta - pranesa:

mysql_connect($host, $user, $pass) or die ('Duomenu bazes klaida: <br />', mysql_error());
mysql_select_db($db) or die ('Nepasirinkta duomenu baze: <br/>', mysql_error());

vykdo betkokia uzklausa i duombaze, jei kazkas nepavyksta - pranesa:

$sql    = 'SELECT * FROM `jos_banner`';
$result = mysql_query($sql) or die ('Uzklausa nepavyko: <br/>', mysql_error());

daro kazka su grazintais duomenimis, siuo atveju printina (kartu parodau tokia komanda printf):

while ($row = mysql_fetch_array($result)) {
    printf("ID: %s  Vardas: %s", $row["id"], $row["name"]);
}

isvalo rezultatu kintamaji ir uzdaro prisijungima prie duomenu bazes:

mysql_free_result($result);
mysql_close($connect);
Jūsų draugas, kolega ir puslapio administratorius,

Lukas.

Gerda Photography
Serveriai.lt 50% nuolaida!
Free Hosting
Free Templates

Neprisijungęs Haris

  • Dalyvis
  • **
  • Įrašai: 833
  • Karma: +56/-0
    • Žiūrėti profilį
    • www.RubikoKubas.Lt
Re: [Pamoka]SQL duomenų bazės duomenų tvarkimas naudojant PHP.
« Atsakymas #2 Įrašytas: 2009-04-01 11:35:18 am »
Geras :) apie sitoki buda nezinojau.
Citata
while ($row = mysql_fetch_array($result)) {
    printf("ID: %s  Vardas: %s", $row["id"], $row["name"]);
}

Neprisijungęs Lukas

  • Administratorius
  • Herojus
  • ******
  • Įrašai: 7431
  • Karma: +232/-15
    • Žiūrėti profilį
Re: [Pamoka]SQL duomenų bazės duomenų tvarkimas naudojant PHP.
« Atsakymas #3 Įrašytas: 2009-04-01 12:51:27 pm »
labai patogu daznai buna su tuo printf();  pats matai kokia galia turi komanda :) daug svaresnis kodas buna
Jūsų draugas, kolega ir puslapio administratorius,

Lukas.

Gerda Photography
Serveriai.lt 50% nuolaida!
Free Hosting
Free Templates

Manualai.lt Forumas

Re: [Pamoka]SQL duomenų bazės duomenų tvarkimas naudojant PHP.
« Atsakymas #3 Įrašytas: 2009-04-01 12:51:27 pm »

Neprisijungęs Haris

  • Dalyvis
  • **
  • Įrašai: 833
  • Karma: +56/-0
    • Žiūrėti profilį
    • www.RubikoKubas.Lt
Re: [Pamoka]SQL duomenų bazės duomenų tvarkimas naudojant PHP.
« Atsakymas #4 Įrašytas: 2009-04-01 13:29:11 pm »
O tie %s visada visur vienodi?

Neprisijungęs Lukas

  • Administratorius
  • Herojus
  • ******
  • Įrašai: 7431
  • Karma: +232/-15
    • Žiūrėti profilį
Re: [Pamoka]SQL duomenų bazės duomenų tvarkimas naudojant PHP.
« Atsakymas #5 Įrašytas: 2009-04-01 13:33:36 pm »
aha, jie is eiles gauna reiksme kintamuju, kurie surasyti gale f-cijos :)
« Paskutinį kartą keitė: 2009-04-01 13:46:08 pm sukūrė primatas »
Jūsų draugas, kolega ir puslapio administratorius,

Lukas.

Gerda Photography
Serveriai.lt 50% nuolaida!
Free Hosting
Free Templates

Neprisijungęs Haris

  • Dalyvis
  • **
  • Įrašai: 833
  • Karma: +56/-0
    • Žiūrėti profilį
    • www.RubikoKubas.Lt
Re: [Pamoka]SQL duomenų bazės duomenų tvarkimas naudojant PHP.
« Atsakymas #6 Įrašytas: 2009-04-01 14:56:59 pm »
Viskas aišku ;)

Manualai.lt Forumas

Re: [Pamoka]SQL duomenų bazės duomenų tvarkimas naudojant PHP.
« Atsakymas #6 Įrašytas: 2009-04-01 14:56:59 pm »