Wann sollte ich $ wpdb-> prepare verwenden, wenn überhaupt?

Ich habe eine harte Zeit herauszufinden, ob ich @ verwenden soll$wpdb->prepare auf meine Datenbankabfragen in WordPress, um Dinge wie SQL-Injection zu verhindern.

Das $ wpdb Codex zeigt einige Beispiele, die die Funktion $ wpdb-> prepare verwenden, und andere Beispiele, die sie nicht verwenden.

Auch indiese Antwort Auf StackOverflow erwähnte jemand, dass eine Funktion wie$wpdb->insert hat das gleiche Sicherheitsniveau wie$wpdb->prepare. Aber was ist mit anderen$wpdb Funktionen wie$wpdb->get_var oder$wpdb->query?

Wann soll ich @ verwend$wpdb->prepare, wenn überhaupt

Einige meiner (vereinfachten)$wpdb Klassen- und Funktionsverwendung sieht folgendermaßen aus:

Beispiel 1 $wpdb->insert

$wpdb->insert(
                'special_posts', 
                    array( 
                        'title' => $title,
                        'selftext_html' => $selftext_html,
                        'selftext' => $selftext,
                    ), 

                    array(
                        '%s',
                        '%s',
                        '%s',
                    )
            );

Beispiel 2: $wpdb->get_results

$wpdb->get_results("SELECT * FROM special_posts WHERE selftext_html = '$value'");

Beispiel 3: $wpdb->get_var

$wpdb->get_var("SELECT title FROM special_posts ORDER BY id DESC LIMIT 1");

Beispiel 4: $wpdb->query

$wpdb->query('TRUNCATE TABLE special_posts');

Antworten auf die Frage(2)

Ihre Antwort auf die Frage