Twoje PC  
Zarejestruj się na Twoje PC
TwojePC.pl | PC | Komputery, nowe technologie, recenzje, testy
B O A R D
   » Board
 » Zadaj pytanie
 » Archiwum
 » Szukaj
 » Stylizacja

 
M E N U
  0
 » Nowości
0
 » Archiwum
0
 » Recenzje / Testy
0
 » Board
0
 » Rejestracja
0
0
 
Szukaj @ TwojePC
 

w Newsach i na Boardzie
 
OBECNI NA TPC
 
 » rooter666 17:29
 » XepeR 17:26
 » ligand17 17:25
 » MARtiuS 17:24
 » rzymo 17:23
 » bajbusek 17:23
 » Promilus 17:22
 » NimnuL 17:21
 » ham_solo 17:20
 » P@blo 17:20
 » Artaa 17:16
 » McMi21 17:15
 » soyo 17:15
 » 3kawki 17:14
 » etranger 17:12
 » fiskomp 17:11
 » DYD 17:11
 » gigamiki 17:07
 » Kenny 17:07
 » Fasola 17:05

 Dzisiaj przeczytano
 41129 postów,
 wczoraj 25974

 Szybkie ładowanie
 jest:
włączone.

 
ccc
TwojePC.pl © 2001 - 2024
A R C H I W A L N A   W I A D O M O Ś Ć
    

[php] problem z dynamicznym selectem , Chicken81 22/12/05 10:32
Witam!
Mam problem, w bazie są dwie tabele. Przelewy i waluty.
W tabeli przelewy wypełniam sobie dane do przelewu i z listy rozwijanej wybieram walutę. Do tabeli przelewy zapisywany jest jednak tylko jej id z tabeli waluty. Dotąd wszystko jest ok. Dorobiłem do tego możliwość edycji takiego przelewy i tutaj jest pewien problem. Konieczne jest aby tym razem również załadowała się lista walut ale z domyślnie wybraną tą którą mam w bazie w tabeli przelewy , czyli musi być uzupełniany parametr "chceked" takiej listy i tego właśnie nie umiem zrobić. Listę walut wyciągam pętlą

KOD

<?php
require_once('./polacz_z_baza.php');
$wynik = mysql_query('SELECT * FROM waluty');
while ($rekord = mysql_fetch_array ($wynik)) {
$id_waluty=$rekord[0];
$nazwa= $rekord[1];
$skrot = $rekord[2];
echo "<option value=$id_waluty>$nazwa</option>\n";
}
?>


Pętla oczywiście nie pobierze wartości z tabeli przelewy, ale tą wartość już mam pobraną wcześniej więc nie o to chodzi. Nie umiem jest wstawić do tego, może poza pętlą, sam już nie wiem. Macie jakieś pomysły?

"Tylko dwie rzeczy są nieskończone -
wszechświat i ludzka głupota...." -
A.Einstein

  1. W pętli daj if i sprawdzaj czy , Sherif 22/12/05 10:37
    aktualne id jest tym co znasz i generuj odpowiedniego taga

    1. juz prawie dobrz ale chyba w peli nie przejdzie , Chicken81 22/12/05 10:44
      <?php
      require_once('./polacz_z_baza.php');
      $wynik = mysql_query('SELECT * FROM waluty');
      while ($rekord = mysql_fetch_array ($wynik)) {
      $id_waluty=$rekord[0];
      $nazwa= $rekord[1];
      $skrot = $rekord[2];
      if ($nazwa = $nazwa_waluty) {
      echo "<option value=$id_waluty checked=$nazwa_waluty>$nazwa</option>\n";
      } else {
      echo "<option value=$id_waluty>$nazwa</option>\n";
      }
      }
      ?>


      zrobiłem tak ale wtedy wypełnia mi całą listę tą wartością którą chcę ustawić jako checked dla jednego pola

      "Tylko dwie rzeczy są nieskończone -
      wszechświat i ludzka głupota...." -
      A.Einstein

      1. checked=$nazwa_waluty ? , Sherif 22/12/05 10:51
        Daj samo "checked"

  2. ... , Wedrowiec 22/12/05 10:47
    echo "<option value=$id_waluty ".($id_waluty == $oczekiwana_wartosc ? ' selected' :'').">$nazwa</option>\n";

    "Widziałem podręczniki
    Gdzie jest czarno na białym
    Że jesteście po**bani"

    1. po drobnych zmianach , Chicken81 22/12/05 10:55
      echo "<option value=$id_waluty ".($nazwa == $nazwa_waluty ? ' selected' :'').">$nazwa</option>\n";
      Pięknie działa, dzięki za naprowadzenie, chciaż muszę przyznać że tego sposobu ze znakiem zapytania nie znałem.

      "Tylko dwie rzeczy są nieskończone -
      wszechświat i ludzka głupota...." -
      A.Einstein

      1. no ja niedawno na to się przerzuciłem. , Wedrowiec 22/12/05 11:04
        Wcześniej cholernie tego nie lubiłem, stosowałem zwykły zapis if'a (bo jest to zwykły if). Jednak w tym przypadku jest 1 linijka zamiast 5 (w moim sposobie zapisu) i mimo wszystko jest to dużo czytelniejsze.

        "Widziałem podręczniki
        Gdzie jest czarno na białym
        Że jesteście po**bani"

        1. pewnie że czytelniejsze , Chicken81 22/12/05 11:08
          aż się gęba śmieje jak widzę teraz jakie to proste. Jeszcze raz dzięki wielkie

          "Tylko dwie rzeczy są nieskończone -
          wszechświat i ludzka głupota...." -
          A.Einstein

    2. ja tylko wyjasnie zawily kod Wedrowca :) , Grocal 22/12/05 10:56
      chodzi o to, ze w selectach jest "selected" a nie "checked" ("checked" jest w radiobuttonach i checkboxach).

      Na pewno, na razie, w ogóle...
      Naprawdę, naprzeciwko, stąd...
      Ortografia nie gryzie!

      1. tak właśnie napisał... , Chicken81 22/12/05 11:04
        heh

        "Tylko dwie rzeczy są nieskończone -
        wszechświat i ludzka głupota...." -
        A.Einstein

        1. własnie, to skąd ja rypnąłem , Chicken81 22/12/05 11:05
          to checked ? :/
          sam nie wiem

          "Tylko dwie rzeczy są nieskończone -
          wszechświat i ludzka głupota...." -
          A.Einstein

          1. swoja droga Twoj blad to , Grocal 22/12/05 11:09
            if ($nazwa = $nazwa_waluty) {

            a powinno byc
            if ($nazwa == $nazwa_waluty) {

            Taki czeski blad potrafi niezle zamieszac.

            Na pewno, na razie, w ogóle...
            Naprawdę, naprzeciwko, stąd...
            Ortografia nie gryzie!

    
All rights reserved ® Copyright and Design 2001-2024, TwojePC.PL