Php mysql PDO lastinsertid не работает
Привет,
У меня есть проблема, что мой код работает правильно, вставляет данные в базу данных, но сообщение об успехе после lastInsertId не работает.
Пожалуйста помочь.
Что я уже пробовал:
if(isset($_POST['submit'])) { $class=$_POST['class']; $subject=$_POST['subject']; $lesson=$_POST['lesson']; $topic=$_POST['topic']; $date = date('Y-m-d'); $teacherid = $_SESSION['teacherid']; $teachername = $_SESSION['fullname']; $sql = "INSERT INTO homework (class,subject,lesson,topic,`date`,teacherid,teachername) VALUES(:class,:subject,:lesson,:topic,:date2,:teacherid,:teachername)"; $query=$conn->prepare($sql); $query->bindparam(':class',$class,PDO::PARAM_STR); $query->bindparam(':subject',$subject,PDO::PARAM_STR); $query->bindparam(':lesson',$lesson,PDO::PARAM_STR); $query->bindparam(':topic',$topic,PDO::PARAM_STR); $query->bindparam(':date2',$date,PDO::PARAM_STR); $query->bindparam(':teacherid',$teacherid,PDO::PARAM_INT); $query->bindparam(':teachername',$teachername,PDO::PARAM_STR); $query->execute(); $lastInsertId = $conn->lastInsertId(); if($lastInsertId) { echo "<script language='text/javascript'>alert('Home work submitted successfully');</script>"; echo "<script type='text/javascript'> document.location = 'index.php'; </script>"; } }
Richard MacCutchan
Каково значение, возвращаемое $conn->lastInsertId()
и вставил $lastInsertId
когда этот код запускается?
nyt1972
Я попробовал это сделать, но оно даже не выполняется.
$lastInsertId = $conn->lastInsertId();
эхо "". $lastInsertId ."";
Richard MacCutchan
Это звучит не совсем правильно. Вам нужно будет сделать некоторую отладку, чтобы выяснить, что происходит.
nyt1972
В отладке он выполняет строки, но не предупреждает сообщение.