Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [MySQL] Update + Delete dubli
boro11
post
Post #1





Grupa: Zarejestrowani
Postów: 283
Pomógł: 11
Dołączył: 9.07.2010
Skąd: Warszawa

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


Witam!

Mam skrypt, który sprawdza mi zapisy ludzi i działa całkiem sprawnie. Ma niestety jedną wadę. Jeśli ktoś sam nie doda sobie strony to skrypt automatycznie dodane to do bazy, niestety często jest tak, że ktoś ma inną nazwę użytkownika w moim serwisie i w innych serwisach do których dołączył.

Powstaje wtedy taka sytuacja:

(IMG:http://clip2net.com/clip/m106573/thumb640/1334438984-clip-8kb.png)

Gdzie rekord drugi był w tabeli wcześniej, dlatego rekord pierwszy ma status "Decline" dzieje się tak dlatego, że się dublują. Chciałbym aby w sytuacji takiej, że już istnieje taki "nickinsite" jak podał user aktualizowało ten bieżący zamiast dodawać nowy rekord. Do zaktualizowania w takim wypadku jest tylko wartość "nick" oraz usunięcie nie potrzebnego (1 rekordu).

Jest jakaś komenda w mysql która wyłapie takie duble i wykona to co podałem wyżej?
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
SUICIDE
post
Post #2





Grupa: Zarejestrowani
Postów: 43
Pomógł: 0
Dołączył: 31.10.2012
Skąd: Gorzów Wlkp

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


Witam napiszę tutaj bo nie chcę robić dubli.
Zaznaczę, że dopiero zaczynam bawić się w PHP. Więc proszę o wyrozumiałość.

Mam zrobiony formularz Dodawania newsów na danej podstronie wraz z opcjami usuń i edytuj.
Wyświetlanie newsów działa bardzo dobrze, kasowanie też. lecz problem pojawia się w edycji.

Poniżej fragment mojego kodu.

  1. if ($_GET['akcja']=='edit') {
  2.  
  3. $id_do_edycji = $_GET['id'];
  4.  
  5. $zapytanie = "SELECT * id=$id_do_edycji FROM home";
  6. $wynik1 = mysql_query("SELECT * FROM home where id=$id_do_edycji");
  7. while($r = mysql_fetch_array($wynik1)) {
  8.  
  9. $temat1 = stripslashes($r[temat]);
  10. $tresc1 = stripslashes($r[tresc]);
  11. echo '
  12. <form action="edit_home.php" method="post">
  13.  
  14. <label for="temat"><font color=red size=3>Edit Temat:</font></label> <input type=text name=temat value="'.$temat1.'" style="width:600px;"> <br>
  15. <label for="tresc"><font color=red size=3>Edit Tresc:</font></label> <textarea name="tresc" noresize style="width:600px;height:120px;">'.$tresc1.'</textarea><br>
  16.  
  17. <input type=submit name=submit2 value=submit2 />
  18. </form>
  19. ';
  20.  
  21. $submit2 = $_POST['submit2'];
  22. if (isset($submit2)){
  23. $dodaj2 = mysql_query("UPDATE home SET `temat`='xxxx1111xxxxxx', `tresc`='xxxxxxx' WHERE `id`='36'");
  24. }


Zapytanie dodałem takie testowe w celu sprawdzenia czy w ogóle zadziała zapytanie mysql. Oczywiście mając newsa z id =1

Ten post edytował SUICIDE 31.10.2012, 22:02:51
Go to the top of the page
+Quote Post

Posty w temacie


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

 



RSS Aktualny czas: 14.10.2025 - 20:54