开发者

PHP dropdown sticky

I have a database populated drop down list.

$options4=""; 



    while ($row = mysql_fetch_array($result)) { 

        $id=$row["Client_Code"]; 
        $thing=$row["Client_Full_Name"]; 
        $options4.="<OPTION VALUE=\"$id, $thing\">".$thing; 
    } 
    ?>

    <FORM name="form" action="<?php echo $_SERVER['PHP_SELF']; ?>" method="POST">

    <SELECT NAME="ClientNamefour" OnChange="this.form.submit()">

        <OPTION VALUE=0>Client
        <?php echo $options4?> 

      </SELECT>
    </FORM>

Once this changes it pulls a client name from a database and brings up some information there is a form that can be filled out to insert more information into a database. Once that form is filled out this page sends the information to another page with the code to insert the data into the database. Then I am using a header at the end of that code to send it back to this page. But when it comes back to this page I want it to comeback to the client they selected before and not a blank screen. So how do I make a DB populated list automatically comeback to the previous selection using p开发者_开发技巧hp?


All you need to do is modify the way you construct the options to spot when you are creating the selected one, then add a SELECTED attribute to it...

    //obtain current value from GET, POST or COOKIE value...
    $current=isset($_REQUEST['ClientNamefour'])?$_REQUEST['ClientNamefour']:'';

    while ($row = mysql_fetch_array($result)) { 

        $id=$row["Client_Code"]; 
        $thing=$row["Client_Full_Name"]; 
        $value="$id, $thing";

        //figure out if we should select this option...
        $sel=($value==$current)?'SELECTED':'';

        $options4.="<OPTION $sel VALUE=\"$value\">".$thing; 
    } 

One way to keep the value persistent would be to store it in the session, e.g. when you process the form

    //assuming session_start() has been called...
    if (isset($_POST['ClientNamefour']))
         $_SESSION['ClientNamefour']=$_POST['ClientNamefour'];
0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