我想限制sugar crm中的用户数量,这样管理员将只能为例如20-25创建一定数量的用户,如果他试图创建更多的用户,那么它将显示一条消息,"您已经超过了用户限制"。
我试着把一个选择用户查询放在crm数据库上,如果它超过了限制,它就不会显示在editview的其余部分,但不幸的是,它不再工作了,它有时工作,但有时失败了。
它有点非结构化,因为我在editviewdefs.php、detailviewdefs.php和其他文件中使用普通的php语法。
语法如下:
<?php
$con=mysqli_connect("localhost","dbname","dbuser","dbpass");
// Check connection
if (mysqli_connect_errno())
{
echo "Failed to connect to MySQL: " . mysqli_connect_error(); }
$sql="SELECT * FROM users";
$result=mysqli_query($con,$sql);
$rowcount=mysqli_num_rows($result);
echo $rowcount;
if($rowcount<=25)
{
<<show rest of the edit view code eg $viewdefs ['Users']....... etc >>
}else
{
<< show a message >>
}
}
mysqli_free_result($result);
mysqli_close($con);
}
?>
我知道我使用的上述方法是不结构化和不正确的,因为这可以用某些sugar crm代码来解决。
那么,有没有任何系统和结构化的方法可以让我创建一个特定的功能,当我点击创建新用户并禁用或隐藏用户创建面板时,它会显示一条消息。
感谢
您只需要签入editviewdefs.php,因为每当新用户创建editviewdefs.php时,您都可以在那里检查
- 如果
$bean->id
为空,则新用户将创建 - 然后可以执行用户限制检查并限制用户
- 将用户QuickCreate表单重定向到用户FullForm
- 通过添加Where子句
users.deleted=0
改进SQL查询
除了mysqli错误的else之外,看起来是在点上
<?php
$con=mysqli_connect("localhost","dbname","dbuser","dbpass");
// Check connection
if (mysqli_connect_errno()) {
echo "Failed to connect to MySQL: " . mysqli_connect_error();
} else {
$sql="SELECT * FROM users";
$result=mysqli_query($con,$sql);
$rowcount=mysqli_num_rows($result);
echo $rowcount;
if($rowcount<=25) {
<<show rest of the edit view code eg $viewdefs ['Users']....... etc >>
} else {
<< show a message >>
}
}
mysqli_free_result($result);
mysqli_close($con);
}
?>