deciblelovechild Posted February 12, 2003 Share Posted February 12, 2003 hi i need some help with this, i\'ve done some research on this and the only thing i came up with is that dynamic sql is the only way to use a variable for table name. Is this true??? If so, how would you do that with the following code? $db = $_SESSION[\'User\']; $db = $db . \"_buddies\"; $online_query = \"select buddy_name from $db WHERE online= \'n\'\"; any help is truly appreciated. thanks in advance.... dlc Quote Link to comment Share on other sites More sharing options...
metalblend Posted February 12, 2003 Share Posted February 12, 2003 That will work.. or you can do it the dirty way: [php:1:a9971eb821]$online_query = \"select buddy_name from \".$HTTP_SESSION_VARS[\'User\'].\"_buddies WHERE online= \'n\'\";[/php:1:a9971eb821] Hope that helps. Quote Link to comment Share on other sites More sharing options...
deciblelovechild Posted February 12, 2003 Author Share Posted February 12, 2003 i copied and pasted your code and it returns the same error i have been getting all along: Supplied argument is not a valid MySQL result resource i read somewhere it is only possible using dynamic sql... do you know if this is true????? Quote Link to comment Share on other sites More sharing options...
effigy Posted February 13, 2003 Share Posted February 13, 2003 is there any information in the database to gather? ad hoc that query. Quote Link to comment Share on other sites More sharing options...
deciblelovechild Posted February 13, 2003 Author Share Posted February 13, 2003 yea the query works fine. just not when i use a variable as a tablename. have you ever used a variable as a tablename before??? thx dlc Quote Link to comment Share on other sites More sharing options...
metalblend Posted February 13, 2003 Share Posted February 13, 2003 yes i\'m sure we all have used a variable in a query.. nothing fancy. see if there\'s an error in the query:[php:1:1527049cfd]$online_query = \"select buddy_name from \".$HTTP_SESSION_VARS[\'User\'].\"_buddies WHERE online= \'n\'\"; mysql_query($online_query) or die(\"Error : query failed.<br>MySQL said: <i>\".mysql_error().\"</i><br>rn\");[/php:1:1527049cfd] hope that helps. Quote Link to comment Share on other sites More sharing options...
effigy Posted February 13, 2003 Share Posted February 13, 2003 also echo $online_query out and see if it is was you are expecting. Quote Link to comment Share on other sites More sharing options...
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.