Joomla用户插入mysql

时间:2017-03-27 12:16:01

标签: php mysql joomla

我已经制作了一个表单,并希望将数据插入我的数据库,以便附加到我的网站上登录的用户。 我使用过这种形式:

<form action="/index.php?option=com_content&view=article&id=41" method="post">

<input type="hidden" name="username" id="username" value="username">

<input type="radio" name="k1" id="k1" value="1">1<input type="radio" name="k1" value="X">X<input type="radio" name="k1" value="2">2<br />

<input type="text" name="k1r" id="k1r">

<div>

<p style="float:left; width:14%; margin-right:2%; background:#eee; color:black; border:1px solid #ccc; padding:10px"><input type="submit" value="Add Records"></p>

</div>

</form>

蚂蚁行动&#39;会得到这个代码:

// Check connection
if($mysqli === false){
die("ERROR: Could not connect. " . $mysqli->connect_error);
}

// Escape user inputs for security

$username = $mysqli->real_escape_string($_SESSION['username']);

$k1 = $mysqli->real_escape_string($_POST['k1']);
$k1r = $mysqli->real_escape_string($_POST['k1r']);

// attempt insert query execution
$sql = "INSERT INTO kampbs(username, k1, k1r) VALUES('$user', '$k1', '$k1r')";

if($mysqli->query($sql) === true){
echo "Records inserted successfully.";
} else{
echo "ERROR: Could not able to execute $sql. " . $mysqli->error;
}


// Close connection
$mysqli->close();
?>

表格数据按原样插入,但在&#39;用户名&#39;数据库中的字段表示&#39; JUser&#39;。我该怎么做才能获得登录用户名(应该是用户名&#39; DJ&#39;)。

1 个答案:

答案 0 :(得分:0)

我实际上已经做到了,感谢@Bhaskar的链接。 Joomla以自己的方式检索用户信息:

$user = JFactory::getUser();

之后我做了变量:

$username = $user->username;

最后我把它插入到$ sql中,如:

$sql = "INSERT INTO kampbs(username, k1, k1r) VALUES('$username', '$k1', '$k1r')";

那就做到了! :)