在上面在写一个
<?php$a="http://163.com";?>哈哈~~同样可以

解决方案 »

  1.   

    <SCRIPT LANGUAGE="JavaScript">
    <!--
    function a(){
    var c = document.getElementById("aaa").outerText;
    self.location = c;
    }
    //-->
    </SCRIPT>
    <a href="#" onclick="a()">hehe</a>
    <div id="aaa">
    <?php
    $a="http://www.163.com";
    ?>
    </div>我的笨方法!~~但可以链过去是真的;
      

  2.   

    哈哈
    答对了,但是使用JS就可以了,直接location过去,再用DIV是多余了;
    至于使用DIV方法就更简单了,但是需要有DW的配合,将那个连接放到DIV里面,然后把代码拖到下面,将DIV的位置定义在上面,即可搞定。
    这种思路可以“改变”程序自上而下运行的方式,可以为大家写程序的时候带来很多的便利,自己看着用吧,呵呵~~
      

  3.   

    用DIV,JS ? 那可就不是php的事了。
    php本身就可解决这个问题
      

  4.   

    上面二位我要说的是:
    我提出这个问题是从实际情况出发,并不是随便乱出的,把变量声明和初始化提到前头当然可以。
    但是,如果是使用PHP与HTML交杂的写法,那么PHP的程序就不能按自己的思路去写,因为要受到HTML的限制,这个问题产生的起因是这样的:
    <HTML 链接代码(需要取$a的值) >
    <......HTML(表格等等) ....>
    <?php 
    数据库查询代码
    得到$a
    while(){
    ?>
    <......html......>
    <?php
    }
    ?>可以看到,此时是无法改变PHP程序位置的,所以只能想办法先不要输出$a,然后想办法实现同样的效果,解决这个问题的办法就是我上述所说
      

  5.   

    这根本就是程序规划问题-------------------------没错,楼主把html代码,php控制程序和sql查询代码全部放在一个文件里面,这样低级的做法当然会遇到这种“有挑战性的问题”了。
      

  6.   

    <?php
    数据库查询代码
    得到$a
    ?>
    <HTML 链接代码(需要取$a的值) >
    <......HTML(表格等等) ....>
    <?php 
    while(){
    ?>
    <......html......>
    <?php
    }
    ?>还是可以照样挪到上面去。你所谓的不能挪到上面,是因为你查寻数据库的代码比较多,嫌麻烦,页面比较乱,不想挪上去。
    调整你的程序架构:/**API文件
     *@ include/mysql.class.php
    */class DataBase{
    //数据库连接代码
    }class queryDB extends DB{
    //数据库查寻代码,对mysql自带的函数进行二次封装,根据你的项目需求写一些方便的函数,比如,根据一个值,返回一个表内具有所有记录的数组等...
    }/**全局文件
     *@ global.php
    */
    require_once "include/mysql.class.php";
    $wg_DB = & new queryDB();
    $tpl = new smarty();
    //一些全局信息,如模板配置信息,全局变量如$wg_Title等
    /**业务逻辑处理页面
    *@ xxx.php
    *///数据库查询代码,得到$a
    $a = $DB->xxx();
    //赋值为模板变量,并显示模板
    $tpl->assign('a',$a);
    $tpl->display('xxx.tpl');/**
    *@ xxx.tpl
    */
    //嵌入标签{$a}
    {section name=xxx loop=$a}
    <HTML 链接代码(需要取$a的值) >
    <......HTML(表格等等) ....>
    {/section}这样的程序架构才不会乱
      

  7.   

    业务逻辑处理页面要require_once "configs/global.php";一下
      

  8.   

    吐血了
    看来我不描述清楚还真是不行代码如下:
    <表格>
    <单元格 需要得到 $a 的值>
    <PHP代码 查询数据库 开始循环>
    <单元格 输出内容,并经不定次循环后得到最后的$a>
    <PHP代码 结束循环>
    <单元格>
    </表格>大体上就是这样,哪位高人能想出更好的解决方法?
      

  9.   

    更好的办法就是--模板 (程序本身规划好也是一样的效果)程序在生成全部数据后再调用模板显示部分.
    数据的生成不应受 显示 的影响.只要想想如果界面需要大的改变的情况, 
    就知道如何做了.这样先已经把数据和界面完全混杂在一起,然后再
    用js做这样奇怪的操作,
    试想这样的程序经过N次这样那样的修改之后,
    还有人能碰吗?
      

  10.   

    <PHP代码 查询数据库 开始循环>
    <输出内容到二位数组,并经不定次循环后得到最后的$a>
    <PHP代码 结束循环>
    <表格>
    <单元格 输出$a 的值>
    <PHP代码 判断二位数组长度 开始循环>
    <单元格 读出数组对应值,输出内容>
    <PHP代码 结束循环>
    <单元格>
    </表格>
      

  11.   

    呵呵,昨天开发又碰到了类似的问题了,这次我用了个更加绝的:
    把要显示的内容做成一个控件,然后在页面最末尾给这个控件赋值,这样就完全解决了这个麻烦!!!像这样的操作太多的依赖PHP来完成会耗费服务器资源,放在客户端来做这些事情不是更好吗?
      

  12.   

    笨笨,改成这样不就行了吗?<a href="<?php echo a();?>">hehe</a><?php
      function a(){
        $a="http://163.com";
        return $a;
      }
    ?>