Meine beste Vermutung ist, dass Sie Ihrem WordPress-MySQL-Datenbankbenutzer keine Berechtigung für Ihre neue benutzerdefinierte Tabelle erteilt haben, vermutlich weil Sie sie mit einem anderen MySQL-Benutzer über phpMyAdmin
erstellt haben . Versuchen Sie Folgendes auszuführen:
GRANT ALL PRIVILEGES ON sow2.spd_invites TO 'wordpress_user'@'wordpress_host';
FLUSH PRIVILEGES; -- load new privileges
Ersetzen Sie „wordpress_user“ durch Ihren Wordpress-MySQL-Benutzernamen (zu finden in wp-config.php
). ) und „wordpress_host“ mit dem Hostnamen Ihres Wordpress-Servers (oder localhost, wenn es sich auf demselben Server befindet).
Denken Sie daran, dass dies Wordpress MySQL volle Berechtigungen gewährt (SELECT
, INSERT
, DROP
, usw.) zu dieser Tabelle hinzufügen, was möglicherweise unerwünscht ist. Siehe die MySQL-Dokumentation für meine Informationen zu GRANT
Befehl - http://dev.mysql.com/doc/refman /5.5/en/grant.html
Sie werden Ihre Einfügung mit query()
ausführen wollen funktionieren, da sie keine Ergebnisse zurückgibt:
$wpdb->query($query);
Um alle Tabellen anzuzeigen, die für Ihren Wordpress-MySQL-Benutzer sichtbar sind, fügen Sie Folgendes zur functions.php
Ihres Themes hinzu Datei, um die Tabellennamen unten auf jeder Seite auszudrucken:
function show_all_tables(){
global $wpdb;
foreach($wpdb->get_results("SHOW TABLES", ARRAY_N) as $table):
echo $table[0]."<br/>";
endforeach;
}
add_action('wp_footer', 'show_all_tables');