Alex1 Posted May 13, 2020 Share Posted May 13, 2020 I have been getting some errors in my chapter 13 site and I am not sure how I can fix them. I am able to login with the login.php page. When I do I get this error. ?php // Script 13.4 - footer.html // Display general admin links... // - if the user is an administrator and it's not the logout.php page // - or if the $loggedin variable is true (i.e., the user just logged in) if ( (is_administrator() && (basename($_SERVER['PHP_SELF']) != 'logout.php')) OR (isset($loggedin) && $loggedin) ) { // Create the links: print ' When I go to the add_quotes.php page I get this error. Quote Warning: include(../mysqli_connect.php): failed to open stream: No such file or directory in C:\xampp\htdocs\PHP\Chapter 13\view_quotes.php on line 18Warning: include(): Failed opening '../mysqli_connect.php' for inclusion (include_path='C:\xampp\php\PEAR') in C:\xampp\htdocs\PHP\Chapter 13\view_quotes.php on line 18Notice: Undefined variable: dbc in C:\xampp\htdocs\PHP\Chapter 13\view_quotes.php on line 24 Warning: mysqli_query() expects parameter 1 to be mysqli, null given in C:\xampp\htdocs\PHP\Chapter 13\view_quotes.php on line 24 Notice: Undefined variable: dbc in C:\xampp\htdocs\PHP\Chapter 13\view_quotes.php on line 44 Warning: mysqli_error() expects parameter 1 to be mysqli, null given in C:\xampp\htdocs\PHP\Chapter 13\view_quotes.php on line 44 Could not retrieve the data because: The query being run was: SELECT id, quote, source, favorite FROM quotes ORDER BY date_entered DESCNotice: Undefined variable: dbc in C:\xampp\htdocs\PHP\Chapter 13\view_quotes.php on line 47Warning: mysqli_close() expects parameter 1 to be mysqli, null given in C:\xampp\htdocs\PHP\Chapter 13\view_quotes.php on line 47?php // Script 13.4 - footer.html // Display general admin links... // - if the user is an administrator and it's not the logout.php page // - or if the $loggedin variable is true (i.e., the user just logged in) if ( (is_administrator() && (basename($_SERVER['PHP_SELF']) != 'logout.php')) OR (isset($loggedin) && $loggedin) ) { // Create the links: print ' When I try and add a quote I get this list of errors. Quote Warning: include(C:/xampp/htdocs/PHP/Chapter13/mysqli_connect.php): failed to open stream: No such file or directory in C:\xampp\htdocs\PHP\Chapter 13\add_quote.php on line 23Warning: include(): Failed opening 'C:/xampp/htdocs/PHP/Chapter13/mysqli_connect.php' for inclusion (include_path='C:\xampp\php\PEAR') in C:\xampp\htdocs\PHP\Chapter 13\add_quote.php on line 23Notice: Undefined variable: dbc in C:\xampp\htdocs\PHP\Chapter 13\add_quote.php on line 26Warning: mysqli_real_escape_string() expects parameter 1 to be mysqli, null given in C:\xampp\htdocs\PHP\Chapter 13\add_quote.php on line 26Notice: Undefined variable: dbc in C:\xampp\htdocs\PHP\Chapter 13\add_quote.php on line 27Warning: mysqli_real_escape_string() expects parameter 1 to be mysqli, null given in C:\xampp\htdocs\PHP\Chapter 13\add_quote.php on line 27Notice: Undefined variable: dbc in C:\xampp\htdocs\PHP\Chapter 13\add_quote.php on line 37Warning: mysqli_query() expects parameter 1 to be mysqli, null given in C:\xampp\htdocs\PHP\Chapter 13\add_quote.php on line 37Notice: Undefined variable: dbc in C:\xampp\htdocs\PHP\Chapter 13\add_quote.php on line 39Warning: mysqli_affected_rows() expects parameter 1 to be mysqli, null given in C:\xampp\htdocs\PHP\Chapter 13\add_quote.php on line 39Notice: Undefined variable: dbc in C:\xampp\htdocs\PHP\Chapter 13\add_quote.php on line 43Warning: mysqli_error() expects parameter 1 to be mysqli, null given in C:\xampp\htdocs\PHP\Chapter 13\add_quote.php on line 43 Could not store the quote because: . The query being run was: INSERT INTO quotes (quote, source, favorite) VALUES ('', '', 1) Notice: Undefined variable: dbc in C:\xampp\htdocs\PHP\Chapter 13\add_quote.php on line 47Warning: mysqli_close() expects parameter 1 to be mysqli, null given in C:\xampp\htdocs\PHP\Chapter 13\add_quote.php on line 47 Here is my add_quotes.php code I am getting a red underline error on the ! is administrator line I added LINE is # where each line error is for my error list above <?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()) { (THIS LINE IS GIVING ME AN ERROR) 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: LINE 23 include('C:/xampp/htdocs/PHP/Chapter13/mysqli_connect.php'); // Prepare the values for storing: LINE 26 $quote = mysqli_real_escape_string($dbc, trim(strip_tags($_POST['quote']))); LINE 27 $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)"; LINE 37 mysqli_query($dbc, $query); LINE 39 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: LINE 47 mysqli_close($dbc); } else { // Failed to enter a quotation. LINE 43 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('templates/footer.html'); ?> Link to comment Share on other sites More sharing options...
Larry Posted May 15, 2020 Share Posted May 15, 2020 This error is the cause of all, or most, of your problems: Warning: include(C:/xampp/htdocs/PHP/Chapter13/mysqli_connect.php): failed to open stream: No such file or directory in C:\xampp\htdocs\PHP\Chapter 13\add_quote.php on line 23 Your reference to include mysqli_connect.php from add_quote.php is incorrect based upon how the two files are found on the server. Link to comment Share on other sites More sharing options...
Recommended Posts