Ich habe ein WordPress-System am Laufen PHP 7.0.11 verwenden WordPress. Ein Plugin, das ich verwenden möchte, funktioniert nicht und die Überprüfung der Protokolle führt zu Problemen
PHP Fatal error: Uncaught Error: Call to undefined function mysql_real_escape_string() in…
Auf der Suche nach dieser Fehlermeldung habe ich festgestellt, dass die mysql_real_escape_string()
Erweiterung wurde abgelehnt.
Wie kann ich diese Anweisung konvertieren, damit sie in PHP 7 und höher funktioniert?
$ids = mysql_real_escape_string( $ids );
$result = $wpdb->query( "DELETE FROM $table_name WHERE id IN( $ids )" );
Ich habe das in den WordPress-Dokumenten gefunden: wpdb::_real_escape()
eine aktualisierte Version des Plugins erhalten? Der Code sieht anfällig für SQL-Injection aus
– Professor Abronsius
19. Oktober 2016 um 7:48 Uhr
Kann ich eine verwenden
mysqli
Erweiterung in WordPress, da es verwendet wirdwpdb
? RamRaider das Plugin ist recht einfach und nicht mehr weiterentwickelt.– Marian Rick
19. Oktober 2016 um 7:50 Uhr
Wie @RamRaider sagte, sollten Sie ein anderes Plugin aktualisieren oder verwenden. Es ist nicht wirklich sicher, es nicht zu verwenden
mysqli_*
oderPDO
. Wie auch immer, dieses Plugin scheint PHP 7 nicht zu unterstützen– Debflav
19. Oktober 2016 um 7:54 Uhr
Ich habe dies in den wp-Dokumenten gefunden. Ist dies ein zu ersetzender WordPress-Workaround
mysql_real_escape_string
mitreal_escape
? developer.wordpress.org/reference/classes/wpdb/_real_escape– Marian Rick
19. Oktober 2016 um 7:55 Uhr
Ich bin mit WordPress nicht vertraut, aber es scheint, dass diese Funktion verwendet wird
mysql_real_escape_string
odermysqli_real_escape_string
Folgen Sie Ihren aktuellen Treibern.– Debflav
19. Oktober 2016 um 7:58 Uhr