$ _GET Dayalı seçilen bir seçenek haline getiriyor.

4 Cevap php

Ben hızlı bir soru var.

Böyle bir şey yapmak mümkün mü?

Seçenekler foreach döngüsünü temel dinamik olarak oluşturulur. Ben döngü $ _GET ['t'] $ k eşittir nerede durdurmak ve seçili yapmak istiyorum.

<option value="http://domain.com/<?php print $k; ?>/" <?php if ($k == $_GET['t']) print 'selected'; ?>><?php print $v; ?></option>

Temelde adres çubuğunda ['t] değerini sağlanan $ _GET dayalı vurgulanan seçilen seçeneği / yapmak için bir yol var .. ben denedim ve ben tanımsız bir dizin olsun: t hatası.

ben bir şey eksik?

Çok teşekkürler.

4 Cevap

"T" senin $_GET isteği değil çünkü tanımlanmamış hata olsun.

(?: example.com / script.php t = test yani) emin sağ url çağırıyor olun

(Diğerleri önerilen gibi) isset($_GET['t']) ile değer kontrol emin olun musunuz

Neredeyse oldu - xhtml aslında = "seçili" seçildiğinde

<option value="http://domain.com/<?php print $k; ?>/" <?php if ($k == $_GET['t']) print 'selected="selected"'; ?>><?php print $v; ?></option>

Ne adam yukarıda aslında ucunda bir "t =" bir şey geçirerek test kaydetti? Bu kod t İlk seti olup olmadığını görmek için test ederek hata kurtulmak gerekir:

<option value="http://domain.com/<?php print $k; ?>/" <?php if (isset($_GET['t']) && $k == $_GET['t']) print 'selected="selected"'; ?>><?php print $v; ?></option>

Eğer bir sayfada form değerleri değiştirmek için GET adlı kullanmamalısınız. Bunun için POST kullanmanız gerekir :)

Herkes sayfanızı taradığı Bu şekilde, onlar sadece seçim kutusu değişti ile 10 kez aynı sayfayı olmaz :)