Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [mysql][php] Odpornosc na F5
Forum PHP.pl > Forum > Przedszkole
lukash82
Witam. Zrobilem sobie taki prosty panel zarzadzania menu na stronie. Wszystko oparte jest o formularz, ktory wysyla odpowiednia dane do bazy a potem odpowienide zapytanie do bazy generuje mi menu. I teraz pytanie moje jest takie. Otwieram strone admina, dodaje jakis rekord i po dodaniu mam ustawione zeby mi wrocil na glowna strone admina z wyswietlonymi wszystkimi rekordami z bazy wraz z tym nowym. Gdy teraz wcisne F5 to rekordy same sie dodaja, takie jak ostatni dodany. Jak uodpornic ten skrypt na takie dzialanie? Ponizej podaje jak to wyglada w moim przypadku (troche to musialem zmodyfikowac i powywalac pare nipotrzebnych opcji case)
plik admin.php
  1. <?php
  2. $zapytanie="SELECT * FROM menu";
  3. $wynik=mysql_query($zapytanie);
  4. while ($row = mysql_fetch_array($wynik)) 
  5. {
  6. extract($row);
  7. echo "<span>" . echo $menu . "</span><span><a href='dodaj.php?action=add>[ADD]</a></span>";
  8. }
  9. ?>

plik dodaj.php
  1. <?php
  2. switch ($_GET['action'])
  3. {
  4. case "add":
  5. ?>
  6. <form action="modyfikacja.php?action=addmenu" method="post" />
  7. dodaj do menu: <input type="text" name="menu" />
  8. <input type="submit" name="dodaj" value="Dodaj" />
  9. </form>
  10. <?php
  11. break;
  12. ?>

plik modyfikacja.php
  1. <?php
  2. switch ($_GET['action'])
  3. {
  4. case "add":
  5. $sql = "INSERT INTO menu (menu)
  6. VALUES ('" . $_POST['menu'] . "')";
  7. $message = "Dodano menu!";
  8. break;
  9. }
  10. if (isset($sql) && !empty ($sql))
  11. {
  12. echo "<!--". $sql ."-->";
  13. $result = mysql_query($sql) or die (mysql_error());
  14. echo '<span class="b red">' .$message . '</span>';
  15. include ('admin.php');
  16. }
  17. ?>

Mam nadzieje, ze nie zamotalem mojego pytania zbytnio. Jesli macie jakies pomysly na to to prosze o jakies podpowiedzi. Pozdrawiam, Łukasz.
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.