jacklindsay1990 Posted January 17, 2009 Share Posted January 17, 2009 Hello people ok...im not sure if what im asking is actually possible but i'll ask anyway. i have a form which adds records to a table below the form i have some script which shows all the information that is in the table <table width="806" border="1" cellspacing="0" cellpadding="0"> <tr> <!-- <td width="30">id#</td>--> <td width="150">Rep Name</td> <td width="45">Rep #</td> <td width="54" align="center">Model </td> <td width="48">Serial</td> <td width="30">Tag</td> <td width="89">Issue Date</td> <td width="52">Issuer</td> <td width="65">Division</td> <td width="89">Comments</td> <td width="53"> </td> <td width="75"> </td> </tr> <? while ( $myrowRes = mysql_fetch_array($resultName) ) { ?> <tr> <td><? echo $myrowRes['repName'];?></td> <td><? echo $myrowRes['repNumber'];?></td> <td align="center"><? echo $myrowRes['laptopModel'];?></td> <td><? echo $myrowRes['serial'];?></td> <td><? echo $myrowRes['tag'];?></td> <td><? echo $myrowRes['issueDate'];?></td> <td><? echo $myrowRes['issuer'];?></td> <td><? echo $myrowRes['division'];?></td> <td><? echo $myrowRes['comments'];?></td> <td align="center"><input name="edit1" type="button" value="Edit" onclick="javascript(go2Page(<? echo $myrowRes['statVal_id']; ?>));"/></td> <td align="center"><input name="delete" type="button" value="Delete" onclick="javascript(deleteItem(<? echo $myrowRes['statVal_id']; ?>));"/></td> </tr> <? } what i would like to add is in the form, 4 or 5 check boxes which, if selected, in the dispay of the mysql table has a lilttle tick image. any ideas if this is possible?? Quote Link to comment Share on other sites More sharing options...
jacklindsay1990 Posted January 20, 2009 Author Share Posted January 20, 2009 guessing this will be a no then Quote Link to comment Share on other sites More sharing options...
landavia Posted January 20, 2009 Share Posted January 20, 2009 guessing this will be a no then imho u must using java script Quote Link to comment Share on other sites More sharing options...
jacklindsay1990 Posted January 27, 2009 Author Share Posted January 27, 2009 ok, so any recommendations on where i can find more on this or anything? Quote Link to comment Share on other sites More sharing options...
phpmania1 Posted January 27, 2009 Share Posted January 27, 2009 SQL> CREATE TABLE your_field ( id int not null primary key, value varchar(20) ); SQL> INSERT INTO const_skills(id, value) VALUES (1, "PHP"); SQL> INSERT INTO your_field(id, value) VALUES (2, "MySQL"); SQL> INSERT INTO your_field(id, value) VALUES (3, "Zope"); SQL> INSERT INTO your_field(id, value) VALUES (4, "Perl"); SQL> INSERT INTO your_field(id, value) VALUES (5, "Javascript"); SQL> INSERT INTO your_field(id, value) VALUES (6, "JSP"); SQL> CREATE TABLE lookup_field ( id int not null auto_increment primary key, uid int, skill_id int ); <?php /* insert code to connect to your database here */ /* get the checkbox labels */ $skills = get_checkbox_labels("const_skills"); /* create the html code for a formatted set of checkboxes */ $html_skills = make_checkbox_html($skills, 3, 400, "skills[]"); ?> <html> <body> <br> <form name="skills" method="POST" action="insertskills.php"> Check off your web development skills: <? echo "$html_skills"; ?> <br> <input type="submit" value="Submit"> </form> </body> </html> <?php function get_checkbox_labels($table_name) { /* make an array */ $arr = array(); /* construct the query */ $query = "SELECT * FROM $table_name"; /* execute the query */ $qid = mysql_query($query); /* each row in the result set will be packaged as an object and put in an array */ while($row= mysql_fetch_object($qid)) { array_push($arr, $row); } return $arr; } /* Prints a nicely formatted table of checkbox choices. $arr is an array of objects that contain the choices $num is the number of elements wide we display in the table $width is the value of the width parameter to the table tag $name is the name of the checkbox array $checked is an array of element names that should be checked */ function make_checkbox_html($arr, $num, $width, $name, $checked) { /* create string to hold out html */ $str = ""; /* make it */ $str .= "<table width=\"$width\" border=\"0\">\n"; $str .= "<tr>\n"; /* determine if we will have to close add a closing tr tag at the end of our table */ if (count($arr) % $num != 0) { $closingTR = true; } $i = 1; if (isset($checked)) { /* if we passed in an array of the checkboxes we want to be displayed as checked */ foreach ($arr as $ele) { $str .= "<td><input type=\"checkbox\" name=\"$name\" value=\"$ele->id\""; foreach ($checked as $entry) { if ($entry == $ele->value) { $str .= "checked"; continue; } } $str .= ">"; $str .= "$ele->value"; if ($i % $num == 0) { $str .= "</tr>\n<tr>"; } else { $str .= "</td>\n"; } $i++; } } else { /* we just want to print the checkboxes. none will have checks */ foreach ($arr as $ele) { $str .= "<td><input type=\"checkbox\" name=\"$name\" value=\"$ele->id\">"; $str .= "$ele->value"; if ($i % $num == 0) { $str .= "</tr>\n<tr>"; } else { $str .= "</td>\n"; } $i++; } } /* tack on a closing tr tag if necessary */ if ($closingTR == true) { $str .= "</tr></table>\n"; } else { $str .= "</table>\n"; } return $str; } ?> <?php /* the function we call to insert. the $skills argument is the skills array that is sent to the script when the user hits the submit button */ function insert_field($uid, $skills) { /* first, we'll delete any entries this user already has in the table */ purge_lookup("lookup_field", $uid); /* now create the sql insert query */ $query = create_checkbox_query($skills, "lookup_field", $uid); /* execute the query */ mysql_query($query); } /* helper function for insert_field(). removes all rows in $table with $uid */ function purge_lookup($table, $uid) { $q = "DELETE FROM $table, WHERE uid = '$uid'"; mysql_query($q); } /* helper function for insert_field(). generates the sctual SQL query */ function create_checkbox_query($arr, $table, $uid) { $q = "INSERT INTO $table (uid, field_id) VALUES"; foreach ($arr as $check) { $q .= " ( $uid , $check )" . ","; } /* remove the last comma and return */ return substr($q, 0, -1); } ?> <?php /* builds a query to search for the field checked off in the $skills array */ function field_search($skills) { if (!empty($skills)) { $query = "SELECT DISTINCT user.username FROM user, const_field, lookup_field WHERE lookup_field.uid = user.id AND lookup_field.field_id = const_field.id "; $query .= " AND ("; foreach ($skills as $check) { $query .= " const_field.id = $check OR"; } /* remove the final OR */ $query = substr($query, 0, -2); $query .= ")"; $count = count($skills); $query .= " GROUP BY user.username HAVING count(user.username) >= $count"; $query .= ";"; return $query; } } ?> Theres a base. Change "field" and tweak it as needed. Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.