怎么捕捉控件,放在SQL中去?
比如我现在有控件一、控件二、控件三、控件四、控件五。现在我捕捉控件一,select * from 表名 where 字段=控件一,然后控件二、控件三、控件四、控件五根据查询条件显示出相应数据,这个可以解决吗,谢谢高手.

解决方案 »

  1.   

    控件是啥东东呀? 可以用ajax提交查询条件,然后服务器端获取,然后拼凑sql语句. 
    extract($_POST);//$_GET
    $sql = sprintf("select * from 表名 where 字段=%s, 字段=%s ", $条件1, $条件2);
      

  2.   

    比如我现在有控件一、控件二、控件三、控件四、控件五。现在我捕捉控件一,select * from 表名 where 字段=控件一,然后控件二、控件三、控件四、控件五根据查询条件显示出相应数据,这个可以解决吗,谢谢高手.现在控件一就看成文本框一吧,让填的
    <o:p><INPUT value='' name='DATA_1' title=预约单位名称 style="FONT-SIZE: 12px; WIDTH: 281px; HEIGHT: 20px" size=42></o:p>
    这个就是一个控件
      

  3.   

    不知道看明白没,因为我做.NET的,现在接触一下PHP的东西,所以麻烦高手们如果可行的话说说具体怎么做。我刚问一个朋友,说变量(控件的值)不能代入SQL
      

  4.   

    php里没有控件这一说法啊?比如你现在回答问题的文本框,这个文本框有个ID(.NET的说法叫控件)<o:p> <INPUT value='' name='DATA_1' title=预约单位名称 style="FONT-SIZE: 12px; WIDTH: 281px; HEIGHT: 20px" size=42> </o:p> 这应该是个控件吧
    我现在想根据select * from 表名 where 字段='DATA_1' ?
    .net里取ID,不知道PHP里怎么取
    然后让其它几个文本框根据查出的数据显示对应的东西
      

  5.   

    $_POST
    $_GET你看看页面怎么传值就可以了。。
      

  6.   

    控件的name属性值就是数据库内的字段值?
    考虑ajax咯,将name属性作为http的参数get至某个后台php文件.
      

  7.   

    能不能写点详细的东西,谢谢高手们,第一次接触PHP,谢谢
      

  8.   

    你要知道啥是html,然后了解ajax,然后再了解php+mysql.
    要不然你没法做.
      

  9.   

    服务端的层面无非就是接收get参数,执行sql语句,echo返回值。
    客户端不知道你是否使用了何种框架,发送一个ajax请求就几行的事。
    裸写也不会太多。。
    客户端代码:
    <script type="text/javascript">
    var $ = function($){
    return document.getElementById($);
    }
    var $ajax = function(config){
    this.__construct(config);
    }$ajax.prototype = {
    __construct : function(c){
    for(var i in c){
    this[i] = c[i];
    }
    this.initObj();
    },
    initObj : function(){
    var xhr = null;
    if(window.all){
    //ie
    try{xhr = new ActiveXObject("Msxml2.XMLHTTP");}catch(e){xhr = new ActiveXObject("Microsoft.XMLHTTP");}//ie7.0+ or ie6.0-
    }
    else{
       //ff
       xhr = new XMLHttpRequest();
    }
    if(xhr) this.xhr = xhr;
    },
       send : function(){
      if(!this.xhr) return;
      else{
    this.xhr.open(this.type||'GET',this.url);
    if(this.type == "POST"){
    this.xhr.setRequestHeader("Content-Type","application/x-www-form-urlencoded");
    }
    this.xhr.onreadystatechange = this.done.call(this)
    this.xhr.send(this.params||null);
      }
       },
       done : function(){
    //var r = this.xhr.responseText;
    var self = this;
    return function(){

    if(self.xhr.readyState == 4){
    if (self.xhr.status == 200){
    var response = self.xhr.responseText;
    self.callback.success.call(self,response);
    }
    else if (this.xhr.status == 404){
    var response = self.xhr.responseText;
    self.callback.fail.call(self,response);
    }
    }
    }

       }
    }
    var get = function(p)
    {
    (new $ajax({
       url  : 'abc.php?f='+p 
      ,callback : {
    success : function(o){$('DATA_1').value=o}
       ,fail : function(o){alert(o)}
       }
    }
    )).send();
    }
    </script><input type='text' name='DATA_1' id='DATA_1' value="" size="100"/><input type="button" value="click me & get what you want" onclick="get('DATA_1')"/>php端代码
    ============
    <?php
    //要连接数据,执行以下语句,得到结果后,输出。以下只是示例.
    echo "select * from table where some_field='".$_GET['f']."'";
    ?>
      

  10.   

    控件捕捉,说得深奥。大家范迷糊,AJAX是最好的办法了!
      

  11.   

    楼上楼上的能否加你的QQ?具体的说说行不?你的QQ是多少??????能说告知一哈
      

  12.   

    php不像.net那样去拖控件,php都是写的,然后给个命名name,取的时候可以用POST或者GET方式取,如果想无刷新获取数据,可以用AJAX去实现
      

  13.   

    先看点基础知识,或者你直接花钱外包吧一个帖子里要扫盲+入门培训+PHP+Ajax技术讲解似乎不可能
      

  14.   

    .NET也是可以去写控件代码的 主要看个人的习惯有的人喜欢拖有的人喜欢写代码:楼上说的方法这些能明白 但对于我们这些刚接触PHP的人有点困难 我 和 楼主是  同事 现在遇到这个问题 我们一起在想解救的办法:如果有高手或者 会PHP的 同胞大哥们看到此贴 请帮忙 解救哈 。我们原本是搞.NET的 这个问题是.NET中是非常好解决的,但是又不太懂PHP 只好请教了!在此谢谢各位!主要是 
    楼主的这个问题是:
     在一个PHP自定义的编辑器中里面 自设计 模块布局表单。然后在新建一个新的页面 会把 刚建立的 模块 调出来 向里面 填数据 存放到数据库中。现在的问题是: 
     在这个调用模块的页面里面 要实现 在输入第一个文本框的值后当参数 回车 把 刚刚存放在数据库里面的值取出现依次在填入到其它相对应的文本框中;[color=#008000](楼主的问题是:在这个编辑器中其它文本框中 能否 捕捉控件一,select * from 表名 where 字段=控件 直接查询控件一里的值 将这个控件一的值做为查询条件当参数传进SQL语句中 )是否可以实现:[/color]或者
    有没有其它方法只要能实现第一个文本框按下的时候救把相关值天填入到其它控件中 ?
      

  15.   

    我给你的那个例子改改就可以了啊,这些需求80%的编码量在客户端页面,php可以返回json格式的数据,ajax发送成功后回调里相应写些js codes就行了。你们刚接触php,php与mysql交互的代码总会写吧?不会就下个php手册看看.html:
    <script type="text/javascript">
    var $ = function($){
    return document.getElementById($);
    }
    var $ajax = function(config){
    this.__construct(config);
    }$ajax.prototype = {
    __construct : function(c){
    for(var i in c){
    this[i] = c[i];
    }
    this.initObj();
    },
    initObj : function(){
    var xhr = null;
    if(window.all){
    //ie
    try{xhr = new ActiveXObject("Msxml2.XMLHTTP");}catch(e){xhr = new ActiveXObject("Microsoft.XMLHTTP");}//ie7.0+ or ie6.0-
    }
    else{
       //ff
       xhr = new XMLHttpRequest();
    }
    if(xhr) this.xhr = xhr;
    },
       send : function(){
      if(!this.xhr) return;
      else{
    this.xhr.open(this.type||'GET',this.url);
    if(this.type == "POST"){
    this.xhr.setRequestHeader("Content-Type","application/x-www-form-urlencoded");
    }
    this.xhr.onreadystatechange = this.done.call(this)
    this.xhr.send(this.params||null);
      }
       },
       done : function(){
    //var r = this.xhr.responseText;
    var self = this;
    return function(){

    if(self.xhr.readyState == 4){
    if (self.xhr.status == 200){
    var response = self.xhr.responseText;
    self.callback.success.call(self,response);
    }
    else if (this.xhr.status == 404){
    var response = self.xhr.responseText;
    self.callback.fail.call(self,response);
    }
    }
    }

       }
    }
    var get = function(p)
    {
    (new $ajax({
       url  : 'abc.php?f='+p 
      ,callback : {
    success : function(o){
    var rs = eval('('+o+')');
    for(var i in rs){
    if(!$(i)) continue;
    $(i).value = rs[i];
    }
    }
       ,fail : function(o){alert(o)}
       }
    }
    )).send();
    }
    </script><input type='text' name='DATA_1' id='DATA_1' value="" size="100"/><input type="button" value="click me & get what you want" onclick="get('DATA_1')"/><br/>
    <input type='text' name='name' id='name' value="" size="100"/><br/>
    <input type='text' name='sex' id='sex' value="" size="100"/><br/>
    php:
    <?php
    $sql =  addslashes("select * from table where some_field='".$_GET['f']."'");echo "{'DATA_1':'{$sql}','name':'lake','k':'v','sex':'male'}";
    ?>