[wp-trac] [WordPress Trac] #43664: $wpdb->get_results fails in specific cases with non-latin charaters in where clause

WordPress Trac noreply at wordpress.org
Fri Mar 30 08:37:48 UTC 2018


#43664: $wpdb->get_results fails in specific cases with non-latin charaters in
where clause
--------------------------+-----------------------------
 Reporter:  altert        |      Owner:
     Type:  defect (bug)  |     Status:  new
 Priority:  normal        |  Milestone:  Awaiting Review
Component:  Database      |    Version:  4.9.4
 Severity:  normal        |   Keywords:
  Focuses:                |
--------------------------+-----------------------------
 Let's say we have user with display name 'Алексей';

 {{{$wpdb->get_results("SELECT user_login FROM $wpdb->users where
 `display_name`='Алексей' ", ARRAY_A);}}}

 executes normally


 {{{$wpdb->get_results("SELECT user_login AS 'russian person' FROM
 $wpdb->users where `display_name`='Алексей' ", ARRAY_A);}}}

 executes normally as well

 but

 {{{$wpdb->get_results("SELECT user_login AS 'person from Russia' FROM
 $wpdb->users where `display_name`='Алексей' ", ARRAY_A);}}}

 returns empty array and results in error:
 [table <table_prefix> Russia.doesn't exist]
 SHOW FULL COLUMNS FROM `Russia`

 That means 'from' in 'person from Russia' somehow gets in sql

 It's an obscure enough situation, but might signify that something is
 wrong with wpdb query handling

--
Ticket URL: <https://core.trac.wordpress.org/ticket/43664>
WordPress Trac <https://core.trac.wordpress.org/>
WordPress publishing platform


More information about the wp-trac mailing list