Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Odświeżanie strony przy zmiennej ?id=1
Vinn
post 3.07.2008, 16:53:37
Post #1





Grupa: Zarejestrowani
Postów: 2
Pomógł: 0
Dołączył: 3.07.2008

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


Mam następującą funkcję, która ma za zadanie wyświetlić zapisane w bazie danych newsy:

funkcje_newsy.php
  1. <?php
  2. function wyswietl_liste_newsow()
  3. {
  4. polaczenie();
  5. $zapytanie = "SELECT * FROM `newsy` ORDER BY `data` DESC";
  6. $wyslij = mysql_query($zapytanie);
  7.  
  8. echo "
  9. <div class=\"newsy_naglowek_tytul\">Zapisane newsy</div>
  10. <div class=\"pojemnik_tabel\">
  11. <table class=\"tabelka\">
  12. <tr class=\"head\">
  13. <td>Id</td>
  14. <td>Tytuł newsa</td>
  15. <td>Data publikacji</td>
  16. <td>Aktywne</td>
  17. <td>Akcja</td>
  18. </tr>
  19. ";
  20. $i = 1;
  21. while ($wiersz = mysql_fetch_array($wyslij))
  22. {
  23. if ($wiersz['aktywny'] == 1)
  24. {
  25. $aktywne = "Tak";
  26. $aktywacja = "Deaktywuj";
  27. }
  28. else
  29. {
  30. $aktywne = "Nie";
  31. $aktywacja = "Aktywuj";
  32. }
  33. <tr>
  34. <td class=\"komorka_center\">".$i."</td>
  35. <td class=\"komorka\">&nbsp;".$wiersz['tytul']."</td>
  36. <td class=\"komorka_center\">".$wiersz['data']."</td>
  37. <td class=\"komorka_center\">".$aktywne."</td>
  38. <td class=\"komorka_center\">Edytuj | <a href=\"aktywacja.php?id=".$wiersz['id']."\">".$aktywacja." </a>| Usuń</td>
  39. </tr>";
  40. $i++;
  41. }
  42. </table>
  43. </div>
  44. ";
  45. }
  46. ?>


Plik aktywacja.php
  1. <?
  2. require_once('pokaz.php');
  3. require_once('funkcje_newsy.php');
  4.  
  5.  
  6. pokaz_logo();
  7. pokaz_menu();
  8. news_head();
  9.  
  10. if (is_numeric($_GET['id']) && !empty($_GET['id']))
  11. {
  12. $id = $_GET['id'];
  13. polaczenie();
  14. $zapytanie = "SELECT `aktywny` FROM `newsy` WHERE `id` = '".$id."' LIMIT 1";
  15. $wyslij = mysql_query($zapytanie);
  16. $wiersz = mysql_fetch_array($wyslij);
  17.  
  18. if ($wiersz['aktywny'] == 1)
  19. {
  20. $zapytanie = "UPDATE `newsy` SET `aktywny` = '0' WHERE `id` = '".$id."'";
  21. $wyslij = mysql_query($zapytanie);
  22.  
  23. if ($wyslij)
  24. {
  25. echo '<div class="ok">News zdeaktywowany poprawnie.</div>';
  26. }
  27. else
  28. {
  29. echo '<div class="zle">Bład przy zapisie danych do bazy danych</div>';
  30. }
  31. }
  32. else
  33. {
  34. $zapytanie = "UPDATE `newsy` SET `aktywny` = '1' WHERE `id` = '".$id."'";
  35. $wyslij = mysql_query($zapytanie);
  36.  
  37. if ($wyslij)
  38. {
  39. echo '<div class="ok">News aktywowany poprawnie.</div>';
  40. }
  41. else
  42. {
  43. echo '<div class="zle">Bład przy zapisie danych do bazy danych</div>';
  44. }
  45. header ('Location: index-adm.php');
  46. }
  47. }
  48. else
  49. echo "Zmienna nie jest identyfikatorem ID";
  50. wyswietl_liste_newsow();
  51. news_end();
  52. panel_head();
  53. pokaz_panel_logowania();
  54. pokaz_menu_admina();
  55. pokaz_rajdy();
  56. pokaz_progress();
  57. pokaz_stopke();
  58. ?>


Teraz po kliknięciu w link AKTYWUJ, który posiada adres aktywacja.php?id=1 news jest albo aktywowany/deaktywowany. Problem z tym, że jak ktoś aktywuje newsa, a następnie kliknie klawisz F5, to news zostanie ponownie zdeaktywowany/aktywowany.

Czy jest jakiś sposób, aby uniknąć tego typu działania?

Jeżeli ktoś ma jakieś wskazówki, bądź gotowe rozwiązanie - będę wdzięczny.

Z góry dziękuję za wszelkie odpowiedzi.
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
batman
post 3.07.2008, 17:34:38
Post #2





Grupa: Moderatorzy
Postów: 2 921
Pomógł: 269
Dołączył: 11.08.2005
Skąd: 127.0.0.1




Temat wałkowany wiele razy na forum. Wystarczy poszukać.
Zamykam.


--------------------
I would love to change the world, but they won't give me the source code.
My software never has bugs. It just develops random features.
Go to the top of the page
+Quote Post

Posty w temacie


Closed TopicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Wersja Lo-Fi Aktualny czas: 23.06.2025 - 04:15