Wykorzystanie danych pobranych z bazy danych w kodzie PHP jako parametry

0

Witam!

Mam mały problem.
W bazie SQL mam tabelę "parametry", która ma następujące kolumny: id, nazwa, wartosc np

id nazwa wartosc
1 param1 5
2 param2 20
pobieram je z tabeli SQL do PHP na początku strony
$params = mysql_query("
			SELECT 
				 id
				,nazwa
				,wartosc
			FROM 
				parametry
			");

i je sobie wyświetlam np
while ($row = mysql_fetch_array($params)) {
  var_dump($row);

chciałbym zrobić następująca rzecz, żeby powstały mi zmienne o nazwach jak w tabeli SQL "parametry" o watościach z kolumny "wartosc"
np

$param1=5;
$param2=20;

żebym później mógł operować tymi zmiennymi w kodzie strony PHP

dodanie znacznika <code class="php"> - furious programming

0

Nie ogarniam do końca o co Ci chodzi. Skąd biorą się nazwy $param1?

Wrzuć przykładowe wiersze z bazy i zmienne jakie chcesz ustawić.

0

jeszcze raz:

  1. mam bazę danych w której jest tabela "parametry" z kolumnami: id, nazwa, wartosc. Przykład poniżej.
id nazwa wartosc
1 param1 5
2 param2 20
  1. na stronie www wrzucam sobie całą tabelę do zmiennej $params
$params = mysql_query("
             SELECT 
                  id
                 ,nazwa
                 ,wartosc
             FROM 
                 parametry
             ");

i tutaj moje pytanie. Jak dalej zrobić, żeby stworzyć tyle zmiennych ile jest rekordów w tej tabeli "parametry" i żeby zmienna nazywał się tak jak nazwa z kolumny "nazwa" z tabeli "parametry" i żeby przyjmowała taką wartość jaka jest w polu "wartosc"

opierając się na tabelce powyżej (tabela "parametry") powinny się stworzyć dwie zmienne o nazwach "param1" i "param2" o wartościach

param1=5
param2=20

dodanie znacznika <code class="php"> - furious programming

0

Trochę za bardzo kombinujesz. Najlepiej by było, gdybyś konfiguracje trzymał w klasie i z niej wszystko pobierał.
Jeśli jeszcze nie ogarniasz klas to lepiej użyj tablicy, czyli nazwa parametru jest kluczem tablicy, a wartość parametru jest wartością w tablicy. Wyglądało by to tak:

$config = array();
while ($row = mysql_fetch_array($params)) {
   $config[$row]['nazwa']] = $row['wartosc'];
}
// pobranie wartości z tablicy:

echo $config['param1'];

Jeśli już tak bardzo chcesz, aby każdy parametr był w osobnej zmiennej to robi się to tak:

$config = array();
while ($row = mysql_fetch_array($params)) {
   $$row['nazwa'] = $row['wartosc'];
}

// w tedy odwołujesz się do tego jak do zmiennej
echo $param1;

Jednak to rozwiązanie jest najgorszym z możliwych. Robi się niepotrzebny bałagan w zmiennych, można je łatwo nadpisać przez przypadek i co najważniejsze można w ten sposób sobie zafundować dziurę w kodzie jak diabli.

1 użytkowników online, w tym zalogowanych: 0, gości: 1