Ich habe ein Problem mit der Funktion get_row() in WordPress und kann keine zufriedene Antwort für meine Situation finden. Das ist ein Stück von meinem CodeWordPress Funktion get_row() funktioniert nicht richtig
function take_category() {
$table_result = array();
$connect_to = connect_to_db();
$question = "select id_cat, name_cat from category";
if (!($result=$connect_to->get_results($question, ARRAY_N))) {
return false;
}
$prepared_row =$connect_to->prepare("%s", $question);
var_dump($prepared_row);
$row=$conntect_to->get_row($prepared_row, ARRAY_N, 1); // line 689
var_dump($row).'</br>';
for ($count=0; $row=$conntect_to->get_row($question, ARRAY_N, 1);
$count++) {
$table_result[$count] = $row;
.........
return $table_result;
diese Funktion in functions.php platziert wird. Funktion connect_to_db() wird in dieser Datei definiert auch:
function connect_to_db() {
global $wpdb;
$wpdb = new wpdb('****', '', '****store', 'localhost');
if (!$wpdb) {
return false;
} else{
$wpdb->query('SET autocommit = 1;');
return $wpdb;
}
}
Verbindung zur Datenbank ordnungsgemäß funktioniert. Funktion vorbereiten funktioniert auch richtig. Dies ist var_dump ($ prepared_row):
string(39) "'select id_cat, name_cat from category'"
Aber das nächste Stück Code
$row=$conntect_to->get_row($prepared_row, ARRAY_N, 1); // line 689
var_dump($row);
zeigt das Ergebnis NULL: und fatalen Fehler
***Fatal error:** Uncaught Error: Call to a member function get_row() on
null in ....\functions.php:689 Stack trace: #0 ...\indeks.php(12):
take_category() #1 {main} thrown in ...\functions.php on line 689*
Datei indeks.php ist eine Datei mit der Funktion take_cate (Blutig) heißt:
$cat_table = take_category();
Aber wenn ich ändert meine Linie 689 wie folgt aus:
$row=$connect_to->get_row("select id_cat, name_cat from category",
ARRAY_N, 1);
Ich sehe var_dump ($ row):
array(2) { [0]=> string(1) "2" [1]=> string(9) "Textbooks" }
und die gleicher fataler Fehler!
Was ist falsch mit der Funktion get_row?
Sehr geehrte Gentelments Ich habe das Problem gefunden. Entschuldigen Sie für Ihre Zeit ...
Sehr geehrte Damen und Herren! Danke für deine Antwort. Ich schrieb, ich habe diesen Fehler gefunden und korrigiert. Leider konnte ich meine Frage nicht löschen. Es tut uns leid. –