Daniel, your voice hasn't changes for the 3 years I've been learning from your tutorials; you're like the most positive guy ever! Keep being you, I love it.
@@Dani_Krossing Nice tutorial but *how can I hide the login button when the users are already logged in ? AND how can I hide the logout button when the users already have logged out* ?
Your tutorials are amazing. They are so well explained and you have covered every bit of the language. FYI, I followed your tutorials and I got an internship. So thank you for making all these wonderful, full of php knowledge videos.
I was able to do your login/signup system with just a few mistakes and then I rushed through your command lines on this one and had all kinds of errors lol. I was a little frustrated at first and stomped, but I eventually caught all my mistakes. I actually learn more by messing up the code then doing it right, haha. It forces me to learn to read the code and learn how the errors correlate with my syntax mistakes. It also forces me to experiment to validate how far the code is actually processing correctly. Thanks Daniel, your tutorials are very informative with your explanations. Keep them coming. :)
HI Dani! I'm a recent fan of yours myself. Love your teaching style. So positive and a great sense of humour. Aside that, I am having issues with mysqli_connect. In other lessons when you use PDO there hasn't been any issues in-that I could submit data to the database. But with mysqli_connect, nothing happens. Any suggestions on how to make mysqli_connect to work properly on my Mac? @@Dani_Krossing
@@thezvid you're right this while login is not good. it always appear multiple row of profile image in your login because of different table he used can't get specific row from the same id
It's just an exercise. I learned something. Whether I ever use this method myself or not, I'm not sure. If I do, I'm sure I will probably build on top of it and do a lot of refactoring.
I love the tutorials but I get genuinely confused sometimes. The discontinuity of the projects feels so bad and I get confused in editing some parts because I don't know how to connect the things together. But I learned a lot. I'm probably just stupid anyway.. thank you ^_^
WOW Man was this one ever the bees knees.. I had a 3 day time (I'm legit a beginner just started coding php last week thanks to you) figuring out how not only to mash this into the previous episode but also your large 2 hour login system video which idk on your upload schedule but it seems like it was a reupload and came years after this lol.. good fight though I STILL dont have the idea 100% at this time but I'm PRETTY sure I know where to go from here and this video has helped me as far as it can so thank you so much Daniel you are awesome brother. If anyone's having problems with this still let me see if I can point you in the right direction with issues I faced: FIRST let me disclose i tossed away his second table profileimg all together and used the previous login database which in that other video he called "users" which already had 4 categories idUsers uidUsers then email and pass but those two are the important ones. so first I added a column to my table called status just like his: int (11) not null etc issues I faced were not paying attention to when I was supposed to be SELECTING from the number column or the name column.. you have to follow this video exactly and anywhere he writes ANYTHING with an id first its always referenceing the number one in my case was idUsers. likewise anything he writes with a username for me was uidUsers Dont be a hero and write your own attachments or improvements if your a beginner like me .. you dont know the jack you think you do lmao big tip here wasted a lot of hours like "man i know whats going on here so what if i..." yeah dont lol I ran into an issue where i accidently called my default profile image "profiledefault.jpg" lmao it kept showing up as a blank square instead of the image and glancing over the comments i might have been the only dummy on this one lol. I was essentially looking for something called "profiledefault.jpg.jpg" unintentionally. Lastly I have completely different login and signup systems .. if you have one like me you can circumvent that entire signup segment in here by just simply adding a parameter to your signup.php or whatever you call it in the INSERT INTO section youd already have and add a VALUE to it of 1 in my case hed used several questionmarks mine looks like this now: INSERT INTO users (uidUsers, emailUsers, pwdUsers, status) VALUES (?, ?, ?, 1) thus rendering all this: $sql= "SELECT * FROM users WHERE uidUsers='$username'"; $result = mysqli_query($conn, $sql); if (mysqli_num_rows($result) > 0){ while ($row = mysqli_fetch_assoc($result)){ $username = $row['uidUsers']; $sql = "INSERT_INTO users (status) VALUES (1)"; mysqli_query($conn, $sql); } } Useless... (note the types of changes i had to make from his original code and you could easily do this also) but make sure you look in your login system and be mindful that your _SESSION ids are set correctly i was trying to use stuff like idUsers and my uidUsers in places i should have had my actual _SESSION id's .. Which as a quick example are $_SESSION['userId'] = $row['idUsers']; so i had to go back and find anywhere he referenced his first table which i diddnt have as either just "id" or "username" or anything like that and make sure i had the right ones.. using one table it actually streamlines the process cutting out a lot of EXTRA stuff. Hopefully this helps anyone lol I wish someone would answer some of the questions in these comments much more when they figure them out haha .. oh well help where I can much love all =)
Thanks so much Dani, you are an amazing teacher. Interestingly concepts from your teachings have been so helpful in preferring solutions to some of my projects , sometimes unrelated to the tutorial. Keep up the good work sir!
@Visions Weekly Magazine I kind of agree. He did update the login one and I wish he would have updated this one but connected it to the login form and made it it into some sort of profile page with image. But I'm actually figuring much of it just using the few of Dani's videos and the stuff I've been picking up along the way.
So nice of you for teaching us all these about php. Please guide how can i launch mob camera in feed back form.. Like there will be a feedback form with submit option and capture image option.. The capture image option should turns on the mobile camera and take the picture, save it in sql data base and send along with the form when clicked on submit button.
The tutorial is good but I suggest you also discuss about checking mime types of images. The hackers can name their shell scripts to any image file by just changing the extension name and bypass your validation.
Question: On the upload section you allow .jpg, gif, pdf, etc. to be saved to the uploads directory but line 26 when you log in appears in my head at least to only recognize .jpg. Do I need to consider the filename like was done in upload.php so it will process the other types? Otherwise I got it work (with some minor modifications.)
You are amazing you solved my 2 nights of sleeplessness i will check other things you offer and if there are some sort of courses then i have to buy from you!
Hey love the video, I am not sure why isn't my profileimg table updating when the users sign up even though I followed all your steps. Do you get any clue what might be the issue?
This was the most difficult video to understand for me among all PHP tutorial videos. I have watched it 4 times and still unable to understand. All the videos are adorable but I am really stuck in this video.
after I log out from other user then log in again for another user, the image from the past user is still in there, how can I display only the profile image of the logged in user?
pleasee make the next video about templates, and use bootstrap to make the page without using tools like (twig). Love your vids! You are an incredible teacher!
Hi and thank you :) I know about these attributes, however you shouldn't use them instead of what we did in this video. Because it is incredible easy for anyone to get around attributes, by simply going into the browsers build-in developer tool, and then remove them before submitting the form.
It's a wonderful tutorial. I just think there's one flaw, when you echo the image that we uploaded, you mention the extension to be ".jpg". But it will not find the image if it had some other extension. Please correct me if I'm wrong.
Yes that is true. I am thinking of solving that problem by having an extension column in my profile image table. So instead of putting .jpg I will put the respective file extension which I will have previously uploaded to the database when uploading the image. I don't know if this makes sense to you.
hey bro i did all what you said and it work for me but when i ever signup new user the first user image dosint disapear so the new user will see the old user img and i dont want that how to fix this
In this lesson when we login by one user id and then log out and then again login with another user id, and then when we go to the profile photo section, then it shows the profile of both the users. The user previously logged out and the user currently logged in. How to manage users profile according to the current session of a single user. Please help me with this.
@@nabeeltech7885Neither of them videos have anything to do with this.. its something to do with the sessions.. ids now if there 2 or more accounts registered it shows those accounts it showed them in his video
@@Holyschytt hummmm now i am moved to node js which is much tougher but more faster then php next era is node js, go lang and java script type server languages because of their asynchronous behaviour it means they can execute many requests
Thank you so much for this video!! I finally put user profile pic function on my project. I have a question. echo ""; With this code, if user selects the file such as png or jpeg not jpg(which is set as default), how can I change the code? It's not like just changing to echo ""; Can you help me?
Coming from a .net background these videos have been amazing in helping me learn php and I think the guy is a great teacher. However, I do think this particular video is made more complex than it has to be, you could pretty much avoid all this and just have a folder that gets created when the user signs up named after their id, in that folder you place a default profile image (default.jpg). If the user wants to change it you simply allow them to somewhere within their profile settings, this overwrites the default default.jpg. Anywhere you want to display their profile image you just point to id of user/default.jpg, doing this you never need to check the database, as the user id will be in session.
That would also be a solution yes :) but instead of having a default.jpg in every folder it would be better to just have the default image in a folder for itself, and point to it if the user hasn't uploaded one themselves. This way there isn't hundreds/thousands copies of the same image on the server. In my example, I place all related material/images in the same folder and catagorize them there after. So there would be a folder for profile images, a folder for banner images, a folder for uploaded videos, etc. And this would make it just as simple to target using PHP in my mind. However I do also soo another benefit in your suggestion, which is keeping the users separate on the server, which could be seen as a safer method in case a folder gets deleted. Since it isn't all users that loose data in this way. I will go ahead and pin this comment for others to see ;)
mmtuts Thank you for the feedback. You are right, having the one image would be better, I guess another way would be checking the directory of the id folder for default.jpg, if it doesn’t exist use default image. It’s only an idea though. Thank you for your time and advice, it’s appreciated.
Great tutorials so far! Is there a reason why you created two tables instead of just inserting the status column into the user table or even just checking if the correct file exists (by naming the pictures according to the user's id)?
I created two tables because I wanted to keep the users startup information (the info provided when signing up) in a separate table, and the later added information in a separate table (such as profile image, banner image, profile settings, etc). But it is perfectly doable if you add all the information in a single table.
Thanks for the response! :) Is it to keep it clean or to avoid performance issues (or some other reason) that you keep track of the status in the database instead of just checking if a correspondingly named file exists in the uploads folder?
Great teachings! Thank you! :) I got it all to work together with your last tutorial on how to make a login system. If you are anyone else is reading this, can you please help me with one more thing, as I am not educated in programming. Currently I can see all the users when logged in, but is there php/sql code that shows only the avatar of the current person that is logged in? session if you will. Many thanks and best regards! :)
@@darox3549 For me it was the SQL tables had an autoincrement that never reset, so on upload.php userid =/= $id so it could never link the img and the account together.
Thank you so much. I love all your tutorials and I appreciate your sharing. However, this tutorial -and only this one- is kind of messy with incomplete parts. like not being able to log in other than user #1. And having to list all DB users at the top of index page. Anyway, thanks a lot again and again; I know it was for focusing on this certain-topic and I acknowledge that you know best. Highly Appreciated.
*Error related to $conn in mysqli* Having error about "unidentified variable of $conn" MEANING: to $conn doesnt exist, so I went to dbh.php file where definition of $conn is held. SOLUTION: I was supposed to write "
Here, we can only change the profile picture of the 1st user, due to in login.php if(isset($_POST['submitLogin]')) { $_SESSION['id'] = 1; } but how to change profile picture of individual user who logged in ??
You have to set the userid in the url using a get method. The url should look like www.website.com/index.php?id=$userid. with this you can target the individual user through a select statement. "SELECT * FROM user WHERE id=''userid". make sure to set the $userid = sessionid or row[id] of the user.
The default image isn't showing for me. I've checked and my image name in uploads/ and echo string are the same and they are jpg any one know why this is happening?
There are multiple errors, even with the help of our colleague EL EL, still the code doesn't cooperate, while my coding is still incipient, even with the code from Patreon something doesn't add up.
Hey , mmtuts All php code is alright but the code written in login.php : header("Location: index.php"); Is unable to work. In fact when I click on submit it lands on login.php page. Please help!🙏
I am getting like you did... Logged Users Profile Signed up user profile1 Signed up user profile2 .. And so on I just want to show only that logged user... What changes should I do?
I have a question: in the index.php, in the echo that uploads the custum user's profile image, it's currently set to 'jpg', followed byt the question mark and the mt_rand() functiion. What if the users uploads then a 'png' image? I did the teste and the broweser uploadted a broken image. Is there a way in html language to accept different extensions in the image source? Great tutorial tho, you are a greate teacher!
@@niro6856 I tried to find the solution for a couple of minutes at the day but i couldn't find it and started taking care of other parts of the project. I tried using * in the extension part to allow any extension but it didn't work on my html..
Hello, thanks for the great video! I went to your source files and wasn't able to find the css file. When do you expect that will be up? Thanks again! :)
If i was using this for an website logo for example. How could i get it to show the "latest" image where i want? can i assign the lastest filename to a variable and then just use that in my "source" part of the imagedisplay tag?
i didn't see any styleesheet. There is one problem with me. Everything is working but after i choose the profile image, when i clicked the upload button, it doesn't work. But, when i choose image to upload from my computer to the upload folder, it works but not in case with uploading profile Image. is there anyone who can help me?
yup i declare the method post but i am doing with the picture so i don't need enctype. profile image is not related with the enctype i guess. there must be mistake regarding the code inside the upload final destination but it looks look. so i am feed up with these error? did you solve the problem?
Sorry but I can not help you, in the end it happens that the problem is my database, the user was different from 1 person who did not identify the state that wanted to change the image.
I did similar as you since I already used the finished log in system and just implemented all from this lesson and i also used the prepared statements and everything went well, but ... in the database, in user table, whenever I insert a new user the index numbers are going in the reverse direction, from the highest to the smallest, what do you think, what could be the problem?
Use blob type to store images on Database ! Nice video working til 2018 .
4 года назад
Never store images in a database. Best practice is to always have a pointer to the image location, and have the images stored on a separate server. Which is why loading images from the root folder of your website is significantly slower than loading them from another server.
What does not null mean? I am assuming that if you don't type not null.. the user can leave this blank? At 18:00, you put the form at line 17 but can't you put it straight after line 15?
I have some kind of an error, the userid from profileimg wasn't the same as user's id so I put an equal sign related to their ids which I think is the better option from creating a usless userid column in profileimg table.
So may things are not clear regarding the while after $id = $row["id"]; if you have more than a user, it still gets all of the users right? Am I missing something?
Hi, I have a question. The user can upload either .jpg .png .jpeg. . However when printing the image, if the user choosed to upload a .png image the site won't find the image because its written (echo "" ). Any solution ? Btw, great video ;D
Don't you think we should use $_SESSION['id'] in index page when we are checking if image is uploaded or not instead of checking for all user? And aren't we supposed to save img to db? 🤔
Was following along the video. At the very end, when you press sing up, it goes to login.php file and then it's just blank. So, I don't know, either I missed something, or there is a mistake. I even compared/copy/pasted the code, and it does the same thing. Very informative videos though.
I've already created a JSON file to store user's data using php, and MySQL to store user profile images. Explain as to how i can connect both databases to upload the correct profile image to the user logged in. Or maybe you caan create a video on this please?
But we need not display every user information(images and username) when signed up. Second thing, when user got signed up there is no header function in "signup.php" that redirects to "index.php". Correct me if I'm wrong :)
At line 17.. do you need to store that in another variable called $id? Can't you just use.. $row ['user_uid'].. directly? Also, why did you use 0 and not 1 as already has a picture?
Thank you so much for the tutorial, it is life saving! I just wanted to ask a quick question. I've found that, if the user changes his avatar several times, an each image has a different extension (I've tried the three png, jpg, and jpeg), it creates three files. The avatar displayed tends to always be jpg over png, and jpeg over those two, no matter if the jpeg was the first upload and the png the last. I don't know if I'm explaining properly, sorry. What I mean, is that the avatar showed it is not the latest image uploaded. Does anyone knows how can I fixed that? Please. :c
Followed ep 51 and 52, when I fill out first name, last name, username, and password and click signup, it says you have an error, also for the index.php( the one with the file size > 100000)
when i log in the original profile picture of the user does not appear and when i upload a picture it does not appear also in the website. Why is that? PLEASE HELP!!
hey men mmtuts which is more efficient to use? making a separate document for every login/logout script or just put it in the same document and make it a function? I think making it a function, but I want to get your side of view :) sorry for bad English :/