Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [PHP][MySQL] Jezeli istnieje rekord to nie dodaje.
flaq1991
post
Post #1





Grupa: Zarejestrowani
Postów: 89
Pomógł: 0
Dołączył: 11.12.2012

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


Witam mógłby ktoś mi pomóc ? potrzebuję przerobić ten skrypt tak żeby sprawdzał czy rekord o podanym loginie istnieje jeżeli tak to go nie doda oto skrypt :

  1. <?php
  2. $con = mysql_connect("host","login","haslo");
  3. if (!$con)
  4. {
  5. die('Nie moge polaczyc: ' . mysql_error());
  6. }
  7. mysql_select_db("baza", $con);
  8. $sql="INSERT INTO uzytkownicy (Login, Haslo)
  9. VALUES
  10. ('$_GET[Login]','$_GET[Haslo]')";
  11. if (!mysql_query($sql,$con))
  12. {
  13. die('Error: ' . mysql_error());
  14. }
  15. echo "Udalo sie !";
  16. ?>
Go to the top of the page
+Quote Post
2 Stron V   1 2 >  
Start new topic
Odpowiedzi (1 - 19)
sajegib
post
Post #2





Grupa: Zarejestrowani
Postów: 352
Pomógł: 59
Dołączył: 16.01.2013

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


google ma dla ciebie milion gotowców, sposobów jest wieeeele, możesz np przeprojektowac tabele i zrobić konkretne pole UNIQUE ; )
Go to the top of the page
+Quote Post
flaq1991
post
Post #3





Grupa: Zarejestrowani
Postów: 89
Pomógł: 0
Dołączył: 11.12.2012

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


Szukałem na google ale nic konkretnego znaleźć nie mogłem dlatego napisałem tutaj biggrin.gif
Go to the top of the page
+Quote Post
-kubek3898-
post
Post #4





Goście







  1. $result = mysql_query("SELECT * FROM uzytkownicy WHERE login='$_GET['login']'");
  2.  
  3. if(mysql_num_rows($result)!=0) echo 'Już istnieje konto z takim loginem!';
Go to the top of the page
+Quote Post
flaq1991
post
Post #5





Grupa: Zarejestrowani
Postów: 89
Pomógł: 0
Dołączył: 11.12.2012

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


Nie idzie wywalają jakieś syntaxy nie wiem co jest ;/

  1. <?php
  2. $con = mysql_connect("","","");
  3. if (!$con)
  4. {
  5. die('Nie moge polaczyc: ' . mysql_error());
  6. }
  7. mysql_select_db("", $con);
  8.  
  9.  
  10. $query = ("SELECT * FROM uzytkownicy WHERE login='$_GET['login']'");
  11. $result = mysql_query($query) or die(mysql_error());
  12.  
  13. if (mysql_num_rows($result) )
  14. {
  15. print 'Jest już w tabeli';
  16. }
  17. else
  18. {
  19. print 'Pomyslnie dodano';
  20. }
  21.  
  22. $sql="INSERT INTO uzytkownicy (Login, Haslo)
  23. VALUES
  24. ('$_GET[Login]','$_GET[Haslo]')";
  25.  
  26. if (!mysql_query($sql,$con))
  27. {
  28. die('Error: ' . mysql_error());
  29. }
  30. echo "Udalo sie !";
  31.  
  32. ?>


Ten post edytował flaq1991 24.02.2013, 22:49:46
Go to the top of the page
+Quote Post
Posio
post
Post #6





Grupa: Zarejestrowani
Postów: 417
Pomógł: 44
Dołączył: 23.06.2011

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


  1. $query = "SELECT * FROM uzytkownicy WHERE login = '".$_GET['login']."'";


Jak wywala SYNTAXY to je czytaj i naucz się rozumieć to co wyskakuje... robisz niepotrzebny SPAM.
Go to the top of the page
+Quote Post
flaq1991
post
Post #7





