hey so I have been stuck on this assignment for a few hours now and I am at my wits end. I am trying to post new records to my database but for some reason everytime I click the submit button I get the error message. [TABLE="class: xdebug-error"] [TR] [TH="bgcolor: #f57900, colspan: 5, align: left"] Notice: Undefined variable: mysqli in C:\wamp\www\******\*******\viewrecord.php on line 20[/TH] [/TR] [TR] [TH="bgcolor: #e9b96e, colspan: 5, align: left"]Call Stack[/TH] [/TR] [TR] [TH="bgcolor: #eeeeec, align: center"]#[/TH] [TH="bgcolor: #eeeeec, align: left"]Time[/TH] [TH="bgcolor: #eeeeec, align: left"]Memory[/TH] [TH="bgcolor: #eeeeec, align: left"]Function[/TH] [TH="bgcolor: #eeeeec, align: left"]Location[/TH] [/TR] [TR] [TD="bgcolor: #eeeeec, align: center"]1[/TD] [TD="bgcolor: #eeeeec, align: center"]0.0009[/TD] [TD="bgcolor: #eeeeec, align: right"]377248[/TD] [TD="bgcolor: #eeeeec"]{main}( )[/TD] [TD="bgcolor: #eeeeec"]..\viewrecord.php:0[/TD] [/TR] [/TABLE] [TABLE="class: xdebug-error"] [TR] [TH="bgcolor: #f57900, colspan: 5, align: left"]( ! ) Fatal error: Call to a member function query() on a non-object in C:\wamp\www\******\*******\viewrecord.php on line 20[/TH] [/TR] [TR] [TH="bgcolor: #e9b96e, colspan: 5, align: left"]Call Stack[/TH] [/TR] [TR] [TH="bgcolor: #eeeeec, align: center"]#[/TH] [TH="bgcolor: #eeeeec, align: left"]Time[/TH] [TH="bgcolor: #eeeeec, align: left"]Memory[/TH] [TH="bgcolor: #eeeeec, align: left"]Function[/TH] [TH="bgcolor: #eeeeec, align: left"]Location[/TH] [/TR] [TR] [TD="bgcolor: #eeeeec, align: center"]1[/TD] [TD="bgcolor: #eeeeec, align: center"]0.0009[/TD] [TD="bgcolor: #eeeeec, align: right"]377248[/TD] [TD="bgcolor: #eeeeec"]{main}( )[/TD] [TD="bgcolor: #eeeeec"]..\viewrecord.php:0[/TD] [/TR] [/TABLE] Here is a copy of my code thanks in advanced for all your help <html> <head> <title>Create Record</title> </head><body><?php $action = isset($_POST['action']) ? $_POST['action'] : ""; if($action=='create'){ //the the user submitted the form //include database connection $DB_HOST='localHost:*****'; $DB_USR='****'; $DB_PWD=****; $DB_SCHEMAS='****'; $mysqli->query("INSERT INTO exam1 (UNAME, FNAME, LNAME, GEN, DOB, EMAIL) VALUES ( '" . mysql_real_escape_string($UNAME) . "', '" . mysql_real_escape_string($FNAME) . "', '" . mysql_real_escape_string($LNAME) . "', '" . mysql_real_escape_string($GEN) . "', '" . mysql_real_escape_string($DOB) . "', '" . mysql_real_escape_string($EMAIL) . "')"); //execute the query if( $mysqli->query($query) ) { //if saving success echo "User was created."; }else{ //if unable to create new record echo "Database Error: Unable to create record."; } //close database connection $mysqli->close(); } ?> PHP:
You have to actually create an instance of the mysqli class Above $mysqli->query, write: $mysqli = new mysqli($DB_HOST, $DB_USR, $DB_PWD, $DB_SCHEMAS); PHP:
Hope the solutions above sorted your problem mate. Seems straightforward. If its still not working then check your install. Sometimes debugging apps like Zend Debugger can 'steal' the database wrappers away from apache to route the code through themselves. Any ENV_VAR issues with Zend, and you wont have mysqli automagically available to your code.
COOL!! it worked however now I get the error [TABLE="class: xdebug-error"] [TR] [TH="bgcolor: #f57900, colspan: 5"]( ! ) Notice: Undefined variable: UNAME in C:\wamp\www******\********\addrecord.php on line 22[/TH] [/TR] [TR] [TH="bgcolor: #e9b96e, colspan: 5, align: left"]Call Stack[/TH] [/TR] [TR] [TH="bgcolor: #eeeeec, align: center"]#[/TH] [TH="bgcolor: #eeeeec, align: left"]Time[/TH] [TH="bgcolor: #eeeeec, align: left"]Memory[/TH] [TH="bgcolor: #eeeeec, align: left"]Function[/TH] [TH="bgcolor: #eeeeec, align: left"]Location[/TH] [/TR] [TR] [TD="bgcolor: #eeeeec, align: center"]1[/TD] [TD="bgcolor: #eeeeec, align: center"]0.0020[/TD] [TD="bgcolor: #eeeeec, align: right"]378936[/TD] [TD="bgcolor: #eeeeec"]{main}( )[/TD] [TD="bgcolor: #eeeeec"]..\addrecord.php:0[/TD] [/TR] [/TABLE] [TABLE="class: xdebug-error"] [TR] [TH="bgcolor: #f57900, colspan: 5"]( ! ) Notice: Undefined variable: FNAME in C:\wamp\www\******\********\addrecord.php on line 23[/TH] [/TR] [TR] [TH="bgcolor: #e9b96e, colspan: 5, align: left"]Call Stack[/TH] [/TR] [TR] [TH="bgcolor: #eeeeec, align: center"]#[/TH] [TH="bgcolor: #eeeeec, align: left"]Time[/TH] [TH="bgcolor: #eeeeec, align: left"]Memory[/TH] [TH="bgcolor: #eeeeec, align: left"]Function[/TH] [TH="bgcolor: #eeeeec, align: left"]Location[/TH] [/TR] [TR] [TD="bgcolor: #eeeeec, align: center"]1[/TD] [TD="bgcolor: #eeeeec, align: center"]0.0020[/TD] [TD="bgcolor: #eeeeec, align: right"]378936[/TD] [TD="bgcolor: #eeeeec"]{main}( )[/TD] [TD="bgcolor: #eeeeec"]..\addrecord.php:0[/TD] [/TR] [/TABLE] [TABLE="class: xdebug-error"] [TR] [TH="bgcolor: #f57900, colspan: 5"]( ! ) Notice: Undefined variable: LNAME in C:\wamp\www\******\********\addrecord.php on line 24[/TH] [/TR] [TR] [TH="bgcolor: #e9b96e, colspan: 5, align: left"]Call Stack[/TH] [/TR] [TR] [TH="bgcolor: #eeeeec, align: center"]#[/TH] [TH="bgcolor: #eeeeec, align: left"]Time[/TH] [TH="bgcolor: #eeeeec, align: left"]Memory[/TH] [TH="bgcolor: #eeeeec, align: left"]Function[/TH] [TH="bgcolor: #eeeeec, align: left"]Location[/TH] [/TR] [TR] [TD="bgcolor: #eeeeec, align: center"]1[/TD] [TD="bgcolor: #eeeeec, align: center"]0.0020[/TD] [TD="bgcolor: #eeeeec, align: right"]378936[/TD] [TD="bgcolor: #eeeeec"]{main}( )[/TD] [TD="bgcolor: #eeeeec"]..\addrecord.php:0[/TD] [/TR] [/TABLE] [TABLE="class: xdebug-error"] [TR] [TH="bgcolor: #f57900, colspan: 5"]( ! ) Notice: Undefined variable: GEN in C:\wamp\www\******\********\addrecord.php on line 25[/TH] [/TR] [TR] [TH="bgcolor: #e9b96e, colspan: 5, align: left"]Call Stack[/TH] [/TR] [TR] [TH="bgcolor: #eeeeec, align: center"]#[/TH] [TH="bgcolor: #eeeeec, align: left"]Time[/TH] [TH="bgcolor: #eeeeec, align: left"]Memory[/TH] [TH="bgcolor: #eeeeec, align: left"]Function[/TH] [TH="bgcolor: #eeeeec, align: left"]Location[/TH] [/TR] [TR] [TD="bgcolor: #eeeeec, align: center"]1[/TD] [TD="bgcolor: #eeeeec, align: center"]0.0020[/TD] [TD="bgcolor: #eeeeec, align: right"]378936[/TD] [TD="bgcolor: #eeeeec"]{main}( )[/TD] [TD="bgcolor: #eeeeec"]..\addrecord.php:0[/TD] [/TR] [/TABLE] [TABLE="class: xdebug-error"] [TR] [TH="bgcolor: #f57900, colspan: 5"]( ! ) Notice: Undefined variable: DOB in C:\wamp\www\******\********\addrecord.php on line 26[/TH] [/TR] [TR] [TH="bgcolor: #e9b96e, colspan: 5, align: left"]Call Stack[/TH] [/TR] [TR] [TH="bgcolor: #eeeeec, align: center"]#[/TH] [TH="bgcolor: #eeeeec, align: left"]Time[/TH] [TH="bgcolor: #eeeeec, align: left"]Memory[/TH] [TH="bgcolor: #eeeeec, align: left"]Function[/TH] [TH="bgcolor: #eeeeec, align: left"]Location[/TH] [/TR] [TR] [TD="bgcolor: #eeeeec, align: center"]1[/TD] [TD="bgcolor: #eeeeec, align: center"]0.0020[/TD] [TD="bgcolor: #eeeeec, align: right"]378936[/TD] [TD="bgcolor: #eeeeec"]{main}( )[/TD] [TD="bgcolor: #eeeeec"]..\addrecord.php:0[/TD] [/TR] [/TABLE] [TABLE="class: xdebug-error"] [TR] [TH="bgcolor: #f57900, colspan: 5"]( ! ) Notice: Undefined variable: EMAIL in C:\wamp\www\******\********addrecord.php on line 27[/TH] [/TR] [TR] [TH="bgcolor: #e9b96e, colspan: 5, align: left"]Call Stack[/TH] [/TR] [TR] [TH="bgcolor: #eeeeec, align: center"]#[/TH] [TH="bgcolor: #eeeeec, align: left"]Time[/TH] [TH="bgcolor: #eeeeec, align: left"]Memory[/TH] [TH="bgcolor: #eeeeec, align: left"]Function[/TH] [TH="bgcolor: #eeeeec, align: left"]Location[/TH] [/TR] [TR] [TD="bgcolor: #eeeeec, align: center"]1[/TD] [TD="bgcolor: #eeeeec, align: center"]0.0020[/TD] [TD="bgcolor: #eeeeec, align: right"]378936[/TD] [TD="bgcolor: #eeeeec"]{main}( )[/TD] [TD="bgcolor: #eeeeec"]..\addrecord.php:0[/TD] [/TR] [/TABLE] [TABLE="class: xdebug-error"] [TR] [TH="bgcolor: #f57900, colspan: 5"]( ! ) Notice: Undefined variable: PASSWORD in C:\wamp\www\******\********\addrecord.php on line 28[/TH] [/TR] [TR] [TH="bgcolor: #e9b96e, colspan: 5, align: left"]Call Stack[/TH] [/TR] [TR] [TH="bgcolor: #eeeeec, align: center"]#[/TH] [TH="bgcolor: #eeeeec, align: left"]Time[/TH] [TH="bgcolor: #eeeeec, align: left"]Memory[/TH] [TH="bgcolor: #eeeeec, align: left"]Function[/TH] [TH="bgcolor: #eeeeec, align: left"]Location[/TH] [/TR] [TR] [TD="bgcolor: #eeeeec, align: center"]1[/TD] [TD="bgcolor: #eeeeec, align: center"]0.0020[/TD] [TD="bgcolor: #eeeeec, align: right"]378936[/TD] [TD="bgcolor: #eeeeec"]{main}( )[/TD] [TD="bgcolor: #eeeeec"]..\addrecord.php:0[/TD] [/TR] [/TABLE] [TABLE="class: xdebug-error"] [TR] [TH="bgcolor: #f57900, colspan: 5"]( ! ) Notice: Undefined variable: query in C:\wamp\www\******\********\addrecord.php on line 30[/TH] [/TR] [TR] [TH="bgcolor: #e9b96e, colspan: 5, align: left"]Call Stack[/TH] [/TR] [TR] [TH="bgcolor: #eeeeec, align: center"]#[/TH] [TH="bgcolor: #eeeeec, align: left"]Time[/TH] [TH="bgcolor: #eeeeec, align: left"]Memory[/TH] [TH="bgcolor: #eeeeec, align: left"]Function[/TH] [TH="bgcolor: #eeeeec, align: left"]Location[/TH] [/TR] [TR] [TD="bgcolor: #eeeeec, align: center"]1[/TD] [TD="bgcolor: #eeeeec, align: center"]0.0020[/TD] [TD="bgcolor: #eeeeec, align: right"]378936[/TD] [TD="bgcolor: #eeeeec"]{main}( )[/TD] [TD="bgcolor: #eeeeec"]..\addrecord.php:0[/TD] [/TR] [/TABLE] [TABLE="class: xdebug-error"] [TR] [TH="bgcolor: #f57900, colspan: 5"]( ! ) Warning: mysqli::query() [mysqli.query]: Empty query in C:\wamp\www\******\********\addrecord.php on line 30[/TH] [/TR] [TR] [TH="bgcolor: #e9b96e, colspan: 5, align: left"]Call Stack[/TH] [/TR] [TR] [TH="bgcolor: #eeeeec, align: center"]#[/TH] [TH="bgcolor: #eeeeec, align: left"]Time[/TH] [TH="bgcolor: #eeeeec, align: left"]Memory[/TH] [TH="bgcolor: #eeeeec, align: left"]Function[/TH] [TH="bgcolor: #eeeeec, align: left"]Location[/TH] [/TR] [TR] [TD="bgcolor: #eeeeec, align: center"]1[/TD] [TD="bgcolor: #eeeeec, align: center"]0.0020[/TD] [TD="bgcolor: #eeeeec, align: right"]378936[/TD] [TD="bgcolor: #eeeeec"]{main}( )[/TD] [TD="bgcolor: #eeeeec"]..\addrecord.php:0[/TD] [/TR] [TR] [TD="bgcolor: #eeeeec, align: center"]2[/TD] [TD="bgcolor: #eeeeec, align: center"]0.0214[/TD] [TD="bgcolor: #eeeeec, align: right"]392608[/TD] [TD="bgcolor: #eeeeec"]mysqli->query( )[/TD] [TD="bgcolor: #eeeeec"]..\addrecord.php:30[/TD] [/TR] [/TABLE] Database Error: Unable to create record. Now I think that it may be because I am not using the same names as in my database... but IDK. $mysqli = new mysqli($DB_HOST, $DB_USR, $DB_PWD, $DB_SCHEMAS); $mysqli->query("INSERT INTO exam1 (UNAME, FNAME, LNAME, GEN, DOB, EMAIL) VALUES ( '" . mysql_real_escape_string($NAME) . "', '" . mysql_real_escape_string($FNAME) . "', '" . mysql_real_escape_string($LNAME) . "', '" . mysql_real_escape_string($GEN) . "', '" . mysql_real_escape_string($DOB) . "', '" . mysql_real_escape_string($EMAIL) . "', '" . mysql_real_escape_string($PASSWORD) . "')"); //execute the query if( $mysqli->query($query) ) { //if saving success echo "User was created."; }else{ //if unable to create new record echo "Database Error: Unable to create record."; } //close database connection $mysqli->close(); } ?> PHP:
Do this: echo "INSERT INTO exam1 (UNAME, FNAME, LNAME, GEN, DOB, EMAIL) VALUES ( '" . mysql_real_escape_string($NAME) . "', '" . mysql_real_escape_string($FNAME) . "', '" . mysql_real_escape_string($LNAME) . "', '" . mysql_real_escape_string($GEN) . "', '" . mysql_real_escape_string($DOB) . "', '" . mysql_real_escape_string($EMAIL) . "', '" . mysql_real_escape_string($PASSWORD) . "')"; PHP: Then run that query in your database to get the error. Perhaps they should not be uppercase. (provide the error to us here)
Actually, its because you are trying to insert 7 values in to 6 fields. Change it to UNAME, FNAME, LNAME, GEN, DOB, EMAIL, PASSWORD