2016-04-25 4 views
1

Я хочу отправить нового зарегистрированного пользователя с идентификатором AUTO_INCREMENT внутри таблицы1 и в то же время вставить mysqli_insert_id или LAST_INSERT_ID, что бы вы хотели назвать его внутри table2. Я могу повторить вывод id, но мне это нужно в моей таблице2. Как я могу это сделать? Пожалуйста помоги!
Вот мой код для справки:Вставьте mysqli_insert_id в отдельную таблицу, используя PHP

<?php 

if(isset($_POST['submit'])) { 

require 'connect.php'; 

$sql = "INSERT INTO table1 (username, password) 
    VALUES ('".$_POST["username"]."','".$_POST["password"]."')"; 

if (mysqli_query($con, $sql)) { 
    $last_id = mysqli_insert_id($con); 
    echo "New record created successfully. Last inserted ID is: " . $last_id; 
} else { 
    echo "Error: " . $sql . "<br>" . mysqli_error($con); 
} 
mysqli_close($con); 
} 

?> 
+0

id = last_insert_id() query insert и т. Д.? довольно просто –

ответ

2

Используйте переменную с последним добавленным идентификатором из (успешного) запроса для вставки в другую таблицу.

Это грубый эскиз, поскольку мы не знаем, что такое схема db для вашего второго стола, и совершенно неясно, поэтому вам нужно будет (заполнить) все остальное.

if (mysqli_query($con, $sql)) { 
    $last_id = mysqli_insert_id($con); 
    echo "New record created successfully. Last inserted ID is: " . $last_id; 

    $sql = mysqli_query($con, "INSERT INTO table2 (col) VALUES ('$last_id')") 
      or die(mysqli_error($con)); 
} 

Пароли

Я также заметил, что вы можете хранить пароли в виде обычного текста. Это не рекомендуется.

Используйте один из следующих действий:

Другие ссылки:

Важно Sidenote о длине колонки:

Если и когда вам решите использовать password_hash() или пакет совместимости (если PHP < 5.5) https://github.com/ircmaxell/password_compat/, важно отметить, что если длина текущего столбца пароля меньше 60, его необходимо будет изменить на это (или выше). В руководстве предлагается длина 255.

Вам потребуется ALTER length вашей колонки и начать с нового хэша, чтобы он вступил в силу. В противном случае MySQL будет терпеть неудачу.

+0

Да, это именно то, что мне нужно. Протестированные работы идеальны. Спасибо за дополнительную информацию. Я возьму его для рассмотрения. –

+0

@SergeyM. О, круто! Рад слышать, что это сработало для вас, * приветствия и приветствуются * –

Смежные вопросы