Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [MySQL][PHP]durny błąd - rekordy dodawane do bazy dublują się...
Forum PHP.pl > Forum > Przedszkole
hyhyhy
Witam,
Rutynowo tworzyłem sobie skrypt dodający po prostu jedno zdanie do bazy i nagle okazało się, że rekordy pojawiają się podwójnie. W zasadzie to nie zawsze, bo czasem pojawia się pusty rekord po dodaniu innego, a czasem działa jak nalezy. Czy ktoś może mi powiedzieć, co robię nie tak, bo jestem ślepy chyba smile.gif

  1. if (isset($_GET["tresc"]))
  2. {
  3. if (!empty($_GET["tresc"]))
  4. {
  5. $tresc = mysql_real_escape_string(htmlspecialchars($_GET["tresc"]));
  6. $autor = mysql_real_escape_string(htmlspecialchars($_GET["autor"]));
  7.  
  8. //----------------------------------POLACZENIE
  9.  
  10. $data = date('d.m.Y H:i'); // 09.07.2009 22:30
  11. //$sql = "INSERT INTO `komentarze` (`tresc`,`autor`,`data`) VALUES ('$tresc','$autor','$data')";
  12. $result = mysql_query("INSERT INTO `komentarze` (`tresc`,`autor`,`data`) VALUES ('$tresc','$autor','$data')");
  13. if ($result == true)
  14. {echo 'Pomyślnie dodano: <b>'.$tresc.' </b>';
  15. if (!empty($autor)) {echo'<b><br>Dziękujemy, '.$autor.' !</b>';}
  16. } else {echo 'Przepraszamy, wystąpił błąd! <a href="dodaj.html">Wróć do poprzedniej strony</a> i spróbuj ponownie! ';}
  17.  
  18. echo '<a href="index.php">Powrót do strony głownej.</a>';
  19.  
  20. }
  21. else {echo 'Błąd! Nie wpisano żadnego tekstu! <a href="dodaj.html">POWRÓT</a>';}
  22. }
  23. else {echo 'Błąd! Nie wpisano żadnego tekstu! <a href="dodaj.html">POWRÓT</a>';}
  24. ?>



ten powdójny if na isset i empty spowodowany jest właśnie tym, że nie wiedziałem co nie gra i zacząłem zmieniać co się da po kodzie (stąd też wyckomentowane $sql = itd )
papryk
Na ślepo strzelam, że to przez twój sprzęt :] skoro posty Ci się dublują to może tak samo działa z rekordami. No, ale pewnie istnieje jakieś lepsze wytłumaczenie.

@edit : kod wygląda na poprawny
hyhyhy
100% nie wina sprzętu, bo dodawałem komentarze z dwóch kompów u siebie, a potem dodawał kolega od siebie z domu i problem był taki sam


No i wygląda to zwykle tak: dodaje coś, np. "aaa". jest ok. (sortuje po dacie dodania) Zaraz potem dodaje "bbb" i w komentarzach wyświetla się "aaa", "aaa", "bbb". Potem dodam "ccc", to komentarze wyglądają "aaa" "aaa" "bbb" "ccc" "bbb" "ccc", ewentualnie wejdzie coś pustego. Chyba, że to moja baza danych ma coś nie tak?


a jakby w tabeli ustawic tresc zamaist id na primary key?
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.