Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [MySQL]Czy da się 2 zapytania do bazy zrobić w 1 zapytanie?, czy jest to możliwe?
casperii
post 22.05.2015, 20:27:30
Post #1





Grupa: Zarejestrowani
Postów: 681
Pomógł: 28
Dołączył: 14.08.2014

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


Czy da się to zrobić jednym zapytaniem ?

  1. $email = checkValues($_POST['email']);
  2.  
  3. $resultObecny = "SELECT `id_user`, `email` FROM `users` WHERE `id_user`='$id_user'" or die('zapytanie :'.$result.' blad:'.mysql_error());
  4. $sqlObecny = mysql_query($resultObecny);
  5. $obecnyMail = mysql_fetch_array($sqlObecny,MYSQL_ASSOC);
  6. $staryMail = $obecnyMail['email'];
  7.  
  8. if($email != $staryMail){
  9. $resultEmail = "SELECT `email` FROM `users` WHERE `email`='$email'" or die('zapytanie :'.$result.' blad:'.mysql_error());
  10. $sqlEmail = mysql_query($resultEmail);
  11. if(mysql_num_rows($sqlEmail)!=0){
  12. $status = "error";
  13. $message = "Wpisany adres e-mail jest już zajęty.";
  14. }
  15. }


Czyli chodzi o to by nie updatowało mi maila który jest już w bazie. Tylko sprawdzam ,czy taki email jest w bazie , jeżeli nie ma jest możliwość wpisania innego i zaktulizowanie go.
Reasumując: w pierwszy zapytaniu, sprawdzam jaki adres email użytkownik miał. Jeżeli podał w poscie inny adres niż miał w bazie następuje drugie zapytanie i szukanie czy taki adres jaki podał poprzez post istnieje w bazie. Jeżeli nie istnieje przechodzimy dalej, jeżeli istnieje wywali error.

Ten post edytował casperii 22.05.2015, 20:37:14
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
Kshyhoo
post 22.05.2015, 20:39:20
Post #2





Grupa: Opiekunowie
Postów: 3 855
Pomógł: 317
Dołączył: 4.01.2005
Skąd: że




Zasada chyba taka:
  1. $wynik=mysql_query("SELECT * FROM tabela WHERE dane='$szukane'");
  2.  
  3. if (mysql_num_rows($wynik)>0) {
  4. echo "Podany tekst już istnieje w bazie!";
  5. }
  6. if (mysql_num_rows($wynik)==0) {
  7. mysql_query("INSERT INTO tabela (dane) VALUES ('$szukane')");
  8. echo "Podany tekst został dopisany!";
  9. }


--------------------
Go to the top of the page
+Quote Post

Posty w temacie
- casperii   [MySQL]Czy da się 2 zapytania do bazy zrobić w 1 zapytanie?   22.05.2015, 20:27:30
- - Kshyhoo   Zasada chyba taka: [PHP] pobierz, plaintext $wynik...   22.05.2015, 20:39:20
|- - casperii   Cytat(Kshyhoo @ 22.05.2015, 21:39:20 ...   22.05.2015, 20:45:08
- - mmmmmmm   [PHP] pobierz, plaintext $resultEmail = "SELE...   22.05.2015, 21:25:25
|- - b4rt3kk   Cytat(mmmmmmm @ 22.05.2015, 22:25:25 ...   22.05.2015, 23:47:08
|- - Xelah   Ustaw pole email jako unique i możesz po prostu st...   23.05.2015, 08:33:55
|- - b4rt3kk   Cytat(Xelah @ 23.05.2015, 09:33:55 ) ...   23.05.2015, 09:31:43
|- - Xelah   Cytat(b4rt3kk @ 23.05.2015, 10:31:43 ...   23.05.2015, 09:50:30
|- - b4rt3kk   Cytat(Xelah @ 23.05.2015, 10:50:30 ) ...   23.05.2015, 10:16:27
|- - Xelah   Cytat(b4rt3kk @ 23.05.2015, 11:16:27 ...   23.05.2015, 11:35:32
|- - b4rt3kk   Cytat(Xelah @ 23.05.2015, 12:35:32 ) ...   23.05.2015, 11:38:11
|- - Xelah   Cytat(b4rt3kk @ 23.05.2015, 12:38:11 ...   23.05.2015, 13:03:53
|- - b4rt3kk   Cytat(Xelah @ 23.05.2015, 14:03:53 ) ...   23.05.2015, 15:32:28
|- - Xelah   Cytat(b4rt3kk @ 23.05.2015, 16:32:28 ...   23.05.2015, 20:35:31
- - casperii   Ok, żeby nie pisać kolejnego tematu, to korzystają...   23.05.2015, 10:32:44
- - b4rt3kk   Błąd połączenia z bazą danych, w wielu aplikacjach...   23.05.2015, 10:57:14
- - robertpiaty   Odnośnie pierwszego wpisu to żeby było jedno zapyt...   23.05.2015, 11:03:22
- - casperii   A to ja mam zrobione , że w razie błędu 404, 500 ,...   23.05.2015, 11:49:02
- - robertpiaty   Silnym i jak dla mnie wystarczającym argumentem za...   23.05.2015, 11:57:46
|- - casperii   Cytat(robertpiaty @ 23.05.2015, 12:57...   23.05.2015, 11:59:40
- - robertpiaty   Zależy jaką stronę tworzysz. Nie ma sensu z armaty...   23.05.2015, 12:04:03
- - salfunglandyare   wracajac do tematu: [SQL] pobierz, plaintext SELEC...   24.05.2015, 02:13:04
- - aachi   Salfunglandyare chyba odpowiedział już na twoje py...   26.05.2015, 00:19:46


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 Wersja Lo-Fi Aktualny czas: 20.06.2025 - 15:51