MySQL和PHP错误

时间:2016-12-24 11:09:00

标签: php mysql

我有2个dbs在这里很重要 - systemmsg(系统消息)和friendrequests(包含所有朋友/待处理/拒绝请求)。

以下是我用于此脚本的主要代码:

if(isset($invitefriend)){
if(!empty($invitefriendname)){
    if($invitefriendname !== $sessionname){
        $sqlcheckforrequest = "SELECT * FROM friendrequests WHERE sendername='$sessionname' AND recipientname='$invitefriendname'";
        $resultcheckforrequest = mysqli_query($conn, $sqlcheckforrequest);
        if(mysqli_num_rows($resultcheckforrequest) == 0){
            $sqlscheckforusername = "SELECT * FROM registered WHERE userName='$invitefriendname'";
            $resultcheckforusernamesql = mysqli_query($conn, $sqlscheckforusername);
            if(mysqli_num_rows($resultcheckforusernamesql) !== 0){
                while($reqfriend = mysqli_fetch_array($resultcheckforusernamesql)){
                    $frsendid = $reqfriend['id'];
                    $frsendname = $reqfriend['userName'];
                }
                $sqlsendrequest = "INSERT INTO friendrequests (senderid,recipientid,sendername,recipientname,status) VALUES ('$sessionid','$frsendid','$sessionname','$frsendname','0')";
                $resultsendrequest = mysqli_query($conn, $sqlsendrequest);
                if($resultsendrequest == true){
                    if($rights = 0){
                        $myusernamefriendupdate = "<a href=\'profile.php?id=$sessionid\' class=\'u-onsys\'>$sessionname</a>";
                    }
                    if($rights = 1){
                        $myusernamefriendupdate = "<a href=\'profile.php?id=$sessionid\' class=\'cmod-onsys\'>$sessionname</a>";
                    } 
                    if($rights = 2){
                        $myusernamefriendupdate = "<a href=\'profile.php?id=$sessionid\' class=\'mod-onsys\'>$sessionname</a>";
                    }
                    if($rights = 3){
                        $myusernamefriendupdate = "<a href=\'profile.php?id=$sessionid\' class=\'adm-onsys\'>$sessionname</a>";
                    }
                    if($rights = 4){
                        $myusernamefriendupdate = "<a href=\'profile.php?id=$sessionid\' class=\'root-onsys\'>$sessionname</a>";
                    }
                $systemmessage = "$myusernamefriendupdate invited you to become his friend.";
                $systemtitle = "Friend request";
                $sqlupdatesystemmessage = "INSERT INTO systemmsg (systemtitle, systemto, systemtext) VALUES ('$systemtitle','$frsendname','$systemmessage')";
                mysqli_query($conn, $sqlupdatesystemmessage);
                $countsystemmessages++;
                $invitefrerror = "Success";
                }
            } else {
                $invitefrerror = "We couldn't find that username";
            }
        } else {
            $invitefrerror = "You already invited this user";
        }
    } else {
        $invitefrerror = "Inviting yourself";
    }
} else {
    $invitefrerror = "Empty";
}

}

因此脚本应该以这种方式工作:

用户1向用户2发送好友请求,用户2收到系统消息说: usericon(由发送请求的用户权限变量)用户名已向您发送邀请。 (或其他)

我们有一个包含2个输入文本的普通表单并提交。我们从db注册(用户)及其

中选择了我们的会话权限
$rights = $row['rights'];

点击&#34;发送请求&#34;我的(会话权限)工作正常(从数据库中获取实数(0表示用户,1表示聊天主持人,2表示主持人,3表示管理员,4表示root)。但是当我点击那个小小的厚脸皮按钮时,权利正在变为一个固定的数字(在本例中为4),它显示普通用户的邀请,例如根图标。我不知道如何解决这个问题以及实际错误在哪里

我希望大多数人都能理解我的问题,因为目前除了你之外几乎没有其他人可以问过。

谢谢你的时间!

1 个答案:

答案 0 :(得分:0)

if ($rights = 1) {的实例更改为if ($rights == 1) {以使用比较运算符而不是变量赋值。单个等号(=)将始终返回分配的值并且可以链接,因此($ rights = 1)将始终为真。

有关详细信息,请查看The 3 different equals