2011-03-10 80 views
1

我是codeigniter的新手,我正在开发一个项目。我必须创建一个动态下拉菜单,其中包含来自我的数据库的值,当您点击提交按钮时,在下拉菜单中进行选择时,必须出现一个新页面,其中所有与该省所选省份相关的城市下拉菜单出现时,城市也在我的数据库中。我的数据库由ID字段,省字段和城市字段组成。下拉菜单很好,但似乎不能让城市出现在下一页。您的帮助将不胜感激 确定这里是我的代码php下拉列表

这是从我的观点文件,该文件显示我的下拉菜单这一边是确定

<? 
    function writeCities($id) 
    {  
     $con = mysql_connect("localhost","root",""); 
     if (!$con) die('Could not connect: ' . mysql_error()); 
     mysql_select_db("msansi", $con); 
     $query = "SELECT cities FROM provinces WHERE id ="; 
     $query .= $id; 
     $result = mysql_query($query);   

     $row = mysql_fetch_array($result); 
     echo $row[0];  
    } 



    function populateDropBox() 
    { 
     $con = mysql_connect("localhost","root",""); 
     if (!$con) die('Could not connect: ' . mysql_error()); 
     mysql_select_db("msansi", $con); 
     $result = mysql_query("SELECT id,title,cities FROM provinces"); 

     while($row = mysql_fetch_array($result)) 
     { 
      echo "<option value=$row[0]>" . $row['title']."</option>"; 
     } 
    } 
?> 

<form name="myform" action="http://localhost/CodeIgniter_1.7.3/index.php/ndivhuho/submit" method="post"> 

    <select name = "province" onChange="onChangeDropBox();"/> 
    <? populateDropBox(); ?>  
    <input type="submit" value="submit"; />  
    </form> 

,这里是我的其他视图文件,该文件应该在文本区域显示城市

<? 
    function writeCities($id) 
    {  
     $con = mysql_connect("localhost","root",""); 
     if (!$con) die('Could not connect: ' . mysql_error()); 
     mysql_select_db("msansi", $con); 
     $query = "SELECT cities FROM provinces WHERE id ="; 
     $query .= $id; 
     $result = mysql_query($query);   

     $row = mysql_fetch_array($result); 
     echo $row[0];  
    } 


?> 

<script type="text/javascript"> 
function onChangeDropBox() 

    { 
     var selected =0; 
     selected = document.myform.province.value;     

     var t = "<? writeCities(1);?>"; 
     document.myform.textArea.value = t; 

    } 
</script> 

    <form name=myform> 


    <textarea name="citites" readonly="true";></textarea> 
    </form> 

我敢肯定,我需要在我的控制器中做的事情,我不知道 thanxx提前!

+0

确定这里是我的代码 – user653006 2011-03-10 06:51:36

+0

哪里是你的代码?请将其编辑为您的原始问题。 – Dre 2011-03-10 06:52:44

回答

1

有几个问题这里。

您提供的代码使用本地php函数连接到mysql。你应该使用正确的CodeIgniter库。从阅读开始。

http://codeigniter.com/user_guide/database/examples.html

一旦你读过..

“这是从我的观点文件,该文件显示我的下拉菜单”

就拿代码从您的视图文件!数据库调用应该在模型中,并且应该由控制器调用,该控制器将数据传递给您的视图文件。

大概阅读本太:

http://en.wikipedia.org/wiki/Model%E2%80%93View%E2%80%93Controller