Search the Community
Showing results for tags 'sticky'.
-
Ok, so posted on Ch. 13 Pursue earlier about making the login form sticky which I had great help getting resolved. Then when I get down the part where I need to make add_quote.php sticky, I have made the text area and source sticky but am having a really hard time trying to figure out how to get the checkbox to be sticky as well. I'm not even 100% sure if that's something that I'm even supposed to try to do for that part but it's an intriguing problem that I've run into and I can definitely see where knowing how to make a checkbox be sticky can be helpful in the future. I've searched all over the place for the past few days and tried countless times to get it to work. Most of the threads I've come across never give a straight answer on how to do this or it's like the original question never gets answered and the thread just kind of dies. Anyone out there know of a way to do this? Here is the code that I have and most of the variations I've tried always posts the favorite, but it just won't remain sticky. The red section and value for the checkbox at the bottom is the latest that I've come across that still doesn't seem to work. <?php // Script 13.7 - add_quote.php /* This script adds a quote. */ // Define a page title and include the header: define('TITLE', 'Add a Quote'); include('templates/header.html'); print '<h2>Add a Quotation</h2>'; // Restrict Access to administrators only: if (!is_administrator()) { print '<h2>Access Denied!</h2><p class="error">You do not have permission to access this page.</p>'; include('templates/footer.html'); exit(); } // Check for a form submission: if($_SERVER['REQUEST_METHOD'] =='POST') { // Handle the form. if (!empty($_POST['quote']) && !empty($_POST['source'])) { // Need the database connection: include('includes/mysql_connect.php'); // Prepare the values for storing: $quote = mysql_real_escape_string(trim(strip_tags($_POST['quote'])), $dbc); $source = mysql_real_escape_string(trim(strip_tags($_POST['source'])), $dbc); // Create the "favorite" value: if (isset($_POST['favorite'])) { $favorite = 1; } else { $favorite = 0; } $query = "INSERT INTO quotes (quote, source, favorite) VALUES ('$quote', '$source', '$favorite')"; $r = mysql_query($query, $dbc); if (mysql_affected_rows($dbc) == 1) { // Print a message: print '<p>Your quotation has been stored.</p>'; } else { print '<p class = "error">Could not store the quote because: <br />' . mysql_error($dbc) . '.</p><p>The query being run was: ' .$query . '</p>'; } // Close the connection: mysql_close($dbc); } else { // Failed to enter a quotation. print '<p class = "error">Please enter a quotation and a source!</p>'; } } // End of submitted IF. // Leave PHP and display the form: ?> <form action="add_quote.php" method="post"> <p><label>Quote <textarea name="quote" rows="5" cols="30" ><?php if(isset($_POST['quote'])) {print htmlspecialchars($_POST['quote']); } ?></textarea></label></p> <p><label>Source <input type="text" name="source" value="<?php if(isset($_POST['source'])) {print htmlspecialchars($_POST['source']); } ?>"/></label></p> <p><label>Is this a favorite? <input type="checkbox" name="favorite" value="<?php if(isset($_POST['favorite']) && ($_POST['favorite'] == 1)) print 'checked = "checked"'; ?>" /></label></p> <p><input type="submit" name="submit" value="Add This Quote!" /></p> </form> <?php include('templates/footer.html'); ?> At this point, I wouldn't be surprised if what I have is way off but I'm still trying and have hit a wall for sure. Thanks in advance for any help or suggestions. Scatz
- 3 replies
-
- sticky checkbox
- checkbox
-
(and 2 more)
Tagged with:
-
Hello All, Well I'm wrapping up the last part of this book and seem to have hit a roadblock. On the first Ch. 13 Pursue assignment that tells you to make the login form sticky, I can't seem to get it to work and I've been able to get all of the previous ones pretty quickly. I know it'll probably be something that makes me feel silly after I figure it out, but after 2 hours of mixing and rearranging code, I keep coming back to the same thing and get somewhat similar results each time. Aside from it not working properly, when I put my code in the value attribute, it shows up as code in the actual form the first and every time after you reload the page. Here is my code and any help is appreciated: <?php // Script 13.5 - login.php /* This page lets people log into the site. */ // Set two variables with default values: $loggedin = false; $error = false; // Check if the form has been submitted: if($_SERVER['REQUEST_METHOD'] == 'POST') { // Handle the form: if(!empty($_POST['email']) && !empty($_POST['password'])) { if ( (strtolower($_POST['email']) == 'me@example.com') && ($_POST['password'] == 'testpass') ) { // Correct! // Create the Cookie setcookie('Samuel', 'Clemens', time()+3600); // Indicate they are logged in: $loggedin = true; } else { // Incorrect! $error = 'The submitted email address and password do not match those on file!'; } } else { // Forgot a field. $error = 'Please make sure you enter both an email address and a password!'; } } // Set the page title and include the header file: define('TITLE', 'Login'); include('templates/header.html'); // Print an error if one exists: if ($error) { print '<p class="error">' . $error . '</p>'; } // Indicate the user is logged in, or show the form: if($loggedin) { print '<p>You are now logged in!</p>'; } else { print '<h2>Login Form</h2> <form action="login.php" method="post"> <p><label>Email Address <input type="text" name="email" value="<?php if(isset($_POST[\'email\'])){ print htmlspecialchars($_POST[\'email\']); } ?>"/></label></p> <p><label>Password <input type="password" name="password" /></label></p> <p><input type="submit" name="submit" value="Log In!" /></p> </form>'; } include('templates/footer.html'); // Need the footer. ?> I've tried messing around with the red code all sorts of ways and get different results each time. If I don't escape the post values for email then I get a unexpected 'email'(T_STRING) error. I have a feeling it has something to do with the quotes and for the fact that the form is still within php already but can't quite grasp it yet. Please help! Scatz