-5

@mysql_affected_rows の戻り値のすべての可能性を教えてください。私はチェックしているのでif(@mysql_affected_rows())。ほとんどの場合、1 (成功) または 0 (失敗) を返します。したがって、正しく機能しました。ただし、更新に成功しなかった場合、0 以外の値を返す場合があります。

私はそれが何を返すかわかりません。しかし、それはループに入ります。ループ内でデータを挿入しようとしています。しかし、そのためにSQLで重複エラーが表示されます。参考までに、以下のコードを確認してください。

$sqlU = sprintf("UPDATE %s SET count = count + 1
                            WHERE id = %d", 'table', 123);
mysql_query($sqlU);
if(!@mysql_affected_rows()) {
    $sqlI = sprintf("INSERT INTO %s (id) VALUES (%d)",
                                'table', 123);
    mysql_query($sqlI);
}
4

1 に答える 1