Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [HTML][PHP]Link w polu select.
Forum PHP.pl > Forum > Przedszkole
bercow
Witam.

Mam problem z ponizszym kodem, chcial bym zrobic link w polu select. Czyli po wybraniu przechodzi odrazu do odpowiedniej strony, niestety jak dodam link to nic sie nie wyswietla, chodz widze, ze mam w bazie 6 wierszy, i wystwetla sie w polu select 6 pustych miejsc. Jak usune value, to pole select dziala prawidlowo.
  1. <script type="text/javascript">
  2. function go() {
  3. if (document.formSelect.sites.options[document.formSelect.sites.selectedIndex].value != "") {
  4. location = document.formSelect.sites.options[document.formSelect.sites.selectedIndex].value;
  5. }
  6. }
  7. </script>
  8. .......................................
  9. echo "<form method=\"post\" action=\"\">";
  10. echo "<select name=\"id_user\" onchange=\"go();\" \">";
  11. while($p = mysql_fetch_assoc($query)) {
  12. echo "<option value=\"user.php?id=".$p['id_user'].">\"".$p['name']."</option>";
  13. }
  14. echo "</select><br />";
nospor
Przecież źle zamykasz value
echo "<option value=\"user.php?id=".$p['id_user']."\">".$p['name']."</option>";
wNogachSpisz
Cytat(bercow @ 5.12.2011, 10:01:41 ) *
echo "<form method=\"post\" action=\"\">";
echo "<select name=\"id_user\" onchange=\"go();\" \">";
while($p = mysql_fetch_assoc($query)) {
echo "<option value=\"user.php?id=".$p['id_user'].">\"".$p['name']."</option>";
}
echo "</select><br />";[/php]

W ten sposób nie zagnieższa się PHP w HTML,
natomiast zagnieższania HTML w PHP nie robi się praktycznie nigdy.

Czy taki kod nie wygląda lepiej:
  1. <form method="post" action="">
  2. <select name="id_user" onchange="go();">
  3. <? while ( $row = mysql_fetch_assoc($query)): ?>
  4. <option value="user.php?id=<?=$row['id_user']?>"><?=$row['name']?></option>
  5. <? endwhile; ?>
  6. </select><br />


read more:
http://php.net/manual/en/control-structure...tive-syntax.php
bercow
No i dziala pieknie, ale tylko wizualnie, nie dzialaja akcje, tzn. nie ma linku :/ value tworzy sie prawidlowo, ale nie dziala jako link ;/
  1. <option value="user.php?id=1">Jan Nowak</option>


@
wNogachSpisz

Widze jak to opisane w manualu, ale jaka jest roznica pomiedzy tymi dwoma zapisami, dlaczego nie powino sie mieszac html i php ?

  1. <option value="user.php?id=<?=$row['id_user']?>"><?=$row['name']?></option>
  2.  
  3. a
  4.  
  5. echo "<option value=\"user.php?id=".$p['id_user'].">\"".$p['name']."</option>";
nospor
Cytat
tzn. nie ma linku :/
A czym się objawia to "nie ma linku"?
bercow
Tym, ze jak klikne, nie zachodzi zadna akcja, ale problem sie rozwiazal smile.gif Zapomnialem powiazac pola select i form z JS
  1. echo "<form name=\"formSelect\" method=\"post\" action=\"\">";
  2. echo "<select name=\"sites\" onchange=\"go();\" \">";


Ale teraz mam troche inne pytanie, jak wyszukac z bazy jakas pozycje, szukajac wszedzie, cos na wzor zapytania ponizej nie chce dzialac.
  1. "SELECT * FROM * WHERE * LIKE \"%$search%\"";"


WYBIERZ wszystko Z wszedzie GDZIE wszystko TAKIE JAK $search haha.gif

Niestety nie moge szukac wszedzie *
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.