2016-03-05 89 views
1

我不能一次插入2个选项卡。 它只能插入其中的1(在这个例子中,插入第一个)PHP/SQL多插入不工作

function addNewUser($username, $password, $email){ 
     $time = time(); 
     /* If admin sign up, give admin user level */ 
     if(strcasecmp($username, ADMIN_NAME) == 0){ 
     $ulevel = ADMIN_LEVEL; 
     }else{ 
     $ulevel = USER_LEVEL; 
     } 
    $datumregistrationbla = date("d.m.Y"); 
     $q = "INSERT INTO ".TBL_USERS." (username, password, email, userlevel, register_date) VALUES ('$username', '$password', '$email', '$ulevel', '$datumregistrationbla')"; 
     return mysql_query($q, $this->connection); 
     $q = "INSERT INTO `post` (`post_id`, `from`, `to`, `betreff`, `text`, `datum`, `active`) VALUES ('', 'Fuchsfeuer', '$username', 'Test', 'Test2', '$datumregistrationbla', '0')"; 
     return mysql_query($q, $this->connection); 
    } 

回答

2

的问题是,因为你return第一mysql_query,其余的将不被executed.Try这样删除它。

function addNewUser($username, $password, $email){ 
     $time = time(); 
     /* If admin sign up, give admin user level */ 
     if(strcasecmp($username, ADMIN_NAME) == 0){ 
     $ulevel = ADMIN_LEVEL; 
     }else{ 
     $ulevel = USER_LEVEL; 
     } 
    $datumregistrationbla = date("d.m.Y"); 
     $q = "INSERT INTO ".TBL_USERS." (username, password, email, userlevel, register_date) VALUES ('$username', '$password', '$email', '$ulevel', '$datumregistrationbla')"; 
     mysql_query($q, $this->connection); 
     $q = "INSERT INTO `post` (`post_id`, `from`, `to`, `betreff`, `text`, `datum`, `active`) VALUES ('', 'Fuchsfeuer', '$username', 'Test', 'Test2', '$datumregistrationbla', '0')"; 
     mysql_query($q, $this->connection); 
    } 

请忘记使用mysql_*,因为它已被弃用,在PHP 7中它已被删除。
尝试使用mysqlipdo