• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

jak przypisac do zmiennej w kodzie wynik zapytania do bazy mqsl?

Object Storage Arubacloud
0 głosów
1,336 wizyt
pytanie zadane 23 kwietnia 2017 w SQL, bazy danych przez Krzysztofson Użytkownik (620 p.)

Witam,

Mam w mysql bazę danych składającą się z 3 tabel, mój problem polega na tym, że piszę zapytanie wyszukujące do pierwszej tabeli o nazwie 'klienci' i wyciągam z niej idklienta, następnie chce w kolejnym zapytaniu wyciągnąć z innej tabeli o nazwie 'zamówienia' wszystkie rekordy, które mają w sobie idklienta takie jak to z poprzedniego zapytania, czyli po prostu chce znając idklienta które wyszukałem jednym zapytaniem, wykorzystać do wyświetlenia jego wszystkich zamówień z innej tabeli. Niestety nie mam pojęcia jak to zrobić, myślałem żeby wynik pierwszego zapytania przypisać do jakieś zmiennej, którą wykorzystam w drugim zapytaniu, ale nie potrafię tego zrealizować. Proszę o pomoc.smiley

2 odpowiedzi

+1 głos
odpowiedź 23 kwietnia 2017 przez manjaro Nałogowiec (37,390 p.)
Robisz to jednym zapytaniem nie ma potrzeby wyciągać najpierw id przypisywać do zmiennej i tworzyć drugie zapytanie

SELECT * FROM zamówienia LEFT JOIN klienci WHERE pesel='%s' AND haslo='%s' AND  zamówienia.id_klienta = klienci.id_klienta"
komentarz 23 kwietnia 2017 przez Krzysztofson Użytkownik (620 p.)
Dzięki za odpowiedz, a czy wiesz jak wyeliminować błąd z mojego kodu ?
komentarz 23 kwietnia 2017 przez manjaro Nałogowiec (37,390 p.)
Niestety nie znam się na PHP
0 głosów
odpowiedź 23 kwietnia 2017 przez CzikaCarry Szeryf (75,340 p.)
Poczytaj, co to są relacje i klucze obce i jak je wykorzystać.
komentarz 23 kwietnia 2017 przez Krzysztofson Użytkownik (620 p.)

napisalem taki kod aby zrealizowac to zadanie: 

if ($rezultat = @$polaczenie->query(sprintf("SELECT idklienta FROM klienci WHERE pesel='%s' AND haslo='%s' ",mysqli_real_escape_string($polaczenie, $login),mysqli_real_escape_string($polaczenie, $haslo))))
		{
		
			$ilu_userow= $rezultat->num_rows;
			if($ilu_userow>0)
			{
				$wiersz= $rezultat->fetch_assoc();
				$_SESSION['idklienta'] = $wiersz['idklienta'];
				$_SESSION['pesel'] = $wiersz['pesel'];
				$_SESSION['zalogowany']= true;
				
				$polaczenie2 = @new mysqli($host, $db_user, $db_password, $db_name);
			
				if ($polaczenie->connect_errno!=0)
					{
						echo "Error: ".$polaczenie->connect_errno;
					}
				else 
				{
					$rezultat2= @$polaczenie2->query(sprintf("SELECT * FROM ubezpieczenia WHERE idklienta=$_SESSION['idklienta']"))
					
					$wiersz2= $rezultat2->fetch_assoc();
					
					
						
					
					$_SESSION['idubezpieczenia'] = $wiersz['ubezpieczenie'];
					$_SESSION['nrRej'] = $wiersz['nrRej'];
					

 

dostaje taki komunikat o bledzie: 


Parse error: syntax error, unexpected '' (T_ENCAPSED_AND_WHITESPACE), expecting identifier (T_STRING) or variable (T_VARIABLE) or number (T_NUM_STRING) in C:\xampp\htdocs\pzu\proceslogowania.php on line 38

linia nr 38 to ta: 

$rezultat2= @$polaczenie2->query(sprintf("SELECT * FROM ubezpieczenia WHERE idklienta=$_SESSION['idklienta']"))

 

komentarz 23 kwietnia 2017 przez CzikaCarry Szeryf (75,340 p.)
Używaj PDO i prepared statements, wyjdzie Ci to na dobre.
komentarz 30 kwietnia 2017 przez Excalibur Początkujący (400 p.)
Nie potrzeba sprintf ;)

Podobne pytania

0 głosów
2 odpowiedzi 110 wizyt
pytanie zadane 1 stycznia 2023 w PHP przez dee Początkujący (360 p.)
0 głosów
2 odpowiedzi 952 wizyt
pytanie zadane 26 kwietnia 2016 w PHP przez bart1996 Początkujący (360 p.)
0 głosów
0 odpowiedzi 304 wizyt
pytanie zadane 12 kwietnia 2022 w SQL, bazy danych przez Piotr Popławski Użytkownik (610 p.)

92,556 zapytań

141,404 odpowiedzi

319,563 komentarzy

61,942 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj.

Akademia Sekuraka

Kolejna edycja największej imprezy hakerskiej w Polsce, czyli Mega Sekurak Hacking Party odbędzie się już 20 maja 2024r. Z tej okazji mamy dla Was kod: pasjamshp - jeżeli wpiszecie go w koszyku, to wówczas otrzymacie 40% zniżki na bilet w wersji standard!

Więcej informacji na temat imprezy znajdziecie tutaj. Dziękujemy ekipie Sekuraka za taką fajną zniżkę dla wszystkich Pasjonatów!

Akademia Sekuraka

Niedawno wystartował dodruk tej świetnej, rozchwytywanej książki (około 940 stron). Mamy dla Was kod: pasja (wpiszcie go w koszyku), dzięki któremu otrzymujemy 10% zniżki - dziękujemy zaprzyjaźnionej ekipie Sekuraka za taki bonus dla Pasjonatów! Książka to pierwszy tom z serii o ITsec, który łagodnie wprowadzi w świat bezpieczeństwa IT każdą osobę - warto, polecamy!

...