怎麼在別的php抓checkbox

while(list($cfsn,$cat_sn,$uid,$cf_name,$cf_desc,$cf_type,$cf_size,$cf_count,$up_date)=$xoopsDB->fetchRow($result)){

$pic=$file_adm->file_pic($cf_name);

if($cf_size>1048576){

$size=round(($cf_size/1048576),1)."M";

}elseif($cf_size>1024){

$size=round(($cf_size/1024),1)."K";

}else{

$size=$cf_size."bytes";

}

$cf_desc=nl2br($cf_desc);

$cf_desc=(empty($cf_desc))?$cf_name:$cf_desc;

$chkbox=($check_up_power)?"<input type='checkbox' name='select_files[{$cfsn}]' value='{$cf_name}' style='vertical-align:middle'>":"";

//checkbox

}

這是別人寫的程式,我想要在checkbox後加一個button連到另一個PHP頁面(寫好了)

在那個PHP我想知道使用者點哪個checkbox並抓到name&value的值

該怎麼下手?

2 Answers

Rating
  • CY
    Lv 5
    1 decade ago
    Favorite Answer

    我會使用 javascript

    php 部分取得 checkbox 的 name

    javascript 部分

    (1) button 被點選時 啟動一 function

    (2) function:

    根據 checkbox 的 name 取得 被點選的 checkbox 的 value 並將之組成一 query string

    將browser 指向新頁面 url + query string

    如果每一個 checkbox 的 name 都一樣

    php 部分

    在 $chkbox=($check_up_power)?" ... 列後 加入

    $checkbox_name = ($chkbox=="")?selectfiles[{$cfsn}]:"";

    在 while loop 之後

    if ($checkbox_name != "") { // assume that if there is no checkbox then no button will be printed

    echo "<input type='button' name='btn' value='Go to New Page' onclick='newPage(\"$checkbox_name\")'>";

    }

    Javacript 部分

    function newPage(checkbox_name){

    var chkboxObj = document.getElementByName(checkbox_name);

    var selected = "";

    for (i=0; i<chkboxObj.length;i++){

    if (chkboxObj[i].checked){

    selected += ","+chkboxObj[i].value;

    }

    }

    var queryStr = "?userChoices="+selected;

    var url = "_destination URL here_";

    window.location = url+queryStr;

    }

    如果每一個 checkbox 的 name 都不同

    做法也一樣

    只是要 collect all checkboxes' names in PHP and parse them in Javascript.

    希望幫上忙

  • 1 decade ago

    你好像只能用javascript或ajax來處理,因為checkbox的name&value是屬於javascript的管區,

    http://andy.diimii.com/2009/05/%E7%94%A8javascript...

    看看這個教學

    說不定能有幫助喔

    PS:用AJAX的話就可以不用換頁,立即處理,但若你對avascript沒有非常熟練,那先別搞AJAX,先單純一點~~

Still have questions? Get your answers by asking now.