Ach Boze Odecitani Autoincrementu je naprosto standardni pouzivany a fungujici postup. Proc se taky nezkusite podivat do manualu k MySQL ?
Je to hlavne mnohem rychlejsi nez select max, protoze ta hodnota pocitadla je udrzovana v metadatech v systemovych tabulkach - napr. select max z tabulky o nekolika stovkach tisic zaznamu bude dost pomala operace (samozrejme ze ten casovy rozdil v nejakych tabulkach s mensim objemem dat prilis patrny neni).

V cem mate chybu to nevim, protoze v PHPku nedelam (a ani doufam delat nikdy nebudu ). Jestli vam ty prikazy nejdou najednou, tak proc je tam nepustite postupne ? Zalezi jak to ma implementovano konkretni jazyk (napr JDBC ma funkce pro spusteni cele prikazove davky tak pro vykonani jednoho SQL prikazu).


Ja mam treba v Jave pro praci s MySQL napsanou jednoduchou statickou funkci, ktera funguje bez problemu:
Kód:
   public static int execIdentInsertI(String _sInsert, Connection _con) {
        try {
            int ret = -1;
            if( (_sInsert==null)||(_con==null) ) return ret;
            
            Statement stat = _con.createStatement();
            stat.executeUpdate(_sInsert);
            java.sql.ResultSet rs = stat.executeQuery("select LAST_INSERT_ID();");
            if(rs.next()) ret = rs.getInt(1);
            
            rs.close();
            stat.close();
            
            return ret;
        } catch (Exception e) {
            e.printStackTrace();
            return -1;
        }
    }