Получить идентификатор сразу после его установки, на той же странице

ThreadID в Thread_Body должен быть идентификатором идентификатора Thread_Titles. Как бы я поступил так?

if (isset($_POST['Post_Thread'])) {
    if (empty($_POST['Post_Title'])) {
        echo "No Title No Thread.";
    } else {
        $Sec = mysql_real_escape_string($_GET['sec']);
        mysql_query("INSERT INTO Thread_Titles (Name, Section, Posted, Poster, Updated) VALUES('".cleanPost($_POST['Post_Title'])."', '".$Sec."', '".time()."', '".$ULN->Username."', '".time()."') ") or die(mysql_error()); 
    }
    if (empty($_POST['Post_Body'])) {
        echo "No Body No Thread.";
    } else {
        mysql_query("INSERT INTO Thread_Replies (Body, Posted, Poster, ThreadID) VALUES('".cleanPost($_POST['Post_Body'])."', '".time()."', '".$ULN->Username."', '".$ThreadID."') ") or die(mysql_error()); 
    }
}

Это код, все ожидают форму.

1 ответ

Использование mysql_insert_id()

mysql_query("INSERT INTO Thread_Titles (Name, Section, Posted, Poster, Updated) VALUES('".cleanPost($_POST['Post_Title'])."', '".$Sec."', '".time()."', '".$ULN->Username."', '".time()."') ") or die(mysql_error());  
$ThreadID = mysql_insert_id();

К вашему сведению, вы не должны использоватьmysql_* функции в новом коде. Они больше не поддерживаются и официально устарели. Видишь красную коробку? Вместо этого узнайте о готовых утверждениях и используйте PDO или MySQLi - эта статья поможет вам решить, какие именно. Если вы выбираете PDO, вот хороший урок.

Другие вопросы по тегам