Всем добрый день. сделал страничку с записью чекбоксов в БД. создал и заполнил таблицы: PHP: CREATE TABLE `tutorial_users` ( `id` INT( 10 ) NOT NULL AUTO_INCREMENT , `username` VARCHAR( 50 ) NOT NULL , `admin` TINYINT( 1 ) NOT NULL DEFAULT '0', PRIMARY KEY ( `id` ) ) ENGINE = MYISAM PHP: INSERT INTO `tutorial_users` ( `id` , `username` , `admin` ) VALUES ( NULL , 'Stewie', '0' ), ( NULL , 'Peter', '0' ), ( NULL , 'Brian', '0' ), ( NULL , 'Meg', '0' ), ( NULL , 'Lois', '0' ), ( NULL , 'Chris', '0' ), ( NULL , 'Greased Up Deaf Guy', '0' ), ( NULL , 'Quagmire', '0' ); сама форма: PHP: <?php include("connect.php"); $updated = FALSE; if(count($_POST) > 0){ $admin = $_POST['admin']; array_map('intval',$admin); $admin = implode(',',$admin); mysql_query("UPDATE tutorial_users SET admin=0") or trigger_error(mysql_error(),E_USER_ERROR); mysql_query("UPDATE tutorial_users SET admin=1 WHERE id IN ($admin)") or trigger_error(mysql_error(),E_USER_ERROR); $updated=TRUE; } ?> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> <title>phpfreaks checkbox tutorial</title> </head> <body> <form action="<?php echo $_SERVER['PHP_SELF'];?>" method="post"> <?php if($updated===TRUE){ echo '<div>Privileges Updated!</div>'; } ?> <table> <tr> <th>Username</th> <th>Admin Privileges</th> </tr> <?php $sql = "SELECT id,username,admin FROM tutorial_users ORDER by id ASC"; $result = mysql_query($sql) or trigger_error(mysql_error(),E_USER_ERROR); while(list($id,$username,$admin)=mysql_fetch_row($ result)){ $checked = ($admin==1) ? 'checked="checked"' : ''; echo '<tr><td>'.$username.'</td><td><input type="checkbox" name="admin[]" value="'.$id.'" '.$checked.'/></td></tr>'."\n"; } ?> <tr><td colspan="2"><input type="submit" name="submit" value="Update Privileges" /></td></tr> </table> </form> </body> </html> файл connect.php: PHP: <?php $dblocation = "localhost"; $dbname = "user_base"; $dbuser = "user"; $dbpasswd = "password"; $dbcnx = mysql_connect($dblocation, $dbuser, $dbpasswd); if (!$dbcnx) { echo "<p>К сожалению, не доступен сервер mySQL</p>"; exit(); } if (!mysql_select_db($dbname,$dbcnx) ) { echo "<p>К сожалению, не доступна база данных</p>"; exit(); } $ver = mysql_query("SELECT VERSION()"); if(!$ver) { echo "<p>Ошибка в запросе</p>"; exit(); } echo mysql_result($ver, 0); ?> при нажатии на чекбокс - справа от него появится поле ввода имени, куда прежде чем сохранить нужно его ввести, имя запишется в базу данных и значение выбранного чекбока как это реализовать в данном коде?
ну (как я бы сделал ) делаю поле ввода имени скрытым, а для появления поля ввода имени нужен яваскрипт типа PHP: onclick="#("элемент ввода имени").show();" на другой (чек) PHP: onclick="#("элемент ввода имени").hide();" в зависимости от того какое значение чекбокса придет в твой пхп, выбираешь записывать имя или нет. ну и соответствующие поля в базе данных добавь. (описал на русском языке)