我想要的效果是
<table>
 <?php  $i=1;
       do { ?>
<tr>
//标题
<td><a href="default_task_edit.php?editID=<?php echo $row_Recordset_task['TID']; ?>" ><?php echo $row_Recordset_task['csa_title']; ?></a></td>
</tr>
            <?php $i=$i+1;
            } while ($row_Recordset_task = mysql_fetch_assoc($Recordset_task));
 ?>
</table>
</td>
<td rowspan="2" width="80%" align="center"><?php echo $multilingual_neirong; ?>
//在这里显示标题所相关的内容,内容在在、数据库的值为$row_Recordset_task['csa_text']
</td>

解决方案 »

  1.   

     <?php $i=1;
    $row_Recordset_task = mysql_fetch_assoc($Recordset_task);
      do { ?>
      

  2.   

    不太懂,遍历数据库然后echo出来吧
      

  3.   

    你说的同页面是根据editID跳转后的default_task_edit.php这个页面么?如果这样跳转的话就已经不在同一页面了
      

  4.   

    你需要在default_task_edit.php这个新页面上get下得到editID的值 然后根据这个值在执行一次数据库查询 得到$row_Recordset_task['csa_text']这个记录 然后再输出
      

  5.   

    <a href="default_task_edit.php?editID=<?php echo $row_Recordset_task['TID']; ?>" ><?php echo $row_Recordset_task['csa_title']; ?></a>是原来设计的,写的不对,不要页面跳转
      

  6.   

    你是不要页面刷新么 那就用ajax 或者笨点的方法就是做个跟原来页面样式一样的新页面 跳转到这个新页面 跟原来的界面差不多 视觉上好像是没刷新一样
      

  7.   

    同意楼上  用ajax!!!
      

  8.   


    <?php
    /* Created on [2012-5-16] Author[yushuai.niu] */
    #查询标题信息
    $sql="select * from table";
    $res=mysql_query($sql);
    if(!$res) die("SQL: {$sql} <br>Error:".mysql_error());
    if(mysql_affected_rows() > 0){
    $titles = array();
    while($rows = mysql_fetch_array(MYSQL_ASSOC)){
    array_push($titles,$rows);
    }
    }
    ?>
    <table border=1>
    <?php foreach($titles as $row_Recordset_task){ ?>
    <tr>
    <td>
    <a href="javascript:void(0)" onclick="record(<?=$row_Recordset_task['TID']?>)" >
    <?=$row_Recordset_task['csa_title']?>
    </a>
    </td>
    </tr>
    <?php } ?>
    </table>
    <div id="show"></div>
    <script>
    //Ajax
    var xmlHttp; function createXMLHttpRequest() {
    if(window.XMLHttpRequest) {
    xmlHttp = new XMLHttpRequest();
    } else if (window.ActiveXObject) {
    xmlHttp = new ActiveXObject("Microsoft.XMLHTTP");
    }
    } function record(id){
    createXMLHttpRequest();
    url = "action.php?id="+id+"&ran="+Math.random();
    method = "GET";
    xmlHttp.open(method,url,true);
    xmlHttp.onreadystatechange = showList;
    xmlHttp.send(null);
    } function show(){
    if (xmlHttp.readyState == 4){
    if (xmlHttp.status == 200){
    var text = xmlHttp.responseText;
    document.getElementById("show").innerHTML = text;
    }else {
    alert("response error code:"+xmlHttp.status);
    }
    }
    }
    </script>
    <?php
    #action.php
    if(isset($_GET['id'])){
    $sql="select * from table where id=".$_GET['id'];
    $res=mysql_query($sql);
    if(!$res) die("SQL: {$sql} <br>Error:".mysql_error());
    if(mysql_affected_rows() > 0){
    $rows = mysql_fetch_array(MYSQL_ASSOC);
    }
    print_r($rows);
    mysql_close();
    }?>
      

  9.   

    只显示标题所相关的内容,没必要整体刷新,要用ajax会更好点吧。你只需把值(id)通过js拿到后,通过一个XMLHttpRequest对象把它发送到服务器后,查询出 的结果返回给客户端即可。在你写注释的地方最好写个div标签,一般都这么做的,用来显示其内容。这样不仅解决了传值问题,还解决了页面刷新问题。不知楼主意下如何呢???
      

  10.   

    <?php
    do { 
           $titles = array();
            array_push($titles,$row_Recordset_task);
            //$row_Recordset_task 已定义没问题
            }while($row_Recordset_task = mysql_fetch_assoc($Recordset_task));
    ?>
    <table border="1">
    <?php 
    foreach($titles as $rows){  ?>
        <tr>
            <td>
                <a href="javascript:void(0)" onclick="record(<?=$rows[TID]?>)" >
                    <?=$rows[csa_title]?>
                </a>
            </td>
        </tr>
    <?php } 
    这样写怎么还是不对,不输出值
      

  11.   

    楼主可否告知你加 do 循环的意图?
    do……while 是指:在执行while语句的内容之前,先进行do中的内容。
    这里没有加do的必要!
    直接按照#11的写法就行了,只需要修改你的sql执行语句。
      

  12.   

    建议楼主看看PHP手册:函数参考->mysql函数->mysql_fetch_array()中有例子
    http://download.csdn.net/detail/dmtnewtons/4122897
      

  13.   

    遍历数据库时while语句老会少一条,不知道为什么,所以用do{
    不过现在那块没问题了
    这样写的
    <?php
    $titles = array();
    do { 
            array_push($titles,$row_Recordset_task);
    #$row_Recordset_task获取数据库值,已定义
            }while($row_Recordset_task = mysql_fetch_assoc($Recordset_task));
    ?><table border="1" width="100%">
    <?php 
    $i=1;
    foreach($titles as $val){  ?>
        <tr>
            <td align="center">
                <a href="javascript:void(0)" onclick="record(<?=$val[TID]?>)"><?php echo $i . "、";?><?=$val[csa_text]?>&nbsp;&nbsp;&nbsp;<?=$val[TID]?></a>
            </td>
        </tr>
    <?php 
    $i+=1;} ?>
    </table>
     onclick="record(<?=$val[TID]?>)这个跳转还是不行 <?=$val[TID]?>已经读取到数值了
      

  14.   

    把<script>//Ajax内容</script>放到head中,点击有反应吗?
      

  15.   

    谢谢你了
    这样写了<?php
    $titles = array();
    do { 
            array_push($titles,$row_Recordset_task);
    #$row_Recordset_task获取数据库值,已定义
            }while($row_Recordset_task = mysql_fetch_assoc($Recordset_task));?>
    <table border="1" width="100%">
    <?php $i=1;foreach($titles as $val){  ?>
        <tr>
            <td align="center">
                <a href="javascript:void(0)" onclick="record(<?=$val[TID]?>)"><?php echo $i . "、";?><?=$val[csa_text]?>&nbsp;&nbsp;&nbsp;<?=$val[TID]?></a>
            </td>
        </tr>
    <?php 
    $i+=1;} ?>
    </table>
    但是onclick还是不成功,ajax那些功能函数看不懂,不知道对不
      

  16.   

    因为用while老会少一条查询结果,不知道为什么,所以用do{
      

  17.   


       function record(id){
            alert("id-->>"+id);   //这样有反应吗?
            createXMLHttpRequest();
            url = "action.php?id="+id+"&ran="+Math.random();
            method = "GET";
            xmlHttp.open(method,url,true);
            xmlHttp.onreadystatechange = showList;
            xmlHttp.send(null);
        }
      

  18.   

    如果<a href="javascript:void(0)" onclick="record(<?=$val[TID]?>)">
    record的参数不是数字,需要加引号:<a href="javascript:void(0)" onclick="record('<?=$val[TID]?>')">html中<div id="show"></div>不能少,不然接收不到返回信息。
    另,楼主添加action.php页面了吗?
       print_r($rows);有结果吗?
      

  19.   

    alert("id-->>"+id);  有结果 3和5
      

  20.   

    中xmlHttp.onreadystatechange = showList;的showlist改为show就好了,谢谢dmtnewtons了