baza aktualnosci:
CREATE TABLE uzytkownik ( nazwa_uz varchar(16) NOT NULL PRIMARY KEY, haslo char(40) NOT NULL, email varchar(100) NOT NULL ); CREATE TABLE aktualnosc ( nazwa_uz varchar(16) NOT NULL, temat varchar(30) NOT NULL, DATA date NOT NULL, tresc longtext NOT NULL, INDEX (nazwa_uz), INDEX (temat), PRIMARY KEY (nazwa_uz,temat) );
kod funkcji dodającej nową aktualnosc:
function dodaj_aktualnosc($nowy_news) { $temat=$_POST['temat']; $tresc=$_POST['tresc']; } require_once('funkcje_bazy.php'); $prawid_uzyt = $_SESSION['prawid_uzyt']; $lacz = lacz_bd(); $wynik = $lacz->query("select * from aktualnosc where nazwa_uz='$prawid_uz' and temat='".$temat."'"); if ($wynik && ($wynik->num_rows>0)) { throw new Exception('Aktualnosc o podanym temacie juz istnieje.'); } if (!$lacz->query( "insert into aktualnosc values ('".$prawid_uz."','".$temat."', '".$data."','".$tresc."')")){ throw new Exception('Wstawienie nowej aktualnosci nie powiodlo sie'); } return true; } ?>
na ten skrypt ustawiona jest akcja formularza dodającego nowy news:
<?php require_once('funkcje_newsow.php'); require_once('funkcje_uwierz.php'); require_once('funkcje_prawid_dane.php'); $nowy_news = $_POST['nowy_news']; try { sprawdz_prawid_uzyt(); if (!wypelniony($_POST)) { throw new Exception('Formularz wypełniony niewłaściwie. Proszę spróbować ponownie.'); } // próba dodania newsa dodaj_aktualnosc($nowy_news); } catch (Exception $e) { } ?>