0

関数ファイル内にこの関数があります。これを使用して呼び出します (関数ファイルを含む別のファイルから): newBorrow_request($newBorrowRequest); ($newBorrowRequest) はフィールドの配列です。

関数はデータベースにデータを挿入し、正常に動作します。

質問: 挿入先の ID フィールドを返すにはどうすればよいですか? 関数が呼び出されるのと同じファイルに値が必要です。関数のコードと、別のファイルでそれを呼び出して ID を取得する方法のコードを教えてもらえますか?

ありがとう

function newBorrow_request($newBorrowRequest) {
array_walk($newBorrowRequest, 'array_sanitise');

$fields = '`' . implode('`, `', array_keys($newBorrowRequest)) . '`';
$data = '\'' . implode('\', \'', $newBorrowRequest) . '\'';

$query = mysql_query("INSERT INTO `borrowRequest` ($fields) VALUES ($data)");
if (!$query) {
    die('Could not query:' . mysql_error());
}

} 
4

3 に答える 3

1

問題は、最後の挿入 ID を取得する方法だけではなく、関数の外でそれを取得する方法でもあります。

関数によって返される必要があります。

function newBorrow_request($newBorrowRequest){
    // your procedure
    return mysql_insert_id();
}

関数を呼び出すと、戻り値が変数を設定します

$last_insert_id=newBorrow_request($some_data);

あなたが使用できる

echo $last_insert_id;

注意。mysql の代わりに mysqli または PDO を使用してください

于 2013-12-20T23:36:10.917 に答える