<?echo $$strname;?>
这是什么东西?

解决方案 »

  1.   

    將這一排代碼:
    <td><input type=checkbox value=100 name=<?echo "checkbox".$myid?> onclick="return mycheckbox(this.name);">
    該為:
    <td><input type=checkbox value=<?=$temp[addressnum]?> name=<?echo "checkbox".$myid?> onclick="return mycheckbox(this.name);">
    選中哪個地址,其值就為$temp[addressnum],否則為空
    提交以後,用循環判斷一下即可
      

  2.   

    我想对选中的checkbox进行一些处理,即将选中的checkbox放在一个数据中,在进行提交时将数组中的值传至数据库即可。现在要解决的是怎样把选中的值传入一个数组。
    请高手看一下,谢谢。
    td><input type=checkbox value=<?=$temp[addressnum]?> name=<?echo "checkbox".$myid?> onclick="return mycheckbox(this);">function mycheckbox(myobject)
    { var myobject;  
      if (myobject.checked)
        { aa=myobject.name;
          bb="adfadfadf";
       // aa[aa.length+1]=myobject.name;
        alert(myobject.name+"="+myobject.value);
        }
     // else
     //  { for(i=0;i<a.length;i++)
     //     { if (aa[i]==myobject.name)
     //       {aa[i]="";}
     //     }
     //  }
     return aa;
    }
      

  3.   

    加上一個隱藏控件來保存選擇的地址編碼
    <input type=hidden name=addressname>
    //提交時處理函數
    function checkform(form)
    {
       n=form.length;
       for(i=0;i<n;i++){
         if(form.elements[i].type=="checkbox"&&form.elements[i].checked){
             form.addressname.value+=form.elements[i].value;
          }
       }
    }
      

  4.   

    將這一行:
    form.addressname.value+=form.elements[i].value;
    改為:
    form.addressname.value+=form.elements[i].value+",";本人認爲在後臺處理更好,更安全,不應該用javascript來處理
      

  5.   

    實際上你可以將所有的地址編碼控件命名為同一個名字,如addressname[]
    提交到後臺以後得到一個變量為$addressname的數組,數組的元素就是你選中的值的集合
    (註:addressname後面一定要[])
      

  6.   

    我想用一个数组来处理:
    如有checkbox1,checkbox2,checkbox3,checkbox4,checkbox5
    定义一个数组var temparray=new Array();
    当选中checkbox1时 数组长度temparray.length=1 数组中的值temparray=1
    当再选中checkbox2时temparray.length=2 temparray=1,2
    当再选中checkbox3时temparray.length=3 temparray=1,2,3
    当再选中checkbox4时temparray.length=4 temparray=1,2,3,4
    当再不选中checkbox2时temparray.length=3 temparray=1,3,4
    我用了一个javascript
    <script language="javascript">
    var temparray=new Array();
    function mycheckbox(myobject)
    { var myobject;  
      var mystate=false;
      if (myobject.checked)
        { aa=aa+myobject.name;
          bb="adfadfadf";
    //     alert(aa);
    // temparray[temparray.length]=this.name
     for(i=0;i<=temparray.length;i++)
       { if (temparray[i]==myobject.name)
        {
            mystate=true;
            break; 
        }     
        }
       if (mystate==false)
       { temparray[temparray.length]=myobject.name;}alert("length="+temparray.length+"value= "+temparray);
       // aa[aa.length+1]=myobject.name;
      //  alert(myobject.name+"="+myobject.value);
        }
     // else
     //  { for(i=0;i<a.length;i++)
     //     { if (aa[i]==myobject.name)
     //       {aa[i]="";}
     //     }
     //  }
      else
      {  for(i=0;i<=temparray.length;i++)
            { if (temparray[i]==myobject.name)
             { temparray[i]=temparray[i+1]
              }
             }
           
         alert("length="+temparray.length+"value="+temparray);
        }
     return aa;
    }
    </script>
    function mycheckbox(myobject)
    { var myobject;  
      var mystate=false;
      if (myobject.checked)
        { aa=aa+myobject.name;
          bb="adfadfadf";
    //     alert(aa);
    // temparray[temparray.length]=this.name
     for(i=0;i<=temparray.length;i++)
       { if (temparray[i]==myobject.name)
        {
            mystate=true;
            break; 
        }     
        }
       if (mystate==false)
       { temparray[temparray.length]=myobject.name;}alert("length="+temparray.length+"value= "+temparray);
       // aa[aa.length+1]=myobject.name;
      //  alert(myobject.name+"="+myobject.value);
        }
     // else
     //  { for(i=0;i<a.length;i++)
     //     { if (aa[i]==myobject.name)
     //       {aa[i]="";}
     //     }
     //  }
      else
      {  for(i=0;i<=temparray.length;i++)
            { if (temparray[i]==myobject.name)
             { temparray[i]=temparray[i+1]
              }
             }
           
         alert("length="+temparray.length+"value="+temparray);
        }
     return aa;
    }
    </script>function mycheckbox(myobject)
    { var myobject;  
      var mystate=false;
      if (myobject.checked)
        { aa=aa+myobject.name;
          bb="adfadfadf";
    //     alert(aa);
    // temparray[temparray.length]=this.name
     for(i=0;i<=temparray.length;i++)
       { if (temparray[i]==myobject.name)
        {
            mystate=true;
            break; 
        }     
        }
       if (mystate==false)
       { temparray[temparray.length]=myobject.name;}alert("length="+temparray.length+"value= "+temparray);
       // aa[aa.length+1]=myobject.name;
      //  alert(myobject.name+"="+myobject.value);
        }
     // else
     //  { for(i=0;i<a.length;i++)
     //     { if (aa[i]==myobject.name)
     //       {aa[i]="";}
     //     }
     //  }
      else
      {  for(i=0;i<=temparray.length;i++)
            { if (temparray[i]==myobject.name)
             { temparray[i]=temparray[i+1]
              }
             }
           
         alert("length="+temparray.length+"value="+temparray);
        }
     return aa;
    }
    </script>
    <input type=checkbox name=checkbox1 onclick="return mycheckbox(this);">
    <input type=checkbox name=checkbox2 onclick="return mycheckbox(this);">
    <input type=checkbox name=checkbox3 onclick="return mycheckbox(this);">
    <input type=checkbox name=checkbox4 onclick="return mycheckbox(this);">
    ............ 请帮忙看一下,谢谢!!!
      

  7.   

    怎麽這麼多的mycheckbox函數呀?搞不懂!
    我覺得你那樣做真的沒什麼意義。
    我還是建議你這樣:
    <input type=checkbox name=checkbox[] value='010'>
    <input type=checkbox name=checkbox[] value='020'>
    <input type=checkbox name=checkbox[] value='030'>
    <input type=checkbox name=checkbox[] value='040'>
    如果都選擇,提交到php程序以後將得到$checkbox數組
    $checkbox=array(0=>010,1=>020,2=>030,3=>040)
    這樣做多麽的簡單明了,而且方便很多
    如果是asp,將控件都命名為checkbox,不要[],提交後得到字符串:
    010,020,030,040
      

  8.   

    这些checkbox其实是举例,他真正是从数据库提出来的,即数据库中有多少条记录就有多少个checkbox。我现在能够判断了checkbox的值,但是在进行提交的时候找不到对象:当在php中打印javascript数组的时候说没有定义,然而我已经在程序开始就定义了temparray.见下面!!!!!
    请问怎样才能将temparray中的值加入到数据库中去!
    <html>
    <head>
    <title>Untitled Document</title>
    <meta http-equiv="Content-Type" content="text/html; charset=gb2312">
    <style type="text/css">
    <!--
    td {  font-size: 9pt}
    body{font-size:9pt}
    -->
    </style>
    <script language="javascript">
    var aa=""
    var bb="";
    var temparray=new Array();
    function checknull()
    {if (document.myform.username.value=="")
        {alert ("用户名不能为空");
    document.myform.username.focus;
        return false;}
     if (document.myform.mypas1.value=="")
    {alert ("用户密码不能为空");
         document.myform.mypas1.focus;
         return false;}
     if(document.myform.mypas2.value=="")
    {alert("请确认用户密码");
         document.myform.mypas2.focus;
     return false;
     }
     if (myform.mypas1.value!=myform.mypas2.value)
    {alert("两次密码不一致");
         document.myform.mypas1.value=="";
     document.myform.mypas2.value=="";
     document.myform.mypas1.focus;
     return false;
    } alert(myform.hid.value);
     return true;
    }
    function mycheckbox(myobject)
    { var myobject;  
      var temp=new Array();
      var mystate=false;
      if (myobject.checked)
        { aa=aa+myobject.name;
          bb="adfadfadf";
    //     alert(aa);
    // temparray[temparray.length]=this.name
     for(i=0;i<=temparray.length;i++)
       { if (temparray[i]==myobject.name)
        {
            mystate=true;
            break; 
        }     
        }
       if (mystate==false)
       { temparray[temparray.length]=myobject.name;}alert("length="+temparray.length+"value= "+temparray);
       // aa[aa.length+1]=myobject.name;
      //  alert(myobject.name+"="+myobject.value);
        }
     // else
     //  { for(i=0;i<a.length;i++)
     //     { if (aa[i]==myobject.name)
     //       {aa[i]="";}
     //     }
     //  }
      else
      {  for(i=0;i<=temparray.length;i++)
            { 
             if (temparray[i]!=myobject.name)
              temp[i]=temparray[i];
            
           //if (temparray[i]==myobject.name)
               //{   temparray[i-1]=temparray[i]
              // }
             }
     for(i=0;i<temparray.length;i++)
          {temparray[i]=null;}
     for(i=0;i<=temp.length;i++)
           { temparray[i]=temp[i];}
           
         alert("length="+temparray.length+"value="+temparray);
     <?echo temparray;?>
        }
     return aa;
    }
    </script></head>
    <body bgcolor="#FFFFFF">
    <?$host="localhost";
     $user="sale";
     $pass="htsale";
     $database="net_sale";
     mysql_connect("$host","$user","$pass");
     mysql_select_db("$database");
     
     if ($username&&$mypas1&&$mypas2)
     {  
     $sqls="select * from admin";
         $result=mysql_query($sqls);  
     $state=true;
        while($temp=mysql_fetch_array($result))
        { if ($temp["username"]==$username)
         {  echo "该用户名已经存在";
    $state=false;
        break;
     }
    }
    if ($state==true)
     { $mysqls="select count(*) as areacount from area";
           $bbb=mysql_query($mysqls);
       $mybb=mysql_fetch_array($bbb);
    //   echo $mybb["areacount"];
           $ccc=mysql_query("select * from area order by id");
       while($myresult=mysql_fetch_array($ccc))
     { $id=$myresult["id"];
      ?>
       <script language="javascript">
                
    问题在这里:   说没有定义!!!    alert(temparray);
     </script>
     <?}
      $sqls="insert into admin(username,psd,marea)values('$username','$mypas1','$marea')";
     // $aaa=mysql_query($sqls);
     }

     }
     ?>
    <form name="myform" action="/htsale/admin/addnewuser.php" method="post" onsubmit="return checknull();">
    <table width="35%" border="0" cellspacing="1.5" cellpadding="1" bordercolor="#FF0066" height="117" bgcolor="#333333">
      <tr> 
        <td width="37%" bgcolor="#aaaadd"><font color="#FFFFFF"><b>用户名</b></font></td>
        <td width="63%" bgcolor="#aaaadd"> 
          <input type=text name="username">
        </td>
      </tr>
      <tr> 
        <td width="37%" bgcolor="#aaaadd"><font color="#FFFFFF"><b>密码</b></font></td>
        <td width="63%" bgcolor="#aaaadd"> 
          <input type=password name=mypas1>
        </td>
      </tr>
      <tr> 
        <td width="37%" bgcolor="#aaaadd"><b><font color="#FFFFFF">确认密码</font></b></td>
        <td width="63%" bgcolor="#9999CC"> 
          <input type="password" name="mypas2">
      <input type="hidden" name="hid" value="fdfdfd">
        </td>
      </tr>
      
    <tr>
    <?
     $sqls="select * from area order by id";
     $result=mysql_query($sqls);
     echo "请选择管理的范围";
     echo "<table><tr>";
     $i=0;
     while($temp=mysql_fetch_array($result)) {   $i=$i+1;
         $myid=$temp["id"];
     $addressname=$temp["addressname"];
    ?>
     
    <td><?echo $addressname;?></td>
    <td><input type=checkbox value=100 name=<?echo $myid?> onclick="return mycheckbox(this);">
    <input type="hidden" name="hid" value="101010"> </td>
    <?
         if($i==4)
     {$i=0;
      echo "</tr><tr>";}
     }
     echo "</table>"?>
     </tr>
          <tr> 
          <td width="37%" height="39" bgcolor="#aaaadd"><input type="hidden" name="hid" value="101010"></td>
          <td width="63%" height="39" bgcolor="#9999CC"> 
          <input type=submit name="mysubmit" value="提交">
          <input type=reset name=myreset value="重填">
          </td>
          </tr>
    </table>
    </form>
    </body>
    </html>
      

  9.   

    那樣當然不行了,temparray又不是form控件,只是javascript的一個變量而已
    這種變量是不會傳到php的。
      

  10.   

    你可以將這一行:
    <td><input type=checkbox value=100 name=<?echo "checkbox".$myid?> onclick="return mycheckbox(this.name);">
    改為:
    <td><input type=checkbox value=<?=$temp[addressnum]?> name=addressarray[]>
    提交以後就會得到數組$addressarray
      

  11.   

    控件名稱後面加上[],提交以後,php都會把他當作數組,這是php所獨有的