tak jak pisałem w temacie zmienna $post_id oraz $comment_id nie pobierają wartości z URL. Jeśli do tych zmiennych nie zostaną dostarczone odpowienie wartości podczas edycji wpisu wczesniejesze wartości nie są przenoszone do formularza by je edytować. Dodane wpisy sa umieszczane w bazie danych ale z braku wartości w zmiennej nie zostają one wyświetlone na stronie. Po ręcznym wisaniu wartości do zmiennej $post_id wpis wyswietla sie normalnie.
Wartość do pobrania z URL dla zmiennej $post_id
Kod
blog/modify_comment.php?id_artykulu=1&akcja=Edycja
Wartość do pobrania z URL dla zmiennej $comment_id
Kod
blog/modify_comment.php?id_komentarza=1&akcja=Edycja
Poniżej zamieszczam kod pliku obsługującego skrypt do edycji wpisow.
<?php require_once('config.php'); include('db_login.php'); require_once('DB.php'); $smarty->assign('blog_title', $blog_title); $smarty->display('header.tpl'); $stop=TRUE; } $connection=DB::connect("mysql://$db_username:$db_password@$db_host/$db_database"); if (!$connection) { } $stop=false; $post_id=$_POST['id_artykulu']; $title=$_POST['tytul']; $body=$_POST['tresc']; $action=$_POST['akcja']; $category_id=$_POST['id_kategorii']; $user_id=$_SESSION['user_id']; $comment_id=$_POST['id_komentarza']; if ($_GET['akcja']=='usuwanie' and !$stop) { $comment_id=$_GET['id_komentarza']; $comment_id=mysql_real_escape_string(get_magic_quotes_gpc() ? stripslashes ($comment_id) : $comment_id); $query="DELETE FROM komentarze WHERE id_komentarza='". $comment_id ."' AND uzytkownik_id = '". $user_id ."'"; $result=$connection->query($query); if (DB::isError($result)) { } $stop=TRUE; } if ($_GET['id_komentarza'] AND !$stop) { $comment_id=$_GET['id_komentarza']; $query="SELECT * FROM komentarze NATURAL JOIN uzytkownicy WHERE id_komentarza=". $_GET['id_komentarza']; $result=$connection->query($query); if (DB::isError($result)) { } while ($result_row=$result->fetchRow(DB_FETCHMODE_ASSOC)) { 'body'=>htmlentities($result_row['tresc']), 'comment_id'=>$result_row['id_komentarza']); } $post_id=$_GET['id_artykulu']; $smarty->assign('akcja', 'edycja'); $smarty->assign('komentarze', $comments); $smarty->display('comment_form.tpl'); $smarty->display('footer.tpl'); exit; } if ($_POST['submit'] AND !$stop) { if ($title=='') { $found_error=TRUE; $stop='TRUE'; } if ($body=='') { $found_error=TRUE; $stop='TRUE'; } if ($_POST['akcja']=='dodawanie' AND !$stop) { $query="INSERT INTO komentarze VALUES (NULL, "."'". $user_id ."','". $post_id ."','". $title ."','". $body ."', NULL)"; $result=$connection->query($query); if (DB::isError($result)) { } $stop='TRUE'; } if ($_POST['akcja']=='edycja' and !$stop) { $comment_id=mysql_real_escape_string(get_magic_quotes_gpc() ? stripslashes($comment_id) : $comment_id); $query="UPDATE komentarze SET tytul='". $title ."', tresc='". $body ."' WHERE id_komentarza='". $comment_id ."' AND uzytkownik_id='". $user_id ."'"; $result=$connection->query($query); if (DB::isError($result)) { } $stop='TRUE'; } } if (!$stop) { $post_id=$_GET['id_artykulu']; $comments[]=$result_row; $smarty->assign('komentarze', $comments); $smarty->assign('akcja', 'dodawanie'); $smarty->display('comment_form.tpl'); } if ($found_error) { $post_id=$_POST['id_artykulu']; $result_row=array('tytul'=>htmlentities($title), 'tresc'=>htmlentities($body), 'id_komentarza'=>htmlentities($id_komentarza)); $comments[]=$result_row; $smarty->assign('komentarze', $comments); $smarty->display('comment_form.tpl'); } $smarty->display('footer.tpl'); ?>
Czekam na Wasza pomoc
