php 用户 ID 分配不起作用

标签 php mysql sql database sqlite

我正在尝试用户创建像 facebook 这样的用户组系统,但我在用户 ID 分配方面遇到问题。

我的用户表数据库设计:

username

uid

password

email

我的group_user数据库设计:

group_id

group_name

group_information

group_cover

uid_fk

这样,uid_fk就是用户表中的uid。当用户创建组时,我想将 uid 分配给 uid_fk

这是我的 PHP 代码:

group_user.php

<?php 
  class group_user 
  {

      public function Create_User_group($group_name,$group_information,$uid) 
      {
        $group_name= mysql_real_escape_string($group_name);
        $group_information= mysql_real_escape_string($group_information);
        $qu= mysql_query("SELECT group_id FROM group_users WHERE
                            group_name='$group_name'");
        if(mysql_num_rows($qu)==0)
        {

            $query = mysql_query("INSERT INTO 
                            group_users(group_name, group_information, uid_fk)
                            VALUES('$group_name','$group_information','$uid')");
            $sqll   = mysql_query("SELECT group_id 
                                    FROM group_users 
                                    WHERE group_name='$group_name' 
                                        and uid_fk='$uid'");
            $row   = mysql_fetch_array($sqll);
            $group_id   = $row['group_id'];
            $group_query = mysql_query("INSERT INTO 
                            group_friends(group_f_one, group_f_two, role)
                            VALUES('$group_id','$group_id','me')");
            return $blog_id ;

      } else {
            return false;
      }
    }     
  }
?>

create_group.php

<?php
    include_once 'includes/db.php';
    include_once 'includes/group_user.php';
    //Create group
    $group_user = new group_user();
    $reg_error='';
    if($_POST['group_name'] && $_POST['group_information'] )
    {
        $group_name=$_POST['group_name'];
        $group_information=$_POST['group_information'];

        if (strlen($group_name)>0 && strlen($group_information)>0)
        {
            $regg=$group_user->Create_User_group($group_name,$group_information);

            if($regg)
            {
                $_SESSION['group_id']=$regg;
                header("Location:group.php");
            }
            else
            {
                $reg_error="<span class='registererror'>Group name Already exist.</span>";
            }

        }
    }
?>

问题是,当用户创建组时,uid_fk 自动为“0”而不是 uid。我该怎么做才能解决这个问题?

最佳答案

您刚刚忘记在调用中放置第三个参数

// missing param 3
$regg=$group_user->Create_User_group($group_name,$group_information);

应该是

$regg=$group_user->Create_User_group($group_name,$group_information, $THE_UID_PARAM);

关于php 用户 ID 分配不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23979614/

相关文章:

php - 获取在特定日期之前添加的任何行

php - stdClass 对象和 foreach 循环

PHP 内爆关联数组

php - Codeigniter URL 重写

php - 在 Codeigniter 中返回查询或结果

python - Storm 或 SQLAlchemy ORM 是否允许从现有数据库创建模式?

php - 为什么在另一个文件中运行 php 函数后我的 HTML 代码没有呈现?

mysql - 获取在特定日期没有凭证的所有员工

mysql - SQL 首先按字母顺序排序,然后通过自定义 bool 列排序

sql - 有效识别差异