Výběr země na stránce v PHP bez databáze
Potřebujete-li na svých stránkách zjednodušit výběr států, stačí k tomu poměrně jednoduchý skript, aniž byste využívali databázi.
Států je poměrně hodně, ovšem jejich seznam se mění velmi zřídka. V řadě případů by bylo použití databáze zbytečným kanónem na vrabce: například formulář, jehož obsah se odesílá na mail a nijak s databází nespolupracuje. Může to být třeba kniha návštěv, kde předpokládáme mezinárodní návštěvníky, ale klidně i aplikace pracující s databází, kde na určení země neklademe až tak velký důraz, ale chceme zvýšit komfort uživatele při zadávání dat.
Jediným problémem tak zůstává dát si tu práci a seznam zemí sepsat. Udělal jsem to za vás, a tak stačí seznam stáhnout a doplnit do aplikace. Také jsem doplnil jednoduchý test, který umožní nastavit určitou zemi jako předvolenou. To se hodí zejména v případě, kdy toto pole používáte nejen pro vkládání nových dat, ale i pro editaci. Pole select
je tak schopné zobrazit aktuálně zvolenou zemi. Pokud se shoduje obsah proměnné $country
s hodnotou uvedenou v podmínce v řádku dané země, vygeneruje se navíc slovo selected do tagu option, čímž se tento řádek stane předvoleným. Podívejte se na ukázku, ve kterém je předvolena Srí Lanka. Jen připomínám, že pokud takto předáváme název země, je třeba diakritické znaky a speciální znaky (jako je třeba mezera %20) nahradit sekvencí %kód – v PHP nám k tomu poslouží funkce RawUrlEncode()
.
Část skriptu countryselect.php:
<?php if (empty($country)) $country=’Czech Republic‘ ?>
<select name="country">
<option value="Afghanistan" <?php echo ($country == ‚Afghanistan‘) ? ‚selected‘ : “ ?>>Afghanistan</option>
<option value="Albania" <?php echo ($country == ‚Albania‘) ? ‚selected‘ : “ ?>>Albania</option>
<option value="Algeria" <?php echo ($country == ‚Algeria‘) ? ‚selected‘ : “ ?>>Algeria</option>
<option value="Andorra" <?php echo ($country == ‚Andorra‘) ? ‚selected‘ : “ ?>>Andorra</option>
<option value="Angola" <?php echo ($country == ‚Angola‘) ? ‚selected‘ : “ ?>>Angola</option>
</select>
Stažený seznam států si zařaďte do své aplikace, předvolenou hodnotu nastavte do proměnné $country
. V závislosti na aplikaci není problém ve skriptu proměnnou $country
hromadně v textovém editoru nahradit za jinou dle potřeby (například prvek pole získaný z databáze $data[2]
, proměnná předaná metodou GET $_GET['country']
, hodnota cookie $_COOKIE['country']
a jiné).
Starší komentáře ke článku
Pokud máte zájem o starší komentáře k tomuto článku, naleznete je zde.
Mohlo by vás také zajímat
-
Moderní trendy ve webdesignu: Top trendy pro rok 2024
12. ledna 2024 -
Windows App: Pracujte odkudkoliv, kdykoliv
3. listopadu 2024 -
Lék na phishing a apatii ve světě e-mailového marketingu
18. března 2024 -
10 nejpopulárnějších programovacích jazyků a jejich využití
9. listopadu 2023
Nejnovější
-
Jak rozšířit úložiště Macu za pětinovou cenu?
16. prosince 2024 -
Nové trendy v doménách pro osobní projekty – DIY, LIVING a LIFESTYLE
9. prosince 2024 -
Jak chránit webové stránky před Web/AI Scrapingem
27. listopadu 2024 -
Jaký monitor je nejlepší k novému Macu Mini?
25. listopadu 2024
Petr Blažíček
Zář 18, 2013 v 9:20Kanón na vrabce asi nebude nejlepším přirovnáním. Aplikace, ve které je třeba vybrat zemi ze seznamu určitě bude používat databázi tak jako tak.