Przekazywanie wartości do bazy za pomocą zmiennych

Antoni Kwapisz
05.09.2015

Na naszym forum jeden z użytkowników napotkał problem z tym związany. Przedstawiamy go łącznie z rozwiązaniem.


Problem:
Nie chce mi się bawić w tworzenie miliona zapytań, więc wymyśliłem, że zrobię jedno, obsługiwane przez same właściwie zmienne, np.:

mysql_query("SELECT $cos FROM $tabela");

Co mam zrobić, aby zapytanie się wykonało...?
Próbowałem już zapytania, które już podałem, oraz te które za chwilkę podam. Jednak żadne nie poskutkowało.

mysql_query("SELECT '$cos' FROM '$tabela'");

Skrypt nie zwraca żadnego błędu, ani nie wykonuje swojego zadania.


Rozwiązanie:
W funkcji mysql_query używasz podwójnego cudzysłowu. A zatem jak w każdej funkcji w PHP, należy uprzedzić zmienną znakami ". i zakończyć znakami ." aby parser PHP rozponznał, że chcesz przekazać wartość z zmiennej a nie wartość $zmienna
Przykład: mysql_query("SELECT ".$cos." FROM ".$tabela);

'.$cos.' dodatkowo w cudzysłowy jeśli to string => "'.$cos.'"

Oczywiście to dotyczy TYLKO wartości.

 

Zgłoś swój pomysł na artykuł

Więcej w tym dziale Zobacz wszystkie