Php 在新查询中使用范围\标识返回的ID

Php 在新查询中使用范围\标识返回的ID,php,sql-server,Php,Sql Server,现在,这就是我所拥有的: $query = "INSERT INTO COMMENTS VALUES ('$user', '$comment', '$star')"; mssql_query($query, $connection); $commentIDQuery = "SELECT SCOPE_IDENTITY() AS ins_id"; $CI = mssql_query ($commentIDQuery, $connection); $commentID = mssql_fetch_r

现在,这就是我所拥有的:

$query = "INSERT INTO COMMENTS VALUES ('$user', '$comment', '$star')"; 
mssql_query($query, $connection);
$commentIDQuery = "SELECT SCOPE_IDENTITY() AS ins_id";
$CI = mssql_query ($commentIDQuery, $connection);
$commentID = mssql_fetch_row($CI);
$idQuery = "SELECT recipeid FROM t_recipe WHERE recipename = '$recipeName'";
$RID = mssql_query($idQuery, $connection);
$recipeID = mssql_fetch_row($RID);  
$rcQuery = "INSERT INTO COMMENT_RECIPE VALUES ('$commentID[0]', '$recipeID[0]')";
    mssql_query($rcQuery, $connection);
那我怎么才能得到那个INSU id呢

它将其添加到第一个表中,即注释,但不是关系表

使用sql server 2008

这个

$query = "DECLARE @NewID INT
          INSERT INTO COMMENTS VALUES ('$user', '$comment', '$star');
          SELECT @NewID  = SCOPE_IDENTITY();
          INSERT INTO COMMENTS_RECIPE VALUES (@NewID, '$recipeid')";

$stmt = sqlsrv_query($conn,$query);

您拥有的是无效语法。id是主键吗?是的,当我在SSMS中仅使用前两个查询时,它返回最后生成的主键。doh,sql server忽略我抱歉。出于某种原因,仍然只是进入第一个表,但是,让我仔细检查一下我的格式。你确定在注释表中有一个标识列吗?如果你看到我代码的第一行,我已经声明了一个INT数据类型的变量@NewID,后来我用这个变量将新插入的标识值存储到这个变量中,然后在下面的INSERT语句中简单地传递这个变量。这是我的错,我从来没有将这个变量传递到下一页,它需要获取recipeid