Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [MySQL][PHP]Blad w $_GET nie mam pojecia o co chodzi pomocy!
Forum PHP.pl > Forum > Przedszkole
mejo33
Witam skorzystalem z dzialu przedszkole bo dopiero zaczynam przygode z php pobralem kod na newsy wszystko ok dodaje ladnie ale kiedy przechodze do panelu admina aby zedytowac news to juz na glownej stronie mam taki blad:

  1. Notice: Undefined index: action in C:\xampp\htdocs\Freia\admin-news.php on line 19


Tutaj linia 19:
  1. }else if($_GET['action'] == "delete" && !empty($_GET['id']) && is_numeric($_GET['id'])){


a tutaj caly kod:
  1. <?php
  2. require_once 'engine/init.php'; include 'layout/overall/header.php';
  3. protect_page();
  4. admin_only($user_data);
  5.  
  6. if(isset($_POST['newnews'])){
  7. $title = $_POST['title'];
  8. $title = mysql_real_escape_string($title);
  9.  
  10. $author = $_POST['author'];
  11. $author = mysql_real_escape_string($author);
  12.  
  13. $content = $_POST['content'];
  14. $content = mysql_real_escape_string($content);
  15.  
  16. $date = mktime();
  17.  
  18. mysql_query("INSERT INTO znote_news SET title='".$title."', author='".$author."', content='".$content."', date='".$date."'")or die(mysql_error());
  19. }else if($_GET['action'] == "delete" && !empty($_GET['id']) && is_numeric($_GET['id'])){
  20. $id = $_GET['id'];
  21.  
  22. $result = mysql_query("SELECT * FROM znote_news where id='".$id."' ") or die(mysql_error());
  23. $num_rows = mysql_num_rows($result);
  24.  
  25. if($num_rows == 1){
  26. mysql_query("DELETE FROM znote_news where id='".$id."'") or die(mysql_error());
  27. $message = '<div id="success">The article is successfully deleted.</div>';
  28. }
  29. }else if(isset($_POST['editnews'])){
  30. $id = $_POST['id'];
  31. if(is_numeric($id)){
  32. $title = $_POST['title'];
  33. $title = mysql_real_escape_string($title);
  34.  
  35. $author = $_POST['author'];
  36. $author = mysql_real_escape_string($author);
  37.  
  38. $content = $_POST['content'];
  39. $content = mysql_real_escape_string($content);
  40.  
  41. mysql_query("UPDATE znote_news SET title='".$title."', content='".$content."', author='".$author."' where id='".$id."'") or die(mysql_error());
  42.  
  43. $message = '<div id="success">The article is successfully updated.</div>';
  44. }
  45. }
  46. ?>
  47. <script type="text/javascript">
  48. function remove(id) {
  49. var answer = confirm("You are about to permanently delete the selected item.\nClick Cancel 'to stop,' OK ' to delete.")
  50. if (answer){
  51. window.location = "<?php echo $_SERVER['PHP_SELF']; ?>?action=delete&id="+ id +"";
  52. }
  53. }
  54. </script>
  55. <link rel="stylesheet" type="text/css" href="news/news.css" />
  56. <h1 style="padding-bottom: 0;">Admin News</h1>
  57.  
  58. <?php
  59. if(!empty($message)){
  60. echo $message;
  61. }
  62.  
  63. $query = "SELECT * FROM znote_news order by date DESC";
  64. $result = mysql_query($query) or die('Something went wrong. Please try again later.');
  65. $num_rows = mysql_num_rows($result);
  66.  
  67. if( empty( $num_rows ) ) {
  68. echo "<div style='margin-top: 15px;'>There are no articles yet. <a href='./admin-newnews.php'>Create a new article</a>.</div>";
  69. }else{
  70. echo "<a href=\"http://127.0.0.1/admin-newnews.php\">Create a new article</a>";
  71. ?>
  72. <table width='100%'>
  73. <tr><th style="width: 70%;">Title</th> <th>Author</th> <th></th> <th></th></tr>
  74. <?php
  75. while($row = mysql_fetch_array($result)){
  76. ?>
  77. <tr>
  78. <td><? echo $row['title']; ?></td>
  79. <td><? echo $row['author']; ?></td>
  80. <td><a href="admin-editnews.php?id=<?php echo $row['id']; ?>"><img src="news/images/pencil.png" alt="Edit item" /></a></td>
  81. <td><img src="news/images/trash.png" onClick="remove('<? echo $row['id']; ?>')" style="cursor: pointer;" src="news/images/trash.png" alt="Delete item" /></td>
  82. </tr>
  83. <?php } } ?>
  84. </table>
  85. <?php include 'layout/overall/footer.php'; ?>


PROSZE O POMOC!!!
toffiak
Zanim użyjesz wartości z tablicy GET sprawdź czy ona istnieje http://pl1.php.net/isset, komunikat wyraźnie mówi że w linii 19 w tablicy GET nie ma wartości pod kluczem: "action".
Kshyhoo
Cytat(mejo33 @ 7.01.2014, 03:13:59 ) *
Witam skorzystalem z dzialu przedszkole bo dopiero zaczynam przygode z php
PROSZE O POMOC!!!

Dwa lata na Forum i dopiero "zaczynasz'? Gdybyś użył wyszukiwarki forumowej lub Google, dowiedziałbyś się tego bez zakładania wątku. Nie używaj w tytułach "pomocy", i bez tego wiadomo. Pisz po polsku, Twoje wypowiedzi są mało czytelne, ze względu na brak znaków interpunkcyjnych.

NOTICE to nie błąd, to komunikat: ZOBACZ.
mejo33
Tak dwa lata ale mialem sporą przerwe i teraz tak szczeze nie pamietam nawet podstaw.
Czy ktos bedzie w stanie mi pomoc? albo jakos lepiej nakierowac?
Kshyhoo
Przecież już dostałeś dwie podpowiedzi. Żeby pozbyć się komunikatu NOTICE, musisz wcześniej zadeklarować zmienną, albo tak spreparować kod, żeby PHP "myślało", że ta zmienna została zadeklarowana (isset).
mejo33
Tu nie chodzi o usuniecie komunikatu, bo bledy mozna wylaczyc. Ale usuwanie tych newsow nie dziala po kliknieciu na ikonke usun po prostu znika i nic nie robi, z tego co widze js tu jest za to odpowiedzialny, hmm?
Kshyhoo
I przychodzisz na Forum z taką pierdołą? Nie potrafisz połączyć tych dwóch faktów? Nie masz zadeklarowanej zmiennej i nie usuwa Ci tego newsa, więc zapewne przez $_GET nie przechodzi ID. Sprawdź, to chyba umiesz?
mejo33
No faktycznie $_GET nic nie zwraca, hmm? dlaczego? jak go zadeklarowac?
mar1aczi
$_GET nie trzeba deklarować, jest to tablica globalna. Co niby $_GET ma Ci zwrócić?
Kshyhoo
Cytat(mejo33 @ 7.01.2014, 12:38:20 ) *
No faktycznie $_GET nic nie zwraca, hmm? dlaczego? jak go zadeklarowac?

No jakoś chcesz usunąć rekord, więc to idzie z formularza, jak przypuszczam jakiś przycisk "USUŃ" wink.gif
mejo33
Nie powinien zwrocic ID newsa w url po kliknieciu?
Kshyhoo
Cytat(mejo33 @ 7.01.2014, 12:58:50 ) *
Nie powinien zwrocic ID newsa w url po kliknieciu?

Jak pokażesz kod tego formularza, to może się dowiesz. Inaczej idź do czarodziej.gif
mar1aczi
Kshyhoo - autor tematu nie ma formularza. Jest tabela z "a href" dla edycji i onClick w js dla usunięcia elementu.
mejo33
Ok temat do zakniecia, juz sobie sam poradzilem ale dzieki za rady:)
Kshyhoo
No cokolwiek, co pośle "delete" do $_GET.
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.