![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 238 Pomógł: 1 Dołączył: 27.08.2003 Ostrzeżenie: (0%) ![]() ![]() |
mam scrypt, który wyświetla dane pola tabeli bazy danych w formularzu, czyli atrybut NAME formularza przyjmuje wartość pola tabeli, a jeśli podaje warunek w zapytaniu do bazy danych to również wyświetla się wartość danego pola z bazy.
[php:1:1b41583d6d] <? $table = 'biografie'; $where = ''; $pola = array('id', 'artysta', 'tresc', 'gatunek', 'data', 'autor'); function wyswietl_pola_form($table, $where, $pola) { global $db; if (empty($where)) $query = "SELECT ".implode(',' ,$pola)." FROM $table"; else $query = "SELECT ".implode(',' ,$pola)." FROM $table WHERE $where"; $db ->query($query); $wynik = $db->fetch_row(); while(list($nazwa, $wartosc) = each($wynik)) { typ_pola_form($nazwa, $wartosc); } } function typ_pola_form ($nazwa, $wartosc) { echo'<input type=text name="' .$nazwa.'" value="' .stripslashes(trim($wartosc)).'"><br>'; } ?> [/php:1:1b41583d6d] wszystko byłoby dobrze, gdyby nie to, że jak w zapytaniu do bazy nie określam żadnego warunku, to w polach formularza wpisują się wartości z pierwszego rekordu tabeli, a załżenie jest takie, żeby w takim przypadku w polach formularza nic się nie wyświetlało. |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 296 Pomógł: 0 Dołączył: 9.05.2002 Skąd: Warszawa Ostrzeżenie: (0%) ![]() ![]() |
nie wiem, czy dobrze Cię rozumiem. Jeśli nie chcesz otrzymać odpowiedzi, to po co zadajesz pytanie? SQL nie zna query retorycznego. :wink:
spróbuj zmienić linie 10-13 na:[php:1:3068abfc2e]<?php if (!empty($where)) $query = "SELECT ".implode(',' ,$pola)." FROM $table WHERE $where"; ?>[/php:1:3068abfc2e] i linię 18:[php:1:3068abfc2e]<?php while(list($nazwa, $wartosc) = @each($wynik)) ?>[/php:1:3068abfc2e] |
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 238 Pomógł: 1 Dołączył: 27.08.2003 Ostrzeżenie: (0%) ![]() ![]() |
pytanie po to zadaje, żeby scrypt wiedział jakie pola z bazy ma wyświetlić w formularzu
|
|
|
![]()
Post
#4
|
|
Grupa: Zarejestrowani Postów: 296 Pomógł: 0 Dołączył: 9.05.2002 Skąd: Warszawa Ostrzeżenie: (0%) ![]() ![]() |
skrypt "wie" to z tablicy array, nie musi o to pytać bazy. najprościej chyba dodać warunek...
[php:1:a951e0e20c]<?php while(list($nazwa, $wartosc) = each($wynik)) { if (empty($where)) { unset($wartosc);} typ_pola_form($nazwa, $wartosc); } ?>[/php:1:a951e0e20c] |
|
|
![]() ![]() |
![]() |
Aktualny czas: 22.08.2025 - 23:03 |