Grupa: Zarejestrowani
Postów: 89
Pomógł: 0
Dołączył: 11.12.2012

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


Zrobiłem kod w ten sposób i pisze że dodano do bazy lecz nic nie dodaje wiecie dlaczego ? sad.gif

  1. <?php
  2. $con = mysql_connect("","","");
  3. if (!$con)
  4. {
  5. die('Nie moge polaczyc: ' . mysql_error());
  6. }
  7. mysql_select_db("", $con);
  8.  
  9.  
  10. $query = "SELECT * FROM uzytkownicy WHERE login = '".$_GET['login']."'";
  11. $result = mysql_query($query) or die(mysql_error());
  12.  
  13. if (mysql_num_rows($result) )
  14. {
  15. print 'Jest już w tabeli';
  16. }
  17. else
  18. {
  19. $query ="INSERT INTO uzytkownicy (Login, Haslo)
  20. VALUES
  21. ('$_GET[Login]','$_GET[Haslo]')";
  22. print 'Pomyslnie dodano';
  23. }
  24.  
  25. ?>
Go to the top of the page
+Quote Post
_Borys_
post
Post #8





Grupa: Zarejestrowani
Postów: 587
Pomógł: 190
Dołączył: 5.02.2011
Skąd: 64-800

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


Przecież wyżej tobie pisał jak się wstawia
  1. $query ="INSERT INTO uzytkownicy (Login, Haslo) VALUES ('{$_GET['Login']}','{$_GET['Haslo']}')";


Ten post edytował _Borys_ 25.02.2013, 00:28:21
Go to the top of the page
+Quote Post
flaq1991
post
Post #9





Grupa: Zarejestrowani
Postów: 89
Pomógł: 0
Dołączył: 11.12.2012

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


Dobrze poprawiłem to lecz nic nie dodaje jak powinno pisze tylko ze pomyślnie ; o

  1. <?php
  2. $con = mysql_connect("","","");
  3. if (!$con)
  4. {
  5. die('Nie moge polaczyc: ' . mysql_error());
  6. }
  7. mysql_select_db("", $con);
  8. $query = "SELECT * FROM uzytkownicy WHERE login = '".$_GET['login']."'";
  9. $result = mysql_query($query) or die(mysql_error());
  10. if (mysql_num_rows($result) )
  11. {
  12. print 'Jest już w tabeli';
  13. }
  14. else
  15. {
  16. $query ="INSERT INTO uzytkownicy (Login, Haslo) VALUES ({$_GET['Login']},{$_GET['Haslo']})";
  17. print 'Pomyslnie dodano';
  18. }
  19.  
  20. ?>
Go to the top of the page
+Quote Post
kamil_lk
post
Post #10





Grupa: Zarejestrowani
Postów: 325
Pomógł: 33
Dołączył: 31.05.2008

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


bo nie wykonujesz tego zapytania.. użyj funkcji mysql_query przy zapytaniu
  1. $query =mysql_query("INSERT INTO uzytkownicy (Login, Haslo) VALUES ({$_GET['Login']},{$_GET['Haslo']})");
  2. if($query) print 'Pomyślnie dodano';
  3. else print 'Wystąpił błąd';


Ten post edytował kamil_lk 24.02.2013, 23:16:16
Go to the top of the page
+Quote Post
flaq1991
post
Post #11





Grupa: Zarejestrowani
Postów: 89
Pomógł: 0
Dołączył: 11.12.2012

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


kamil_lk pisze że wystąpił błąd nie wiem dlaczego ...
Go to the top of the page
+Quote Post
kamil_lk
post
Post #12





Grupa: Zarejestrowani
Postów: 325
Pomógł: 33
Dołączył: 31.05.2008

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


To dopisz po zapytaniu or die(mysql_error()) i będziesz wiedział dlaczego.

  1. $query =mysql_query("INSERT INTO uzytkownicy (Login, Haslo) VALUES ({$_GET['Login']},{$_GET['Haslo']})") or die(mysql_error());


