Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Nieaktywne lub aktywne pole wyboru - Select
18Pawel18
post
Post #1





Grupa: Zarejestrowani
Postów: 23
Pomógł: 0
Dołączył: 1.02.2010

Ostrzeżenie: (10%)
X----


Mam problem z aktywnym, bądź nieaktywnym polem SELECT.

W bazie danych mam wpisane państwa i chcę aby po wybraniu Polski był dostępny SELECT z województwami czyli możliwość wybrania województwa, a po wybraniu innej opcji (innego państwa) zablokowany wybór (z logicznych przyczyn).

Próbowałem dodać przed SELECT-em z województwami: if($wojewodztwo['id'] == 135) ?> ale nie działało. W czym jest problem??

Całość:

Baza danych MySql:

Kod
CREATE TABLE IF NOT EXISTS `panstwo` (
  `id` int(10) unsigned NOT NULL,
  `nazwa` varchar(50) NOT NULL,
  PRIMARY KEY (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8;

--
-- Zrzut danych tabeli `panstwa`
--

INSERT INTO `panstwo` (`id`, `nazwa`) VALUES
(1, 'Afganistan'),
(2, 'Albania'),
(3, 'Algieria'),
(4, 'Andora'),
(5, 'Angola'),
(6, 'Antigua i Barbuda'),
(7, 'Arabia Saudyjska'),
.....
(165, 'Zumbia');


Docelowy plik PHP:

Kod
<select name="panstwo" id="panstwo">
            <option value="0">Wybierz państwo</option>
            <?php
            
            
            //pobranie listy państw
            $panstwa = pobierzPanstwa();

            if(isset($_POST['panstwo'])) $panstwSel = $_POST['panstwo']; else $panstwSel = '0';
            ?>
            <?php foreach($panstwa as $panstwo): ?>
                <option value="<?php echo $panstwo['id']; ?>" <?php if($panstwo['id'] == $panstwSel) echo 'selected'; ?>><?php echo $panstwo['nazwa']; ?></option>
            <?php endforeach; ?>

        </select>


Kod
<select name="wojewodztwo" id="wojewodztwo">
            <option value="0">Wybierz województwo</option>
            <?php
            
            
            //pobranie listy wojewodztw
            $wojewodztwa = pobierzWojewodztwa();

            if(isset($_POST['wojewodztwo'])) $wojewSel = $_POST['wojewodztwo']; else $wojewSel = '0';
            ?>
            <?php foreach($wojewodztwa as $wojewodztwo): ?>
                <option value="<?php echo $wojewodztwo['id']; ?>" <?php if($wojewodztwo['id'] == $wojewSel) echo 'selected'; ?>><?php echo $wojewodztwo['nazwa']; ?></option>
            <?php endforeach; ?>

        </select>


Znalazłem też takie rozwiązanie(przykład):

Kod
<html>
<head>
    <script language="javascript">
    
    function test()
    {
    var wartosc_pola_xyz;
    var tekst=document.getElementById('abc');
    
    wartosc_pola_xyz = document.getElementById('xyz').value;
    
    if(wartosc_pola_xyz=='0')
    {
    tekst.value="opcja niedostępna";
    document.getElementById('abc').disabled=true;
    }
    
    if(wartosc_pola_xyz=='1')
    {
    tekst.value="opcja niedostępna";
    document.getElementById('abc').disabled=true;
    }
    
    if(wartosc_pola_xyz=='2')
    {
    tekst.value="";
    document.getElementById('abc').disabled=false;
    }
    }
    </script>
</head>
<body>

    <FORM>
    <select name="xyz" id="xyz" onChange="test()">
    <option value=0 selected></option>
    <option value=1>opcja 1</option>
    <option value=2>opcja 2</option>
    </select>
    <input type="text" name="abc" id="abc" disabled value="opcja niedostępna">
    </form>
    

</body>
</html>


ale zabardzo też mi to nie działało.

Co tam można zmienić żeby to zadziałało?
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
18Pawel18
post
Post #2





Grupa: Zarejestrowani
Postów: 23
Pomógł: 0
Dołączył: 1.02.2010

Ostrzeżenie: (10%)
X----


Link do tego z czym jest problem:

http://testowa123.pusku.com/test.php

Dostęp do ftp-a:

Nazwa hosta: testowa123.pusku.com
Użytkownik: u401008114
Hasło: test100

Baza danych wygląda tak:

Kod
CREATE TABLE IF NOT EXISTS `panstwo` (
  `id` int(10) unsigned NOT NULL,
  `nazwa` varchar(50) NOT NULL,
  PRIMARY KEY (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8;

--
-- Zrzut danych tabeli `panstwa`
--

INSERT INTO `panstwo` (`id`, `nazwa`) VALUES
(1, 'Afganistan'),
(2, 'Albania'),
(3, 'Algieria'),
(4, 'Andora'),
(5, 'Angola'),
(6, 'Antigua i Barbuda'),
(7, 'Arabia Saudyjska'),
(8, 'Argentyna'),
(9, 'Armenia'),
(10, 'Australia'),
(11, 'Austria'),
(12, 'Azerbejdżan'),
(13, 'Bahamy'),

......................

(134, 'Peru'),
(135, 'Polska'),
(136, 'Portugalia'),
(137, 'Republika Południowej Afryki'),
(138, 'Republika Środkowoafrykańska'),
(139, 'Republika Zielonego Przylądka'),
(140, 'Rosja'),
(141, 'Rumunia'),
(142, 'Rwanda'),
(143, 'Saint Kitts i Nevis'),
(144, 'Saint Lucia'),
(145, 'Saint Vincent i Grenadyny'),
(146, 'Salwador'),
(147, 'Samoa'),
(148, 'San Marino'),
(149, 'Senegal'),
(150, 'Serbia'),
(151, 'Seszele'),
(152, 'Sierra Leone'),
(153, 'Singapur'),
(154, 'Słowacja'),
(155, 'Słowenia'),
(156, 'Somalia'),
(157, 'Sri Lanka'),
(158, 'Stany Zjednoczone'),
(159, 'Suazi'),
(160, 'Sudan'),
(161, 'Sudan Południowy'),
(162, 'Surinam'),
(163, 'Syria'),
(164, 'Szwajcaria'),
(165, 'Szwecja'),
(166, 'Tadżykistan'),
(167, 'Tajlandia'),
(168, 'Tanzania'),
(169, 'Timor Wschodni'),
(170, 'Togo'),
(171, 'Tonga'),
(172, 'Trynidad i Tobago'),
(173, 'Tunezja'),
(174, 'Turcja'),
(175, 'Turkmenistan'),
(176, 'Tuvalu'),
(177, 'Uganda'),
(178, 'Ukraina'),
(179, 'Urugwaj'),
(180, 'Uzbekistan'),
(181, 'Vanuatu'),
(182, 'Watykan'),
(183, 'Wenezuela'),
(184, 'Węgry'),
(185, 'Wielka Brytania'),
(186, 'Wietnam'),
(187, 'Włochy'),
(188, 'Wybrzeże Kości Słoniowej'),
(189, 'Wyspy Marshalla'),
(190, 'Wyspy Salomona'),
(191, 'Wyspy Świętego Tomasza i Książęca'),
(192, 'Zambia'),
(193, 'Zimbabwe'),
(194, 'Zjednoczone Emiraty Arabskie');

CREATE TABLE `wojewodztwa` (
  `id` int(10) unsigned NOT NULL AUTO_INCREMENT,
  `nazwa` varchar(50) NOT NULL,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=19 DEFAULT CHARSET=utf8 AUTO_INCREMENT=19;

--
-- Zrzut danych tabeli `wojewodztwa`
--

INSERT INTO `wojewodztwa` VALUES (1, 'wielkopolskie');
INSERT INTO `wojewodztwa` VALUES (2, 'zachodnio-pomorskie');
INSERT INTO `wojewodztwa` VALUES (3, 'dolnośląskie');
INSERT INTO `wojewodztwa` VALUES (4, 'kujawsko-pomorskie');
INSERT INTO `wojewodztwa` VALUES (5, 'lubelskie');
INSERT INTO `wojewodztwa` VALUES (6, 'lubuskie');
INSERT INTO `wojewodztwa` VALUES (7, 'łódzkie');
INSERT INTO `wojewodztwa` VALUES (8, 'małopolskie');
INSERT INTO `wojewodztwa` VALUES (9, 'mazowieckie');
INSERT INTO `wojewodztwa` VALUES (10, 'opolskie');
INSERT INTO `wojewodztwa` VALUES (11, 'podkarpackie');
INSERT INTO `wojewodztwa` VALUES (12, 'podlaskie');
INSERT INTO `wojewodztwa` VALUES (13, 'pomorskie');
INSERT INTO `wojewodztwa` VALUES (14, 'śląskie');
INSERT INTO `wojewodztwa` VALUES (15, 'świętokrzyskie');
INSERT INTO `wojewodztwa` VALUES (16, 'warmińsko-mazurskie');
INSERT INTO `wojewodztwa` VALUES (17, 'wielkopolskie');
INSERT INTO `wojewodztwa` VALUES (18, 'zachodnio-pomorskie');

Go to the top of the page
+Quote Post

Posty w temacie
- 18Pawel18   Nieaktywne lub aktywne pole wyboru - Select   24.07.2013, 00:30:30
- - valkirek   Dobrze kombinujesz ale skoro chcesz wylaczyc wojew...   24.07.2013, 10:19:32
- - 18Pawel18   Zrobiłem dokładnie jak mówiłeś i nic. Jeśli nie wi...   25.07.2013, 15:52:00
- - nospor   && $_POST['panstwo']==135 No ...   25.07.2013, 16:32:25
|- - 18Pawel18   Cytat(nospor @ 25.07.2013, 17:32:25 )...   25.07.2013, 19:02:51
- - 18Pawel18   Link do tego z czym jest problem: http://testowa...   25.07.2013, 16:55:17
- - nospor   No dobra, ale o to: $("#panstwo")....   25.07.2013, 17:08:59
- - 18Pawel18   Nie kumam o co chodzi. Zmienisz mi to na serwerze ...   25.07.2013, 17:56:46
- - valkirek   Nie zartuj sobie, w konsoli js jak byk masz blad. ...   25.07.2013, 18:07:06
- - 18Pawel18   Widziałem, już dawno to zmieniłem. Przy przenoszen...   25.07.2013, 18:11:58
- - valkirek   No ale zeby jquery dzialalo to musisz jeszcze dac ...   25.07.2013, 18:17:59
- - 18Pawel18   Wszystko zmieniłem jak mowiłeś. Logicznie patrząc ...   25.07.2013, 18:37:10
- - valkirek   Nie jest dobrze:/ pomysl masz ten select z wojewod...   25.07.2013, 18:46:46
- - nospor   Cytatpomysl masz ten select z wojewodztwami wylacz...   25.07.2013, 19:08:23
- - 18Pawel18   Widzi ktoś w czym jest problem??   25.07.2013, 19:21:53
- - nospor   Napisalem ci przeciez wyraznie....o to: <scrip...   25.07.2013, 19:47:14
- - 18Pawel18   Wybacz, jest ok. Dzieki za pomoc. Zrobiłem jeszcz...   26.07.2013, 00:16:33
- - nospor   No ale jak ma chwytac? Podpiales to pod wyslanie f...   26.07.2013, 07:07:51
- - 18Pawel18   Tak, wszystko jest podpięte i działa, wkleiłem tyl...   26.07.2013, 09:43:40
- - nospor   No to pokaz jak wyglada podpieta calosc, bo w link...   26.07.2013, 09:52:12
- - 18Pawel18   Już zaktualizowałem na serwerze. Możesz zobaczyć n...   26.07.2013, 10:35:52
- - freemp3   Kodif(($("#wojewodztwo option...   26.07.2013, 10:50:17
- - freemp3   Bład pojawia się ponieważ przy wysyłaniu pola form...   26.07.2013, 11:13:47
- - 18Pawel18   Działa idealnie, zmieniłem w strukturze tabeli, dz...   27.08.2013, 14:25:16


Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 14.10.2025 - 02:55