0

テーブルに情報を追加する関数をphpで作成しました。ただし、ID はエントリ時に作成されます。しかし、別のタスクを実行するにはその Id が必要ですが、そのエントリを取得する方法が実際にはわかりません。

だから私の機能はこれです:

addSkillset($agent, $computing, $tactical, $driving);

これは次のことを行います:

function addProperty($agent, $computing, $tactical, $driving) {
    $mysqli = new mysqli(DB_SERVER, DB_USER, DB_PASSWORD, DB_NAME);
    if (!$mysqli) {
            die('There was a problem connecting to the database.');
    }
    else {
    $query = "INSERT INTO Skillset VALUES (NULL, '$agent', '$computing', '$tactical', '$driving')";
    }
    if ($Results = mysql_query($query)){
    echo "added";
    }
    $mysqli->close();
}

したがって、このクエリでは、「NULL」ビットが識別して返そうとしているものです。

私は置く必要があると思います:

if ($Results = mysql_query($query)){
    $somesortofvariable = somesortofcommand;
    return $somesortofvariable;
}

しかし、私は完全にはわかりません。

4

2 に答える 2

1

たぶん、次の使用を検討する必要がありますmysql_insert_id()

if($Results = mysqli_query($query))
{
    return mysqli_insert_id();
}

ただし、API リファレンス ドキュメントの上部にある大きな赤いボックスに注意してください。

この拡張モジュールは PHP 5.5.0 で非推奨になり、将来的に削除される予定です。代わりに、MySQLiまたはPDO_MySQL拡張機能を使用する必要があります。詳細については、MySQL: APIガイドの選択および関連する FAQも参照してください。この機能の代替手段は次のとおりです。

MySQLi を使用していることに注意しましたが、標準のmysql_query(). たぶんそれはあなたのコードのタイプミスかもしれませんが、念のために言及したいと思いました...

于 2013-01-29T08:24:29.660 に答える
1

mysqli_insert_id()を探しています

if ($Results = mysqli_query($query)){
    $somesortofvariable = mysqli_insert_id();
    return $somesortofvariable;
}
于 2013-01-29T08:22:43.710 に答える