Ъпдейт на поле в базата данни от дроп доун меню

vinsbg

Registered
Имам таблица, която извежда всичко от базата данни. Там имам едно поле статус, което по дефолт е 0. Искам с един дропдоун да мога да го променям съответно на 1 или 2 и да го ъпдейтна в базата. Извеждам всичко, но нещо се бъркам как точно ще стане ъпдейта в базата. Как да прихвана дропдауна?
Това е кода за извеждането на таблицата
Код:
if(isset($_GET['rest_id']) && is_numeric($_GET['rest_id'])){
			$rest_id = $_GET['rest_id'];
						
			$query = mysql_query("SELECT * FROM res
					      WHERE table_res_id = $rest_id 
					      ORDER BY `DateTime` DESC ");
	
                    $per_page = 50;

                    // figure out the total pages in the database
                    $total_results = mysql_num_rows($query);
                    $total_pages = ceil($total_results / $per_page);

                    if (isset($_GET['page']) && is_numeric($_GET['page']))
                    {
                        $show_page = $_GET['page'];

                        // make sure the $show_page value is valid
                        if ($show_page > 0 && $show_page <= $total_pages)
                        {
                            $start = ($show_page -1) * $per_page;
                            $end = $start + $per_page;
                        }
                        else
                        {
                            // error - show first set of results
                            $start = 0;
                            $end = $per_page;
                        }
                    }
                    else
                    {
                        // if page isn't set, show first set of results
                        $start = 0;
                        $end = $per_page;
                    }

                    // display pagination


                    echo "<p><b>Страници: </b> ";
                    for ($i = 1; $i <= $total_pages; $i++)
                    {
                        echo "<a href='res.php?page=$i'>$i</a> ";
                    }
                    echo "</p>";

                    // display data in table

                    echo '<table class="table table-striped table-bordered responsive">';
                    echo "<thead>";
                    echo '<tr>		
                    		<th data-align="center" data-halign="center">Име</th> 
                    		<th data-align="center" data-halign="center">Статус</th>
                    		<th data-halign="center">Действие</th>
                    	    </tr>
                    	  </thead>';
                    echo '<div class="row">';
                    echo '<div class="box col-md-12">';
                    echo '<div class="box-content">';
                    echo "<tbody>";

                    for ($i = $start; $i < $end; $i++)
                    {

                        if ($i == $total_results) { break; }

                        echo '<tr>';                        
                        echo '<td class="center">' . wordwrap(mysql_result($query, $i, 'Name'), 13, "<br/>\n", true) . '</td>';
                        echo '<td class="center" style="width: 0px;">			            
			            <div class="btn-group">
			            <select>
			            	<ul class="dropdown-menu">
					    	<li><option> Статус:'. mysql_result($query, $i, 'status' ) .' 
					      		<span class="caret"></span>
					    	</option></li>
						<li><option value="1">1</option></li>
						<li><option value="2">2</option></li>
			            	</ul>
				    </select>				     
				    </div>
                               </td>';
                                echo '<td class="center">
	                        <a  class="btn btn-info" href="users/Confirm.php?id=' . mysql_result($query, $i, 'id') . '">
	                        <i class="glyphicon glyphicon-edit icon-white"></i>
	                        Ъпдейт</a></td>';

                        echo "</tr>";
А това е confirm.php
Код:
if (isset($_GET['id']) && is_numeric($_GET['id']))
{

    $id= $_GET['id'];
    $query = "SELECT * FROM res WHERE id=$id";
    $res = mysqli_query($con, $query);
    $row = mysqli_fetch_assoc($res);

    if ($stmt = $con->prepare("UPDATE res SET status = ? LIMIT 1"))

    {
        $stmt->bind_param("i",$id);

        $stmt->execute();
        $stmt->close();
    }

    else
    {
        echo "ERROR: could not prepare SQL statement.";
    }
    $con->close();

    // redirect user after delete is successful
header('Location:'.$_SERVER['PHP_SELF'].');
die;
}
Така, както е прихващам ID-то и записвам него в полето статус, което е разбираемо, защото аз него подавам на бутона 'Ъпдейт'. Но как прихване статуса?
 
Кода ти не е много правилно написан.
Трябва да създадеш или select или ul,
но не и двете едновременно !
Използването на div и table заедно е грешно.
Трябва да си преработиш кода според мене.
Виждам че използваш jQuery Mobile.
Ето ти един груб пример за падащия списък:
Код:
<!DOCTYPE HTML>
<html>
<head>
	<meta charset="utf-8" />
	<title>select test</title>
    <script src="http://code.jquery.com/jquery-2.1.1.min.js"></script>
    <script>
      $(function(){
        $('.dropdown-menu').children().click(function(){
          if ( $(this).attr('value')>0 ) {
            var url='users/Confirm.php?id=';
            window.location.href=url+$(this).attr('value');
          }
        });
      });
    </script>
</head>
<body>
  <div class="btn-group">
    <br />------------------<br />
    ВАРИАНТ 1 (html)
    <br />------------------<br />
    <select class="dropdown-menu">
      <option value="0">Изберете статус</option>
      
      <option value="1">Статус: 1</option>
      <option value="2">Статус: 2</option>
    </select>
    <br />------------------<br />
    ВАРИАНТ 2 (jquery)
    <br />------------------<br />
    <ul class="dropdown-menu">
      <li value="0">Изберете статус</li>
      
      <li value="1">Статус: 1</li>
      <li value="2">Статус: 2</li>
    </ul>
    <br />------------------<br />
  </div>
</body>
</html>
 

Back
Горе