0

Getting the above error when trying to insert into custom table .I am unable to find out what is the cause of the error.

The error comes at line 17. Any help is greatly appreicated.

The code is below:

<?php
session_start();
require_once "wp-load.php";
require_once "dbconfig.php";

global $wpdb, $current_user;
$current_user=wp_get_current_user();
$current_username = $current_user->user_login;
$table_name='persons';
$first_name=$_POST['first_name'];
$last_name= $_POST['last_name'];
$email=$_POST['email'];
$telephone=$_POST['telephone'];

$wpdb->query( $wpdb->prepare(
"
 INSERT INTO $wpdb->$table_name
( first_name, last_name, email,telephone,user_name)
VALUES ( %s, %s, %s,%s,%s )
",
$first_name,$last_name,$email,$telephone,$current_username
) );

closed as off-topic by Krzysiek Dróżdż, rudtek, Nathan Johnson, Jacob Peattie, kraftner Apr 3 at 8:30

This question appears to be off-topic. The users who voted to close gave this specific reason:

  • "Questions that are too localized (such as syntax errors, code with restricted access, hacked sites, hosting or support issues) are not in scope. See how do I ask a good question?" – Krzysiek Dróżdż, rudtek, Nathan Johnson, Jacob Peattie, kraftner
If this question can be reworded to fit the rules in the help center, please edit the question.

  • Seems like there's a typo here: $wpdb->$table_name in the query. – Sally CJ Mar 19 at 8:39
  • Thank you. Problem solved. – David D'Lima Mar 19 at 10:10
0

$wpdb->$table_name is not a valid table name. Use $table_name

$wpdb->query( $wpdb->prepare(
"
 INSERT INTO $wpdb->$table_name
( first_name, last_name, email,telephone,user_name)
VALUES ( %s, %s, %s,%s,%s )
",
$first_name,$last_name,$email,$telephone,$current_username
) );

should be

$wpdb->query( $wpdb->prepare(
"
 INSERT INTO $table_name
( first_name, last_name, email,telephone,user_name)
VALUES ( %s, %s, %s,%s,%s )
",
$first_name,$last_name,$email,$telephone,$current_username
) );

Not the answer you're looking for? Browse other questions tagged or ask your own question.