Welcome to OGeek Q&A Community for programmer and developer-Open, Learning and Share
Welcome To Ask or Share your Answers For Others

Categories

0 votes
261 views
in Technique[技术] by (71.8m points)

php - How to get a lastInsertID from one function and use it in another function? PDO

Hi I am able to get the last inserted ID in one function, but how am I able to use it in another function as it is being displayed as an undefined variable when outside of that function.

Thanks

EDIT: code from class.user.php

public function one($first)
    {
        try
        {
            $stmt = $this->db->prepare("INSERT INTO table1(first) VALUES(:first)");
            $stmt->bindParam(':first', $first);
            $stmt->execute();

            $newId = $this->db->lastInsertId();

            return $stmt;
            return $newId;

        }
        catch(PDOException $e)
        {
           echo $e->getMessage();
        }
    }

    public function two($array, $newID)
    {
        try
        {
            foreach($array as $arrayText){
                $this->db->beginTransaction();
                $stmt = $this->db->prepare("INSERT INTO table2(arrayText, table1_id) VALUES(:array, :newId)");
                $stmt->bindParam(':array', $arrayText);
                $stmt->bindParam(':newId', $newId);
                $stmt->execute();



                $this->db->commit();

            }

            return $stmt;
        }
        catch(PDOException $e)
        {
           echo $e->getMessage();
        }
    }

php code

if(isset($_POST['btn']))
{
   $first = trim($_POST['first']);
   $array = $_POST['array'];


   if($user->one($first) && $user->two($array, $newId))
   {
       Print '<script>alert("Added to database");</script>'; //Prompts the user
   }

 }
See Question&Answers more detail:os

与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
Welcome To Ask or Share your Answers For Others

1 Reply

0 votes
by (71.8m points)

you can use return like this

<?php
function myfunction ()
{
    $var='My variable';
    return $var;
}

echo myfunction();

与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
OGeek|极客中国-欢迎来到极客的世界,一个免费开放的程序员编程交流平台!开放,进步,分享!让技术改变生活,让极客改变未来! Welcome to OGeek Q&A Community for programmer and developer-Open, Learning and Share
Click Here to Ask a Question

...