Upoznali smo se prošli put sa SELECT naredbom te smo naučili kako prihvatiti sve retke jedne tablice te kako ih sortirati. Sada ćemo vidjeti kako točno izabrati određene retke tablice.

WHERE klauzula je jedna od klauzula SELECT upita. S njome ćemo izdvojiti skup podataka iz tablice.
 

SELECT * FROM vijesti WHERE idvijesti=1



Ovime smo pribavili sva polja vijesti čiji je ID jednak jedan.

Također unutar ove klauzule možemo kombinirati veći broj uvjeta spojenih sa logičkim funkcijama kao što su AND, OR, NOT i ostale.

Ako hoćemo izmjeniti podatke koristiti ćemo UPDATE naredbu.
 

UPDATE vijesti SET naslov="neki naslov"



Sada kada bi htjeli ukomponirati WHERE klauzulu sa UPDATE naredbom to bi izgledalo otprilike ovako:
 

UPDATE vijesti SET naslov="neki naslov", datum="2005-09-12" WHERE idvijesti=1



Ovim upitom smo izmijenili naslov upisa vijesti koja ima ID jednak jedan.

Izmjena vijesti


[code]




Uređivanje vijesti

 


Uređivanje vijesti

 



include "spoj.php";
if (!$_POST["SBuredi"])
{
$err=false;
if (!$_GET["idvijesti"])
{
echo "Nepotpuni ulazni podaci";
$err=true;
} else {
$sql="SELECT * FROM vijesti WHERE idvijesti=" . $_GET["idvijesti"];
if (!$q=mysql_query($sql))
{
echo "Nastala je greška pri izvođenju upita
" . mysql_query();
$err=true;
} elseif (mysql_num_rows($q)==0) {
echo "Nema takve novosti";
$err=true;
} else {
$novost=mysql_fetch_array($q);
}
}
if (!$err)
{
?>

 

 


Naslov :
Tekst :

 


}
} else {
$sql="UPDATE vijesti SET naslov='". $_POST["naslov"] ."', tekst='".$_POST["tekst"] ."' WHERE idvijesti=". $_POST["idvijesti"];
if (mysql_query($sql))
{
if (mysql_affected_rows() > 0 )
{
echo "Novost je uspješno uređena.";
} else {
echo "Novost nije izmjenjena.";
}
} else {
echo "Nastala je greška pri izmjeni vijesti
" . mysql_error();
}
}
?>

 

 

 


$err - varijabla koja nam služi kao "zastavica" koja govori da li su podaci uspješno pribavljeni iz baze te da li je sigurno prikazati formu. Ako je zastavica dignuta ($err=true) nešto ne valja te formu ne prikazujemo. Ako je spuštena ($err=false) sve je u redu. Na početku skripte moramo stvoriti zastavicu u spuštenom stanju jer na početku skripte još nije ništa krivo.