2016-09-10 2 views
0

Я снова здесь, но сегодня я просто хотел спросить, как вставить текущий идентификатор пользователя в другую таблицу. Я имею в виду, что у пользователя уже есть идентификатор в первом. и я хочу вставить тот же самый идентификатор в 2-ю таблицу.как вставить один и тот же идентификатор из 1-й таблицы во вторую таблицу

<?php 
include('connect.php'); 
$id=$_POST['P_Id']; 
$date=$_POST['appdate']; 
$time=$_POST['apptime']; 
$lname=$_POST['lname']; 
$fname=$_POST['fname']; 
$contact=$_POST['contact']; 
$service=$_POST['service']; 
$status = "pending"; 
$dentist= "Dr. Adrian Romero"; 
$msg= "Appointment Sucessfully Inserted "; 
$update= mysql_query("INSERT INTO appointments (P_Id,LasName,FirstName,contact,appdate,apptime,service,status) values ('$id','$date','$time','$dentist','$fname','$lname','$contact','$service','$status')"); 
$id=mysql_insert_id(); 
if($update) 
{ 
echo "<script> alert('Thank you For Requesting an appointment. please wait for the administrator s response after 24 hrs')</script>"; 
header('Location:Patient.php'); 
} 
else 
{ 
$msge= mysql_error(); 
$errormsg="Something went wrong, Try again!"; 
echo "<script type='text/javascript'>alert('$errormsg');</script>"; 
} 

plus. Я действительно не понимаю функцию mysql_insert_id(); пожалуйста, помогите, спасибо, у вас хороший день! : D

+0

Что не работает? –

+0

Вы не должны использовать любые функции mysql _ *. Они устарели с php 5.5 и полностью удалены в php 7.0 – Manish

+0

@Adrian Romero mysql_insert_id - Получить идентификатор, сгенерированный в последнем запросе [http://php.net/manual/en/function.mysql-insert-id.php] , Его даст вам последний идентификатор вставки. – Manish

ответ

0

Основная терминология в MySQL и как MySQLi является mysqli_insert_id

Добавленная себе это совершенно неправильно. У вас есть введенные случайные значения в инструкции Insert. Попробуйте использовать приведенный ниже код.

<?php 
include('connect.php'); 
$id=$_POST['P_Id']; 
$date=$_POST['appdate']; 
$time=$_POST['apptime']; 
$lname=$_POST['lname']; 
$fname=$_POST['fname']; 
$contact=$_POST['contact']; 
$service=$_POST['service']; 
$status = "pending"; 
$dentist= "Dr. Adrian Romero"; 
$msg= "Appointment Sucessfully Inserted "; 
$query ="INSERT INTO `appointments` (`P_Id`,`LasName`,`FirstName`,`contact`,`appdate`,`apptime`,`service`,`status`) VALUES ('".$id."','".$lname."','".$fname."','".$contact."','".$date."','".$time."','".$service."','".$status."')"; 
$update= mysql_query($query); 
$id=mysql_insert_id(); 
if($id) 
{ 
echo "<script> alert('Thank you For Requesting an appointment. please wait for the administrator s response after 24 hrs')</script>"; 
header('Location:Patient.php'); 
} 
else 
{ 
$msge= mysql_error(); 
$errormsg="Something went wrong, Try again!"; 
echo "<script type='text/javascript'>alert('$errormsg');</script>"; 
} 
?> 

В настоящее время в mysql.* было амортизируется использование mysqli.* является предпочтительным.

mysqli_insert_id - Возвращает автогенерируемую идентификатор, используемую в последнем запросе

mysqli_insert_id() функция возвращает идентификатор сгенерированного запроса на стол с столбец, имеющей атрибут AUTO_INCREMENT. Если последний запрос не был оператором INSERT или UPDATE, или если в измененной таблице нет столбца с атрибутом AUTO_INCREMENT, эта функция будет возвращать ноль.

Примечание: Выполнение оператора INSERT или UPDATE с помощью функции LAST_INSERT_ID() будет также изменить значение, возвращаемое функцией mysqli_insert_id().

<?php 
$con=mysqli_connect("localhost","my_user","my_password","my_db"); 
// Check connection 
if (mysqli_connect_errno()) 
    { 
    echo "Failed to connect to MySQL: " . mysqli_connect_error(); 
    } 

mysqli_query($con,"INSERT INTO Persons (FirstName,LastName,Age) 
VALUES ('Glenn','Quagmire',33)"); 

// Print auto-generated id 
echo "New record has id: " . mysqli_insert_id($con); 

mysqli_close($con); 
?> 

Если вы хотите, чтобы получить последний вставленный идентификатор в mysqli.* вы должны пройти $con- connection variable для дальнейшей цели.

+0

@Adrian Ромеро. Если вы получили решение, дайте мне знать. Если вы сочтете это полезным +1, так как это очень распространенная ошибка, которую все разработчики делают, поэтому она может быть полезна для остальных. –

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

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