Skrypt działa poprawnie jeśli chodzi o dodawanie nowych rekordów oraz ich usuwanie. Problem dotyczy edycji.
index.php
<? { if($_POST['pass']=='1234') //Wpisz haslo w miejsce "1234" { $_SESSION['admin']='ok'; } } { echo '<form method="POST" action="index.php?main=admin"> <p align="center"> Niestety nie jesteś zalogowany.<br> Proszę podać hasło:<br> <input type="password" name="pass" size="20"><br> <input type="submit" value="OK"></p> </form>'; } { $_SESSION['admin']=''; echo 'Nastapiło wylogowanie!<br />Przejdź do <a href="/index.php">Strony Głównej<br /> Przejdź do <a href="/news/">News</a></a>'; } if($_SESSION['admin']=='ok') { { echo '<a href="index.php?newsy=edytuj&id='.$wiersz['id'].'"><span style="color:green">edytuj</span></a>'; } echo '<form method="POST" action="index.php?newsy=dopisz"> Autor:<br /> <input type="text" name="autor" size="24"><br> Tytuł:<br /> <input type="text" name="tytul" size="64"><br /> Treść:<br /> <textarea rows="5" name="tresc" cols="42"></textarea><br /> <input type="submit" value="Dodaj"> </form>'; { $id=$_GET['id']; Napisał:<br /> <input type="text" name="autor" size="24" value="'.$wiersz['autor'].'"><br /> Tytuł:<br /> <input type="text" name="tytul" size="64" value="'.$wiersz['tytul'].'"><br /> Treść:<br /> <textarea rows="5" name="tresc" cols="42">'.$wiersz['tresc'].'</textarea><br /> <input type="submit" value="Edit"> </form>'; } { $autor=$_POST['autor']; $tytul=$_POST['tytul']; $tresc=$_POST['tresc']; echo 'Pomyślnie dodałem newsa<br /><br /><strong>Autor:</strong> '.$autor.'<br /><strong>Nowy tytuł:</strong><br />'.$tytul.'<br /><strong>Treść:</strong><br />'.$tresc.'<br /><strong>Data: </strong>'.$data.'.<br /><br />'; } { $autor=$_POST['autor']; $tytul=$_POST['tytul']; $tresc=$_POST['tresc']; $id=$_GET['id']; echo 'Pomyślnie edytowałem newsa! <br /><br /><strong>Autor:</strong><br />'.$autor.',<br /><strong>Nowy tytuł:</strong><br />'.$tytul.',<br /><strong>Nowa treść:</strong><br />'.$tresc.'<br /><br />'; } { $id=$_GET['id']; } ?> <a href="/news/news.php?admin=wyloguj"><span style="color:red"><strong>Wyloguj</strong></span></a></center><br /><br /><br /> <? } ?>
W bazie danych stworzyłem tabelę z następującymi polami:
CREATE TABLE `news` ( `id` INT NOT NULL AUTO_INCREMENT , `autor` TINYTEXT NOT NULL , `tytul` TINYTEXT NOT NULL , `tresc` TEXT NOT NULL , `data` VARCHAR( 50 ) NOT NULL , PRIMARY KEY ( `id` ) );
Za wyświetlanie News'ów odpowiada plik:
news.php
<? { if($_SESSION['admin']=='ok') { echo '<a href="/news/index.php?newsy=edytuj&id='.$wiersz['id'].'"><span style="color:green">edytuj</span></a>'; echo '<a href="/news/index.php?newsy=usun&id='.$wiersz['id'].'"><span style="color:red">usuń</span></a>'; echo '<a href="/news/index.php?admin=wyloguj"><span style="color:red"><strong>Wyloguj Admin</strong></span></a>'; } } ?>
Tak jak wspomniałem, dodawanie i usuwanie nowych rekordów przebiega prawidłowo (no może nie idealnie, bo po dodaniu newsa i odświeżeniu formularza/strony, dodaje się ponownie news w następnym rekordzie).
Jeśli chodzi o edycję to nie dzieje się nic, nie następują żadne zmiany w bazie.
Za pomoc z góry dziękuję.