Ten post edytował kamil_lk 24.02.2013, 23:20:36
Go to the top of the page
+Quote Post
flaq1991
post
Post #13





Grupa: Zarejestrowani
Postów: 89
Pomógł: 0
Dołączył: 11.12.2012

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


kod wygląda tak :

  1. <?php
  2. $con = mysql_connect("","","");
  3. if (!$con)
  4. {
  5. die('Nie moge polaczyc: ' . mysql_error());
  6. }
  7. mysql_select_db("", $con);
  8. $query = "SELECT * FROM uzytkownicy WHERE login = '".$_GET['login']."'";
  9. $result = mysql_query($query) or die(mysql_error());
  10. if (mysql_num_rows($result) )
  11. {
  12. print 'Rekord już istnieje !....';
  13. }
  14. else
  15. {
  16. $query =mysql_query("INSERT INTO uzytkownicy (Login, Haslo) VALUES ({$_GET['Login']},{$_GET['Haslo']})") or die(mysql_error());
  17. if($query) print 'Pomyślnie dodano';
  18. else print 'Wystapil error';
  19. }
  20. ?>


a taki error wywaliło
You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ')' at line 1
Go to the top of the page
+Quote Post
kamil_lk
post
Post #14





Grupa: Zarejestrowani
Postów: 325
Pomógł: 33
Dołączył: 31.05.2008

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


Cytat(Posio @ 24.02.2013, 22:53:34 ) *
Jak wywala SYNTAXY to je czytaj i naucz się rozumieć to co wyskakuje... robisz niepotrzebny SPAM.


Ten post edytował kamil_lk 24.02.2013, 23:33:21
Go to the top of the page
+Quote Post
flaq1991
post
Post #15





Grupa: Zarejestrowani
Postów: 89
Pomógł: 0
Dołączył: 11.12.2012

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


Pisze że mam błąd w pierwszej lini tylko gdzie może tam być błąd skoro jest tam <?php ? ;o
Go to the top of the page
+Quote Post
kamil_lk
post
Post #16





Grupa: Zarejestrowani
Postów: 325
Pomógł: 33
Dołączył: 31.05.2008

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


Nie. Jest błąd składniowy zapytania.

  1. $query = mysql_query("INSERT INTO `uzytkownicy`(`Login`, `Haslo`) VALUES('".$_GET['Login']."', '".$_GET['Haslo']."'") or die(mysql_error());
Go to the top of the page
+Quote Post
flaq1991
post
Post #17





Grupa: Zarejestrowani
Postów: 89
Pomógł: 0
Dołączył: 11.12.2012

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


jednak nie, nadal występuje ten sam error
You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '' at line 1
Go to the top of the page
+Quote Post
Posio
post
Post #18





Grupa: Zarejestrowani
Postów: 417
Pomógł: 44
Dołączył: 23.06.2011

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


a może warto respektować wielkość liter zmiennych / tablic - zawartości ? <facepalm>

Ten post edytował Posio 25.02.2013, 00:30:36
Go to the top of the page
+Quote Post
_Borys_
post
Post #19





Grupa: Zarejestrowani
Postów: 587
Pomógł: 190
Dołączył: 5.02.2011
Skąd: 64-800

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


Nawiasu brakuje przed or w poście @kamil_lk. Swój poprzedni post też poprawiłem, teraz powinno działać.
Go to the top of the page
+Quote Post
flaq1991
post
Post #20





Grupa: Zarejestrowani
Postów: 89
Pomógł: 0
Dołączył: 11.12.2012

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


Zrobiłem dokładnie tak :

$query =mysql_query("INSERT INTO uzytkownicy (Login, Haslo) VALUES ({$_GET['Login']},{$_GET['Haslo']})") or die(mysql_error());
I jest nadal to samo nie wiem już co jest ...
Go to the top of the page
+Quote Post

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

 



RSS Aktualny czas: 20.08.2025 - 19:17