phppup 0 Posted February 14 Share Posted February 14 After deciding to venture into the realm of prepared statements, I have this line in my script Quote if ($stmt = $conn->prepare('SELECT username FROM users WHERE username = ?')) { Everything was working fine. I reviewed my code to adjust it to my old habits, and realized that I had hardcoded the TABLE NAME rather than using a variable. I updated my code to Quote $table = "users"; if ($stmt = $conn->prepare('SELECT username FROM $table WHERE username = ?')) { and results from my SELECT statement vanished. Is the use of a variable for a table's name outdated? Even possible?? Quote Link to post Share on other sites
Barand 1,650 Posted February 14 Share Posted February 14 Your query string is in single quotes therefore $table is not interpreted as "users". Why are you putting the table name in a variable? It's often a sympton of a poorly designed database if it is necessary. Quote Link to post Share on other sites
phppup 0 Posted February 14 Author Share Posted February 14 As mentioned, it's a hold-over of an old habit (although my database will probably be restructured next. LOL) Still, the double quotes were the only choice that didn't cause an error message. How do I get the variable in there? Or is it even worthwhile? Quote Link to post Share on other sites
Barand 1,650 Posted February 14 Share Posted February 14 https://www.php.net/manual/en/language.types.string.php Quote Link to post Share on other sites
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.