Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [MySQL][PHP]zminimalizowanie kodu
Forum PHP.pl > Forum > Przedszkole
straku
Witam.
Potrzebuję pobrac z bazy przeszło 30 wybranych rekordów z jednej tabeli. Chciałbym aby kod poniżej został ograniczony co do liczby znaków, oczywiście zapytanie do bazy musi zostać, natomiast jak mógłbym zmodyfikować drugą część kodu?

  1. $zapytanie_dane_dodatkowe = mysql_query("SELECT `wysokosc_czynszu`, `ilosc_pieter`, `ilosc_poziomow`, `rodzaj_kuchni`, `balkon`, `loggia`, `taras`, `ogrodek`, `piwnica`, `strych`, `winda`, `rodzaj_wejscia`, `gaz`, `ogrzewanie`, `klimatyzacja`, `wentylacja`, `opomiarowanie_wody`, `opomiarowanie_ciepla`, `telefon`, `internet`, `kablowka`, `tv_hd`, `domofon`, `alarm`, `monitoring`, `ochrona`, `ogrodzenie`, `garaz`, `rodzaj_garazu`, `ilosc_miejsc_garazowych`, `parking`, `ilosc_miejsc_parkingowych` FROM mieszkanie_wynajem WHERE id_nieruchomosci='$uni_id'") or die ("Błąd zapytania o dane dodatkowe");
  2. $wyk_zap_dan_dod = mysql_fetch_array($zapytanie_dane_kontaktowe)


  1. $wysokosc_czynszu = $wyk_zap_dan_dod[0];
  2. $ilosc_pieter = $wyk_zap_dan_dod[1];
  3. $ilosc_poziomow = $wyk_zap_dan_dod[2];
  4. $rodzaj_kuchni = $wyk_zap_dan_dod[3];
  5. $balkon = $wyk_zap_dan_dod[4];
  6. $loggia = $wyk_zap_dan_dod[5];
  7. $taras = $wyk_zap_dan_dod[6];
  8. $ogrodek = $wyk_zap_dan_dod[7];
  9. $piwnica = $wyk_zap_dan_dod[8];
  10. $strych = $wyk_zap_dan_dod[9];
  11. $winda = $wyk_zap_dan_dod[10];
  12. $rodzaj_wejscia = $wyk_zap_dan_dod[11];
  13. $gaz = $wyk_zap_dan_dod[12];
  14. $ogrzewanie = $wyk_zap_dan_dod[13];
  15. $klimatyzacja = $wyk_zap_dan_dod[14];
  16. $wentylacja = $wyk_zap_dan_dod[15];
  17. $opomiarowanie_wody = $wyk_zap_dan_dod[16];
  18. $opomiarowanie_ciepla = $wyk_zap_dan_dod[17];
  19. $telefon = $wyk_zap_dan_dod[18];
  20. $internet = $wyk_zap_dan_dod[19];
  21. $kablowka = $wyk_zap_dan_dod[20];
  22. $tv_hd = $wyk_zap_dan_dod[21];
  23. $domofon = $wyk_zap_dan_dod[22];
  24. $alarm = $wyk_zap_dan_dod[23];
  25. $monitoring = $wyk_zap_dan_dod[24];
  26. $ochrona = $wyk_zap_dan_dod[25];
  27. $ogrodzenie = $wyk_zap_dan_dod[26];
  28. $garaz = $wyk_zap_dan_dod[27];
  29. $rodzaj_garazu = $wyk_zap_dan_dod[28];
  30. $ilosc_miejsc_garazowych = $wyk_zap_dan_dod[29];
  31. $parking = $wyk_zap_dan_dod[30];
  32. $ilosc_miejsc_parkingowych = $wyk_zap_dan_dod[31];


Jakieś pomysły?
Pawel_W
  1. $zmienne = array('wysokosc_czynszu', 'ilosc_pieter', 'ilosc_poziomow' etc...);
  2. for($i=0,$c=count($zmienne);$i<$c;$i++){
  3. ${$zmienne[$i]} = $wyk_zap_dan_dod[$i];
  4. }

coś takiego powinno działać smile.gif

EDIT: na dobrą sprawę to nie powinieneś tak robić, prościej by Ci było przechowywać to w tablicy i zamiast mysql_fetch_array zastosować mysql_fetch_assoc
b4rt3kk
A czy istnieje konieczność przepisywania zmiennych? Nie możesz wprost z bazy pobrać nazw kolumn?

  1. $wyk_zap_dan_dod['wysokosc_czynszu'];
straku
Pawel_W o to mi chodziło. Wszystko ładnie przejrzyście, mało znaków - plik lżejszy.

b4rt3kk przepisywanie, których zmiennych bo nie rozumiem. Potrzebuję każdą zmienna $wysokosc_czynszu, $ilosc_pieter itp sprawdzić czy nie jest pusta, jeżeli nei to wyświetlić taką zmienna na stronie.
b4rt3kk
Chodziło mi o to, że nie musisz robić przepisania zmiennej, w ten sposób:

  1. $wysokosc_czynszu = $wyk_zap_dan_dod[0];


bo przecież ona już istnieje, jako $wyk_zap_dan_dod[0]. Jeśli chcesz po prostu mieć takie nazwy by orientować się co jest co, to możesz pobrać je wprost z bazy, by nazwa była taka $wyk_zap_dan_dod['wysokosc_czynszu']. To też oszczędność paru linijek. A co do tego jak możesz później sprawdzić czy są puste, w miarę optymalnie:

  1. foreach ($wyk_zap_dan_dod as $key => $value) if (!empty($value)) echo $key.': '.$value;
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.