Zitat:
Zitat von Ammaletu Was Du zitierst gilt für die Funktion query(), welche Du aber ja gar nicht aufrufst. get_results() liefert dagegen einfach die Ergebnisse zurück und weiß von MySQL-Fehlern nichts. |
Ooops, du hast Recht, vielen Dank!
Das ist mir gar nicht aufgefallen.
Könnte ich dann nicht einfach ein query() vorschalten, und wenn es FALSE ergibt, dann gab es einen Fehler?
PHP-Code:
function block_ip($ip) {
global $wpdb;
$query = "INSERT IGNORE INTO wp_blocked_ips (ip) VALUES ('$ip')";
if ($wpdb->query($query) === FALSE) {
return FALSE
} else {
return $wpdb->get_results($query);
}
}
Das einzige Problem, was ich damit habe, ist der Unterschied zwischen "==" und "===", wie es auch im
Codex beschrieben wird.
Zitat:
| Note: since both 0 and FALSE can be returned, make sure you use the correct comparison operator: equality == vs. identicality ===
|
Muss ich also "===" verwenden, wie ich es vorstehend getan habe?
Und würde dann der Aufruf
PHP-Code:
$blocked = block_ip('123.456.789.012');
if ($blocked) {
echo "Everything went fine.";
} else {
echo "An error has occured!";
}
zum gewünschten Erfolg führen?
Ich sehe da das Problem, dass block_ip() entweder ein Object oder FALSE zurückgeben soll... geht das denn, sprich, wenn $blocked nicht FALSE ist, gibt es dann TRUE zurück und ist gleichzeitig ein Object, auf das ich zugreifen könnte?
Ich hoffe, man versteht, was ich sagen will...
