我有这张桌子:
CREATE TABLE wp_tokens (
ID int(12) NOT NULL AUTO_INCREMENT,
USER varchar(128) NOT NULL COMMENT 'User name',
TS timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
IP varchar(64) NOT NULL,
TOKEN varchar(128) NOT NULL COMMENT 'Hashed tokens',
VALID (12),
PRIMARY KEY (`ID`)
)
我想检查用户是否存在令牌。如果它存在,那么它应该返回令牌。如果没有,它应该生成一个。
这是我的PHP:
<?php
global $wpdb;
global $user_login;
$token = uniqid();
$hashedtoken = md5($token);
$user = $user_login;
$ip = $_SERVER['REMOTE_ADDR'];
$valid = "1";
$chkdb = mysql_query("SELECT valid FROM wp_tokens WHERE user=$user");
if(mysql_num_rows($chkdb) == 1)
{
echo $hashedtoken;
}
else
{
$wpdb->insert('wp_tokens',
array('user' => $user, 'token' => $hashedtoken, 'ip' => $ip, 'valid' => $valid),
array('%s','%s','%s'));
}
?>
它不起作用,我无法解决。它在Wordpress $ wpdb上执行应该正常工作。请帮忙!