Ovidiu G
Ovidiu G

Reputation: 1273

Get logged in memberID from database

I have two tables (blog_members and blog_posts) which are related 1 to many, 1 member to many posts. Therefore, in order to be able to relate the two I had to make one field in blog_posts named memberID and set up the relation between this field and the one from blog_members. Now, I'm trying to make a script to add posts into the database. The thing is, now I have the field memberID in blog_posts which needs to be the same with the one from blog_members in order to be related. So, I'm trying to get the current logged in memberID from the blog_members so I can introduce it into the blog_posts. I know this can be done with an input where you can type your ID but it doesn't feel right, I want this to be in the back, not to be seen.

Short story:

$memberID = get current logged in memberID from blog_members;

    //insert into database
    $sql="INSERT INTO blog_posts (memberID, postTitle,postDesc,postCont,postDate) VALUES('$memberID',$postTitle','$postDesc','$postCont','$postDate')";

    $result=mysqli_query($link,$sql);

    if($result){
        echo '<p>Added successfully!</p>';
    }else {
        echo "Error: ".$sql."<br>".mysqli_error($link);
    }

Upvotes: 0

Views: 35

Answers (1)

siggen
siggen

Reputation: 40

Normally you would store the ID of the logged in user in a session:

$_SESSION['login_userid'] = // THE USER ID OBTAINED FROM LOGIN

Now it will be stored in the browser as $_SESSION['login_userid'] and you can just put this to the top of your code:

$memberID = $_SESSION['login_userid'];

On every page where you use sessions you must run session_start() before the first line of HTML code. If you are not sure how to create your own login system, have a look at this tutorial.

Note: memberID is not unique in the blog_posts table, as one user can create many posts. You should probably create a primary key blogpostID as well.

Upvotes: 0

Related Questions