Generalnie na razie w tej części cmsa wszystko zachodzi między 2 plikami:
edit.php
......... //włączanie opcji edycji na liście artykułów { $id = $_POST['id']; $id_art = $_POST['id']; include_once("../apps/db/db.php"); $db = new baza ('aaa', 'aaaa', 'aaa', 'aaa'); $db->sqlQuery('SELECT * FROM artykul where id="'.$id_art.'"'); $result = $db->result; { $out[]=$row; } foreach ($out as $art) { $articles[$art['tytul']] = new Article ($art['id'], $art['imie'], $art['tytul'], $art['tekst']); } include '../apps/view/editform.view.php'; } //edytowanie artykułu { $id_art = $_POST['id']; include_once("../apps/db/db.php"); $db = new baza ('aaa', 'aaa', 'aaa', 'aaaa'); $db->sqlQuery('UPDATE artykul SET tekst="'.$tekst.'", tytul="'.$tytul.'" WHERE id="'.$id_art.'"'); } else {} .........
i editform.view.php
<form action="?" method="POST"> <?php foreach ($articles as $tytul => $article) { echo '<div><label for="tytul">Tytuł artykułu:</label><textarea id="tytul" name="tytul" rows="3" cols="40">'.$article->tytul.'</textarea></div>'; echo '<div><input type="hidden" name="id" value="'.$article->id.'"/><input type="submit" value="Zmien"/></div>'; } ?> </form>
Po wybraniu opcji edytuj, wszystko chodzi dobrze- wyświetla się w osobnym formularzu tekst i tytuł artykułu do edycji.
Problem jest potem, bo po wysłaniu $_POST['action'] == 'Zmien', plik wraca do starej tabelki, ale nie nanosi zmian.
Na pewno dobre jest połączenie z bazą danych, bo w edit.php (tutaj nie pokazałem dla jasności przekazu), mam opcję kasowania i to działa prawidłowo..