Drop-down лист със стойности

worda

New member
Здравейте , бих искал да ви помоля за помощ за правенето на един drop-down лист . Да кажем че в базата данни имам таблица с име content в нея имам нужните полета за писането на урок. Добавил съм поле trudnost , искам чрез формата за добавяне на урок да мога да си избирам от drop-down няколко възможности. Да бъде нещо такова :
Трудност: (drop-down лист със стойности:1,2,3). Тоест всеки урок да си има степен на трудност. Не знам дали ме разбирате , благодаря предварително .
 
Re: Drop-down лист със стойности

Ако правилно съм разбрал въпроса:

HTML:
<?php
  $difficulty=$_POST['difficulty']; //тук си я взимаш
?>
...
  <label for="difficulty">трудност:</label>
  <select name="difficulty">
    <option value="1">лесно</option>
    <option value="2">нормално</option>
    <option value="3">трудно</option>
    ⋮
  </select>
.....
 
Re: Drop-down лист със стойности

Ако правилно съм разбрал въпроса:

HTML:
<?php
  $difficulty=$_POST['difficulty']; //тук си я взимаш
?>
...
  <label for="difficulty">трудност:</label>
  <select name="difficulty">
    <option value="1">лесно</option>
    <option value="2">нормално</option>
    <option value="3">трудно</option>
    ⋮
  </select>
.....

не става 🙁 В случая искам избраната стойност да се запази под формата на $this->article->trudnost в базата данни за съответната статия . Как точно ще стане?
 
Re: Drop-down лист със стойности

смени $difficulty със $this->article->trudnost

Не става.... всъщност това _post трябва да го напиша в файла чрез който добавям статия или там където искам да се появяват резултатите ? Защото и в двата случая не става , а не трябва ли да има и <form> преди <label>?
 
Re: Drop-down лист със стойности

BornToDrink аз пиша класове, функции и обекти на пърл, питон и баш /тук само функции/ и вярвай ми не мога да направя форма 🙂

Да отбележа и че не съм програмист просто за спорта и за улесняване на живота понаписвам разни нещица.
 
Re: Drop-down лист със стойности

Ето така става:
PHP:
<?php echo'
<form method="post" action="'.$PHP_SELF.'"> 
Трудност:<br />
<select name="trudnost">
<option value="1">1</option>
<option value="2">2</option>
<option value="3">3</option></select>
</form>';
$this->article->trudnost = $_POST["trudnost"];
?>
Всичко работи на 6 , само като редактирам статията option-а винаги е на 1 , как мога да го променя да изкарва записаната стойност?

P.S. Вече е добавен и стил, ето едно демо
 
Последно редактирано:
Re: Drop-down лист със стойности

Преди формата, присвояваш на една временна променлива стойността на трудността от базата, примерно $a. След това в option тага, трябва да добавиш selected="selected", когато има съвпадение на трудността, примерно така:

PHP:
<?php echo'
<form method="post" action="'.$PHP_SELF.'"> 
Трудност:<br />
<select name="trudnost">';

for($i=1;$i<4;$i++) {
  echo "<option ";
    if($i==$a) {
      echo " selected=\"selected\" ";
    }
  echo " value=\"$i\">$i</option>";
}


echo '</form>';
$this->article->trudnost = $_POST["trudnost"];
?>

Не знам как и къде са другите неща, но е добре да вземеш стойността на $_POST променливата и да я вкараш в базата преди формата. Ако не са в правилната последователност, като събмитнеш формата, ще ти бъде избрана предпоследната стойност на трудността.
 
Re: Drop-down лист със стойности

Преди формата, присвояваш на една временна променлива стойността на трудността от базата, примерно $a. След това в option тага, трябва да добавиш selected="selected", когато има съвпадение на трудността, примерно така:

PHP:
<?php echo'
<form method="post" action="'.$PHP_SELF.'"> 
Трудност:<br />
<select name="trudnost">';

for($i=1;$i<4;$i++) {
  echo "<option ";
    if($i==$a) {
      echo " selected=\"selected\" ";
    }
  echo " value=\"$i\">$i</option>";
}


echo '</form>';
$this->article->trudnost = $_POST["trudnost"];
?>

Не знам как и къде са другите неща, но е добре да вземеш стойността на $_POST променливата и да я вкараш в базата преди формата. Ако не са в правилната последователност, като събмитнеш формата, ще ти бъде избрана предпоследната стойност на трудността.
Благодаря ти много ! Ще го пробвам утре, че е късно вече 🙂
 

Back
Горе