Jump to content
Larry Ullman's Book Forums

khassan

Members
  • Posts

    3
  • Joined

  • Last visited

Everything posted by khassan

  1. I was able to solve this! I went through my code again and I had the include function commented out on one of my files >.< Sorry, guys. Thank you.
  2. Greetings! I am having this issue (screenshot attached). I am able to add quotes to the database and see them in the database when logging in to phpMyAdmin, but for some reason I am getting this error on the View Quotes page: All Quotes Could not retrieve the data because: Unknown column 'id' in 'field list'. The query being run was: SELECT id, quote, source, favorite FROM quotes ORDER BY date_entered DESC Is there a reason for this? This is the code that I am using for the View All Quotes page: <?php // Script 13.8 - view_quotes.php /* This script lists every quote. */ // Include the header: define('TITLE', 'View All Quotes'); include('includes/header.php'); print '<h2>All Quotes</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('includes/footer.php'); exit(); } // Need the database connection: include('includes/mysqli_connect.php'); // Define the query: $query = 'SELECT id, quote, source, favorite FROM quotes ORDER BY date_entered DESC'; // Run the query: if ($result = mysqli_query($dbc, $query)) { // Retireve the returned records: while ($row == mysqli_fetch_array($result)) { // Print the record: print "<div><blockquote>{$row['quote']}</blockquote>- {$row['source']}\n"; // Is this a favorite? if ($row['favorite'] == 1) { print ' <strong>Favorite!</strong>'; } // Add administrative links: print "<p><b>Quote Admin:</b> <a href=\"edit_quote.php?id={$row['id']}\">Edit</a> <-> <a href=\"delete_quote.php?id={$row['id']}\">Delete</a></p></div>\n"; } // End of while loop. } else { // Query didn't run. print '<p class="error">Could not retrieve the data because:<br>' . mysqli_error($dbc) . '.</p><p>The query being run was: ' . $query . '</p>'; } // End of query IF. mysqli_close($dbc); // Close the connection. include('includes/footer.php'); // Include the footer. ?> I also attached a screenshot of my file directory, and of the added quotes on phpmyadmin site, not sure if that helps. As far as the folder being named "includes" instead of "templates," that was the Professor's call. She wanted us to name that folder that way. Any clarification will be greatly appreciated!
  3. Not sure why I keep getting this error? Could someone please help me. This is the code I used for add_quote.php: <?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('includes/header.php'); 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('includes/footer.php'); 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/mysqli_connect.php'); // Prepare the values for storing: $quote = mysqli_real_escape_string($dbc, trim(strip_tags($_POST['quote']))); $source = mysqli_real_escape_string($dbc, trim(strip_tags($_POST['source']))); // Create the "favorite" value: if (isset($_POST['favorite'])) { $favorite = 1; } else { $favorite = 0; } $query = "INSERT INTO quotes (quote, source, favorite) VALUES ('$quote', '$source', $favorite)"; mysqli_query($dbc, $query); if (mysqli_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>' . mysqli_error($dbc) . '.</p><p>The query being run was: ' . $query . '</p>'; } // Close the connection: mysqli_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"></textarea></label></p> <p><label>Source <input type="text" name="source"></label></p> <p><label>Is this a favorite? <input type="checkbox" name="favorite" value="yes"></label></p> <p><input type="submit" name="submit" value="Add This Quote!"></p> </form> <?php include('includes/footer.php'); ?> And then the one for functions.php: <?php // Script 13.2 - functions.php /* This page defines custom functions. */ // This function checks if the user is an administrator. // This function takes two optional values. // This function returns a Boolean value. function is_administrator($name = 'Samuel', $value = 'Clemens') { // Check for the cookie and check its value: if (isset($_COOKIE[$name]) && ($_COOKIE[$name] == $value)) { return true; } else { return false; } } // End of is_administrator() function. Could someone please also explain the fact that we had to use Samuel for the $name and Clemens for the $value? I am so confused... I'd really appreciate any clarification! =]
×
×
  • Create New...