2012-02-26 2 views
-1

가능한 중복 :
Populating a dynamic drop down menu from a MySQL database할당 데이터베이스 값

내 양식이 성공적으로 MySQL의 데이터베이스하지만를 업데이트

나는 데이터베이스를 할당 할에 사용자가 다시 로그인 할 때 값을 드롭 다운 상자에서 선택한 값으로 사용자가 선택한 항목으로 변경합니다.

PHP :

<?php 
session_start(); 
require_once("config.php"); 
if(!isset($_SESSION['username'])){ 
    header('Location: login.php');/
    } 
} 
if(isset($_POST['submit'])){   
    $sql = "UPDATE user SET attendance1 = '" . mysql_real_escape_string($_POST['attendance1']) . "' WHERE username = '" . mysql_real_escape_string($_SESSION['username']) . "'"; 
mysql_query($sql) or die("Error in SQL: " . mysql_error()); 
    $sql = "UPDATE user SET food1 = '" . mysql_real_escape_string($_POST['food1']) . "' WHERE username = '" . mysql_real_escape_string($_SESSION['username']) . "'"; 
mysql_query($sql) or die("Error in SQL: " . mysql_error()); 
    $sql = "UPDATE user SET drink1 = '" . mysql_real_escape_string($_POST['drink1']) . "' WHERE username = '" . mysql_real_escape_string($_SESSION['username']) . "'"; 
mysql_query($sql) or die("Error in SQL: " . mysql_error()); 

    header("Location: thanks.html", true, 303); 
} 
    $row2 = "SELECT * FROM user WHERE username = '" .  mysql_real_escape_string($_SESSION['username']) . "'"; 
    $result = mysql_query($row2) or die("Error in SQL: " . mysql_error()); 
    $row3 = mysql_fetch_array($result); 
    echo $row3['shade1']; 
     ?> 

FORM :

<form> 

      <input name="attendance1" type="radio" id="Yes" value="Yes" checked="checked"/>Yes 
      <br /> 
    <input name="attendance1" type="radio" id="No" value="No" />No 
      </h3></td> 
      <td> 
        <select name="colour1" id="colour1" > 
       <option selected="selected">Please Select</option> 
       <option>Red</option> 
       <option>White</option> 
       <option>Green</option> 
      </select> 
      </td> 
      <td><h3> 
        <select name="shade1" id="shade1" > 
       <option selected="selected">Please Select</option> 
       <option value="Light" <?php if($row2['shade1']=="Light") { echo "selected"; }?>>Light</option> 
       <option value="Heavy" <?php if($row2['shade1']=="Heavy") { echo "selected"; }?>>Heavy</option> 
      </select> 
      <td>&nbsp;</td> 
      <td><label> 
      <input type="submit" name="submit" id="button" value="Submit" /> 
      </label></td> 
     </tr> 
     </table> 
</form> 
+1

실제로 어딘가에 쿼리가 실행되고 있습니까? 스 니펫에서 row2는 쿼리 문자열 일 뿐이므로 mysql_fetch_assoc을 사용하여 db에서 반환 된 결과 집합 행이 아님 –

+0

내 문제는 여기에서 도와 줄 수 있습니까? – Jacob1

+0

2 시간 전에 동일한 질문을하지 않았습니까? http://stackoverflow.com/questions/9456571/populating-a-dynamic-drop-down-menu-from-a-mysql-database – mariogl

답변

0

당신이 사용할 수있는 JQuery와 :

1) 값이 원하는 얻을 수 $(document).ready()에서 $.ajax 전화를 사용

2) 다음과 같이 설정하십시오 :

는 현재이 같은 값을 선택되어, 당신의 <select></select> 요소 "옵션"의 ID를 가지고있다 말 :

$("#options").val(optionToBeSelected); 

optionToBeSelected 당신이 선택하게 할 <option></option> 요소의 value 속성입니다.

이 코드는 유용합니다. 누군가 내 대답에 중대한/사소한 결함이있는 경우 알려주십시오.