Правильный способ добавить переменную PHP в запрос MySQL? - PullRequest
0 голосов
/ 10 апреля 2011

Я очень новичок в PHP и пытаюсь выбрать данные из поля MySQL (в таблице). Я использовал следующий запрос.

$token = $wpdb->query("SELECT ami_st_token_aut 
                         FROM $wpdb->users 
                        WHERE ID = '".$current_user->ID."' ");

Значение в ami_st_token_aut является большим числом, но когда я отображаю $ token, оно выводит $current_user->ID вместо большого номера токена. Что может быть не так?

Ответы [ 2 ]

3 голосов
/ 10 апреля 2011

Два способа сделать это.

Если вы делаете это с WordPress, используйте функцию wpdb->prepare:

$token = $wpdb->get_var(
  $wpdb->prepare(
    "SELECT ami_st_token_aut FROM $wpdb->users WHERE ID=%d", $current_user->ID
  )
);

Если вы делаете это без Wordpress, используйтефункция mysql_real_escape_string.

mysql_query(
  "SELECT ami_st_token_aut FROM tablename WHERE ID='" 
  . mysql_real_escape_string($ID) . "'"
);
1 голос
/ 10 апреля 2011

См. Кодекс Wordpress .

Функция $wpdb->query возвращает количество строк, соответствующих вашему запросу (если вы все равно делаете SELECT).

$wpdb->get_var - это функция, используемая для получения одного значения из базы данных.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...