Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Zmienna nie pobiera wartości z url
apup
post
Post #1





Grupa: Zarejestrowani
Postów: 12
Pomógł: 0
Dołączył: 11.04.2009

Ostrzeżenie: (0%)
-----


Witam,
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.
  1. <?php
  2.  
  3.  
  4. require_once('config.php');
  5. include('db_login.php');
  6. require_once('DB.php');
  7.  
  8. $smarty->assign('blog_title', $blog_title);
  9. $smarty->display('header.tpl');
  10.  
  11. if (!isset($_SESSION['username'])) {
  12. echo 'Proszę się <a href="login.php">zalogować</a>.';
  13. $stop=TRUE;
  14. }
  15.  
  16. $connection=DB::connect("mysql://$db_username:$db_password@$db_host/$db_database");
  17. if (!$connection) {
  18. die('Nie można połączyć się z bazą danych'. DB::errorMessage($connection));
  19. }
  20.  
  21. $stop=false;
  22.  
  23. $post_id=$_POST['id_artykulu'];
  24. $title=$_POST['tytul'];
  25. $body=$_POST['tresc'];
  26. $action=$_POST['akcja'];
  27. $category_id=$_POST['id_kategorii'];
  28. $user_id=$_SESSION['user_id'];
  29. $comment_id=$_POST['id_komentarza'];
  30.  
  31. if ($_GET['akcja']=='usuwanie' and !$stop) {
  32. $comment_id=$_GET['id_komentarza'];
  33. $comment_id=mysql_real_escape_string(get_magic_quotes_gpc() ? stripslashes ($comment_id) : $comment_id);
  34.  
  35. $query="DELETE FROM komentarze WHERE id_komentarza='". $comment_id ."' AND uzytkownik_id = '". $user_id ."'";
  36. $result=$connection->query($query);
  37. if (DB::isError($result)) {
  38.  die ('Nie można wykonać zaputania do bazy danych'. DB::errorMessage($result));
  39. }
  40. echo ('Pomyślnie usunięto wiersz.<br />');
  41. $stop=TRUE;
  42. }
  43.  
  44. if ($_GET['id_komentarza'] AND !$stop) {
  45. $comment_id=$_GET['id_komentarza'];
  46.  
  47. $query="SELECT * FROM komentarze NATURAL JOIN uzytkownicy WHERE id_komentarza=". $_GET['id_komentarza'];
  48. $result=$connection->query($query);
  49. if (DB::isError($result)) {
  50.  die ('Nie można wykonać zapytania do bazy danych'. DB::errorMessage($result));
  51. }
  52. while ($result_row=$result->fetchRow(DB_FETCHMODE_ASSOC)) {
  53.  $comments[]=array('title'=>htmlentities($result_row['tytul']),
  54.        'body'=>htmlentities($result_row['tresc']),
  55.        'comment_id'=>$result_row['id_komentarza']);
  56. }
  57.  
  58. $post_id=$_GET['id_artykulu'];
  59. $smarty->assign('akcja', 'edycja');
  60. $smarty->assign('komentarze', $comments);
  61. $smarty->assign('id_artykulu', htmlentities($post_id));
  62. $smarty->display('comment_form.tpl');
  63. $smarty->display('footer.tpl');
  64. }
  65.  
  66. if ($_POST['submit'] AND !$stop) {
  67. if ($title=='') {
  68.  echo ('Pole tytuł musi być wypelnione. <br />');
  69.  $found_error=TRUE;
  70.  $stop='TRUE';
  71. }
  72.  
  73. if ($body=='') {
  74.  echo ('Pole treść musi być wypelnione. <br />');
  75.  $found_error=TRUE;
  76.  $stop='TRUE';
  77. }
  78.  
  79. if ($_POST['akcja']=='dodawanie' AND !$stop) {
  80.  $post_id=mysql_real_escape_string(get_magic_quotes_gpc() ? stripslashes($post_id) : $post_id);
  81.  $user_id=mysql_real_escape_string(get_magic_quotes_gpc() ? stripslashes($user_id) : $user_id);
  82.  
  83.  $query="INSERT INTO komentarze VALUES (NULL, "."'". $user_id ."','". $post_id ."','". $title ."','". $body ."', NULL)";
  84.  $result=$connection->query($query);
  85.  if (DB::isError($result)) {
  86.   die ('Nie można wykonać zapytania do bazy danych'. DB::errorMessage($result));
  87.  }
  88.  echo('Pomyślnie dodano artykuł. <br />');
  89.  $stop='TRUE';
  90. }
  91.  
  92. if ($_POST['akcja']=='edycja' and !$stop) {
  93.  $comment_id=mysql_real_escape_string(get_magic_quotes_gpc() ? stripslashes($comment_id) : $comment_id);
  94.  $user_id=mysql_real_escape_string(get_magic_quotes_gpc() ? stripslashes($user_id) : $user_id);
  95.  
  96.  $query="UPDATE komentarze SET tytul='". $title ."', tresc='". $body ."' WHERE id_komentarza='". $comment_id ."' AND uzytkownik_id='". $user_id ."'";
  97.  $result=$connection->query($query);
  98.  if (DB::isError($result)) {
  99.   die ('Nie można wykonać zapytania do bazy danych'. DB::errorMessage($result));
  100.  }
  101.  echo ('Rekor pomyślnie zaktualizowano. <br />');
  102.  $stop='TRUE';
  103. }
  104. }
  105.  
  106. if (!$stop) {
  107. $post_id=$_GET['id_artykulu'];
  108. $result_row=array('tytul'=>NULL, 'tresc'=>NULL, 'id_komentarza'=>NULL);
  109. $comments[]=$result_row;
  110.  
  111. $smarty->assign('id_artykulu', htmlentities($post_id));
  112. $smarty->assign('komentarze', $comments);
  113. $smarty->assign('akcja', 'dodawanie');
  114. $smarty->display('comment_form.tpl');
  115. }
  116.  
  117. if ($found_error) {
  118. $post_id=$_POST['id_artykulu'];
  119. $result_row=array('tytul'=>htmlentities($title), 'tresc'=>htmlentities($body), 'id_komentarza'=>htmlentities($id_komentarza));
  120. $comments[]=$result_row;
  121. $smarty->assign('akcja', htmlentities($action));
  122. $smarty->assign('id_artykulu', htmlentities($post_id));
  123. $smarty->assign('komentarze', $comments);
  124. $smarty->display('comment_form.tpl');
  125. }
  126.  
  127. $smarty->display('footer.tpl');
  128.  
  129. ?>

Czekam na Wasza pomoc winksmiley.jpg
Go to the top of the page
+Quote Post

Posty w temacie


Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 19.08.2025 - 17:56