Как получить значение флажка checkbox в php? [закрытый]
вот код:
<?php // operator Page
include ("classes/dbhelper.php");
include ("conf/conf.php");
$conf = new Dbconf();
$dbURL = $conf->get_databaseURL();
$dbUName = $conf->get_databaseUName();
$dbPword = $conf->get_databasePWord();
$dbName = $conf->get_databaseName();
$nameOfDbWithCustomers = $conf->get_tableName('customer');
if(isset($_REQUEST[session_name()]))
{
session_start();
}
else
{
header("Location: authorize.php");
}
if($_SESSION['usr_id'] == md5(crypt($_SESSION['login'],$_SESSION['pass'])))
{
echo "<script type='text/javascript' src='/jquery-1.6.js'></script>
<form method='post'>
Name: <input type='text' name='Name' size='10' value=''>
Post: <input type='text' name='Post' size='10' value=''>
Section: <input type='text' name='Section' size='10' value=''>
Company: <input type='text' name='Company' size='10' value=''>
Phone Number: <input type='text' name='Phone_Number' size='10 value=''>
e-mail: <input type='text' name='e-mail' size='10' value=''>
Active: <input type='checkbox' name='Active' value=''>
<input type='submit' name='Search' size='10' value='Search'> <br>
<input type='reset' name='Reset' value='Reset'>
</form>
<form method ='post'>
SMS: <input type='checkbox' name = 'sms'>
E-mail: <input type='checkbox' name = 'email' id='mailcheck'><br>
<TEXTAREA NAME='message' WRAP='virtual' COLS='40' ROWS='3'>
</TEXTAREA><br>
<input type ='submit' name ='Send' size = '10' value = 'Send'>
</form>
<form action='upload.php'' method='post' enctype='multipart/form-data'>
<input type='file' name='filename'><br>
<input type='submit value='Загрузить'><br>
</form>";
if (isset($POST['Send'])){
}
if (isset($_POST['Search'])){
//*********************query*************************
$name = isset($_POST['Name']) ? $_POST['Name'] : 0;
$post = isset($_POST['Post']) ? $_POST['Post'] : 0;
$section = isset($_POST['Section']) ? $_POST['Section'] : 0;
$company = isset($_POST['Company']) ? $_POST['Company'] : 0;
$phoneNumber = isset($_POST['Phone_Number']) ? $_POST['Phone_Number'] : 0;
$eMail = isset($_POST['e-mail']) ? $_POST['e-mail'] : 0;
$active = isset($_POST['Active']) ? "1" : "0";
$array = array(
"name" => $name,
"post" => $post,
"section" => $section,
"company" => $company,
"phone_number" => $phoneNumber,
"email" => $eMail,
"status" => $active
);
$sql = "SELECT * FROM $nameOfDbWithCustomers";
$sql_where = array();
foreach($array as $key => $value)
{
if(!empty($value))
$sql_where[] = $key." = "."'$value'";
}
if(count($sql_where) > 0)
{
$sql .=" WHERE ";
}
$sql.=" ".implode(" AND ", $sql_where);
//*********************END query*************************
$dbHelp = new DbHelper($dbURL, $dbUName, $dbPword, $dbName, '');
$queryResult = $dbHelp->getDataFromDbByQuery($sql);
$table = "<table border=1 width=100% align=center>n";
$table .= "<tr>n";
$i = 1;
while ($i < mysql_num_fields($queryResult)) {
$meta = mysql_fetch_field($queryResult, $i);
$i++;
$table .= "<td>".$meta->name."</td>n";
}
$table .= "<td> Выбрать все: <input type='checkbox' name='cbname3[]' value='main' id='chkSelectAll'</td>n";
$table .= "</tr>n";
$i = 1;
while ($row = mysql_fetch_assoc($queryResult)){
$table .= "<tr>n";
$table .= "<td>".$row['name']."</td>n";
$table .= "<td>".$row['post']."</td>n";
$table .= "<td>".$row['section']."</td>n";
$table .= "<td>".$row['company']."</td>n";
$table .= "<td>".$row['phone_number']."</td>n";
$table .= "<td>".$row['email']."</td>n";
$table .= "<td>".$row['status']."</td>n";
$table .= "<td>".$row['lock_time']."</td>n";
$table .= "<td>".$row['reason_for_blocking']."</td>n";
$table .= "<td><input type='checkbox' class=".check." name='cbname3[]' id='chkItems' value=".$row['id']." /></td>";
$table .= "</tr>n";
$i++;
}
$table .= "</table>n";
echo $table;
}
}
?>
<script type="text/javascript">
$(document).ready(function() {
$("#<%=chkSelectAll.ClientID %>").click(function() {
$("#<%= chkItems.ClientID %> input:checkbox").attr('checked',this.checked);
});
$("#<%=chkItems.ClientID %> input:checkbox").click(function(){
if($("#<%= chkSelectAll.ClientID %>").attr('checked') == true && this.checked == false)
$("#<%= chkSelectAll.ClientID %>").attr('checked',false);
if(this.checked == true)
CheckSelectAll();
});
function checkSelectAll()
{
var flag = true;
$("#<%=chkItems.ClientID %> input:checkbox").each(function() {
if(this.checked == false)
flag = false;
});
$("#<%= chkSelectAll.ClientID %>").attr('checked',flag);
}
});
Я хочу получить значение флажка checkbox из таблицы, когда пользователь нажимает кнопку "Отправить". Как я могу это сделать?
3 ответов
вы должны назначить значение для флажка в HTML-коде
Active: <input type='checkbox' name='Active' value='1'>
и затем, если флажок установлен, он содержит назначенное значение в POST, иначе вы должны установить, когда флажок снят
$active = isset($_POST['Active']) && $_POST['Active'] ? "1" : "0";