引用 自己看看PHP+AJAX连接MYSQL
<?
    //连接到本地mysql数据库
    $myconn=mysql_connect("localhost","root","");
    //选择test为操作库
    mysql_select_db("test",$myconn);
    $strSql="select * from reguser";
    //用mysql_query函数从user表里读取数据
    $result=mysql_query($strSql,$myconn);
    while($row=mysql_fetch_array($result))//通过循环读取数据内容
    {
?>
<?
    }
    //关闭对数据库的连接
    mysql_close($myconn);
?>

解决方案 »

  1.   

    我知道 在PHP中如何连接数据库,查询表。控件1用PHP连接数据库从表中读出所有question,这个可以实现。现在问题是:
    当用户选择一个问题时,即时显示该问题对应的答案。
    也就是说:根据用户选择的问题,用AJAX或者javascript查询数据表,得到结果,即时显示在页面上。
      

  2.   

    在select的onchange事件中使用ajax发送选择的问题到一个php,然后这个php获取发送的问题然后读数据库,最后返回给调用页面给个简单的流程给你
    test.htm
    <!--使用php读数据库生成,注意value是id,希望你的表中有id,要不直接是问题的也得-->
    <select id="selQuestion" onchange="SendData(this.value)">
     <option value="问题1的id">问题1</option>
     <option value="问题2的id">问题2</option>
     <option value="问题3的id">问题3</option>
    </select>
    <textarea id="taAnswer"></textarea>
    <script>
    function $(id){return document.getElementById(id);}
    function createObj()
    {
      var o=null;
      if(typeof(XMLHttpRequest)!="undefined") return new XMLHttpRequest();  
      if(window.ActiveXObject){
        var MSXML=["MSXML2.XMLHttp.5.0","MSXML2.XMLHttp.4.0","MSXML2.XMLHttp.3.0","MSXML2.XMLHttp","Microsoft.XMLHTTP"];
        for(var i=0;i<MSXML.length;i++){
           try{
             o= new ActiveXObject(MSXML[i]);return o;
           }
           catch(e){}
        }
      }
      return null;
    }function SendData(v){
     var o=createObj();//创建ajax对象
     var url="answer.php?qid="+v;//===============你请求的url,参数为qid,你的answer.php需要的
     o.open("get",url,true);//=========================
     o.onreadystatechange=function(){
       if(o.readyState==4){
         if(o.status==200)$("taAnswer").value=o.responseText;
         else alert("发生错误!\n\n"+o.responseText);
       }
     }
     o.send(null);//发送请求
    }</script>answer.php
    <?php
    $qid=$_GET['qid'];//获取ajax发送的问题id或者问题名称
    $answer="";
    /*
    ======
    ====
    这里的代码是通过$qid来读数据库获取答案并且赋值给$answer,这个不用我说了吧
    */
    //获取到$answer后,使用echo输出,这样ajax就可以获取到返回的值了
    echo $answer;
    die();//注意这里要停止输出了,要不如果你的php页面还有其他内容也会一起输出
    ?>
      

  3.   

    PHP+AJAX实现也不需要太复杂的AJAXPHP后台的代码你应该会写的AJAX代码就如showbo 说的:<!--使用php读数据库生成,注意value是id,希望你的表中有id,要不直接是问题的也得-->
    <select id="selQuestion" onchange="SendData(this.value)">
     <option value="问题1的id">问题1</option>
     <option value="问题2的id">问题2</option>
     <option value="问题3的id">问题3</option>
    </select>
    <textarea id="taAnswer"></textarea>
    <script>
    function $(id){return document.getElementById(id);}
    function createObj()
    {
      var o=null;
      if(typeof(XMLHttpRequest)!="undefined") return new XMLHttpRequest();  
      if(window.ActiveXObject){
        var MSXML=["MSXML2.XMLHttp.5.0","MSXML2.XMLHttp.4.0","MSXML2.XMLHttp.3.0","MSXML2.XMLHttp","Microsoft.XMLHTTP"];
        for(var i=0;i<MSXML.length;i++){
           try{
             o= new ActiveXObject(MSXML[i]);return o;
           }
           catch(e){}
        }
      }
      return null;
    }function SendData(v){
     var o=createObj();//创建ajax对象
     var url="answer.php?qid="+v;//===============你请求的url,参数为qid,你的answer.php需要的
     o.open("get",url,true);//=========================
     o.onreadystatechange=function(){
       if(o.readyState==4){
         if(o.status==200)$("taAnswer").value=o.responseText;
         else alert("发生错误!\n\n"+o.responseText);
       }
     }
     o.send(null);//发送请求
    }</script>
      

  4.   

    ajax 请求PHP页面, PHP页面根据AJAX传过来的参数条件查询数据库, 返回数据后输出 以json形式传回前台页面, ajax得到传回的数据后用JS其他方法显示出来....
      

  5.   

    引用 自己看看PHP+AJAX连接MYSQL 
    <? 
        //连接到本地mysql数据库 
        $myconn=mysql_connect("localhost","root",""); 
        //选择test为操作库 
        mysql_select_db("test",$myconn); 
        $strSql="select * from reguser"; 
        //用mysql_query函数从user表里读取数据 
        $result=mysql_query($strSql,$myconn); 
        while($row=mysql_fetch_array($result))//通过循环读取数据内容 
        { 
    ?> 
    <? 
        } 
        //关闭对数据库的连接 
        mysql_close($myconn); 
    ?>
      

  6.   

    问题解决了。谢谢showbo!谢谢各位!
      

  7.   

    <HTML> 
    <HEAD> 
    <TITLE>   Sample   page   </TITLE> 
    </HEAD> 
       
    <BODY> 
    <script> 
       
    //var cpt_d="//172.1.1.1:1521/orcl";//DBサーバのIPとSID
    //var john="scott";//ユーザ名
    //var doe="tiger";//パスワードvar cpt_d="//192.168.1.179:1521/hcdb";//DBサーバのIPとSID
    var john="sjz";//ユーザ名
    var doe="sjz";//パスワード
    //用 JavaScript 写服务器端连接数据库的代码示例 
    var conn = new ActiveXObject("ADODB.Connection");
    //conn.Open("Provider=OraOLEDB.Oracle;Data Source="+cpt_d+";User ID="+john+";Password="+doe+";PLSQLRset=1"); 
    conn.Open("DSN=hcdb;UID=sjz;PWD=sjz"); var rs = new ActiveXObject("ADODB.Recordset");
    var sql="select EXCH_NAME EXCH_NAME,to_char(EXCH_ID) EXCH_ID from code_exch";rs.open(sql, conn, 2,1 ); 
    /*
    参数3表示游标类型,如下设置:
    参数3            意    义
    0 只读,   数据只能向下移动
    1 可读写,数据可以自由移动,多用户下别人不能看到新增数据(除非重启动)
    2 可读写,数据可以自由移动,多用户下别人可以看到新增数据
    3 只读 , 数据可以自由移动参数4表示锁定类型,如下:
    参数4           意    义
    1 默认值,   只读
    2                    悲观锁定
    3                    乐观锁定
    4                   批次乐观锁定
    也就是说第3个参数为1或2的时候,才能有recordcount 
    */shtml = "<table width='100%' border=1>";
    shtml +="<tr bgcolor='#f4f4f4'><td>KIND_ID</td><td>KIND_NAME</td></tr>";
    var i=0;
    while(!rs.EOF)
    {
    //    for (var i=0; i < rs.fields.count; i++)
    //   {
    //        alert(rs.fields(i).name + ":" + rs.fields(i).value);
    //   }
    shtml += "<tr><td>" + rs("EXCH_NAME") + "</td><td>" + rs("EXCH_ID") + "</td></tr>";rs.moveNext;
    i++;
    }
    shtml += "</table>";
    document.write(shtml); //alert(rs.RecordCount);alert(i);
    //alert(rs.fields.count);
    rs.close();
    conn.close();
    conn = null;
       
    </script> 
    </BODY> 
    </HTML>  
    给一个连接ORACLE的!!!