Tylor_Famous Posted January 23, 2008 Share Posted January 23, 2008 Ok I am new to MySQL and this is the first real thing I am working on. I am making a forum and so far I managed to get half of it working. I can make the topics by sending them to the database (figured out how to do that last night thanks to a kind member here!) and now I am trying to display the stuff that is in the database. I am however having a bit of trouble with that... I get the following error Warning: mysql_query(): supplied argument is not a valid MySQL-Link resource in /mylink/mysqlforum/topiclist.php on line 37 Lines 36 - 41 are as follows $get_num_posts_sql = "SELECT COUNT(post_id) AS post_count FROM forum_posts WHERE topic_id = '".$topic_id."' "; $get_num_posts_res = mysql_query($mysql, $get_num_posts_sql) or die (mysql_error() ); while ($posts_info = mysql_fetch_array($get_num_posts_res) ) { $num_posts = $posts_info['post_count']; } I am using mysqladmin through godaddy. Here is the whole code. <?php //connect to server $host = 'XXXXXXX.myserver.net'; $user = 'XXXXX'; $pass = '#######'; $database = 'TylorsDB'; $mysql = mysql_connect($host,$user,$pass) or die(mysql_error()); //Get all topics and order them by date $get_all_topics = "topic_id, topic_title, topic_create_time, topic_owner"; mysql_select_db ("TylorsDB"); $get_topics_res = mysql_query ("SELECT $get_all_topics FROM forum_topics ORDER BY topic_create_time DESC") or die(mysql_error()); if (mysql_num_rows($get_topics_res) < 1){ //If it is less then one then there is nothing in the dadabase. We will say then... $display_block = "<p><em>No topics exist</em></p>"; }else{ //Create the displaly string $display_block = " <table cellpadding=\"3\" cellspacing=\"1\" border=\"1\"> <tr> <th>TOPIC TITLE</th> <th># of POSTS</th> </tr>"; while ($topic_info = mysql_fetch_array($get_topics_res)) { $topic_id = $topic_info['topic_id']; $topic_title = stripslashes($topic_info['topic_title']); //////////not sure if the fmt is needed here? $topic_create_time = $topic_info['fmt_topic_create_time']; $topic_owner = stripslashes($topic_info['topic_owner']); //Get number of posts $get_num_posts_sql = "SELECT COUNT(post_id) AS post_count FROM forum_posts WHERE topic_id = '".$topic_id."' "; $get_num_posts_res = mysql_query($mysql, $get_num_posts_sql) or die (mysql_error() ); while ($posts_info = mysql_fetch_array($get_num_posts_res) ) { $num_posts = $posts_info['post_count']; } //add to display $display_block .=" <tr> <td><a href=\"showtopic.php?topic_id=".$topic_id." \"> <strong> ".$topic_title." </strong></a><br /> Created on ".$topic_create_time." by ".$topic_owner." </td> <td align=center> ".$num_posts." </td> </tr>"; } //free results mysql_free_result($get_topics_res); mysql_free_result($get_num_posts_res); //Close the table $display_block .= "</table>"; } ?> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>Topics in my forum</title> </head> <body> <h1>Topics in My Forum</h1> <?php echo $display_block; ?> <p>Would you liked to <a href="addtopic.html">add a topic</a>?</p> </body> </html> Any help would be great! Thanks so much. Link to comment https://forums.phpfreaks.com/topic/87394-solved-im-new-to-mysql-and-need-a-bit-of-help/ Share on other sites More sharing options...
revraz Posted January 23, 2008 Share Posted January 23, 2008 Looks like you are only making one connection, so remove $mysql from your query. Link to comment https://forums.phpfreaks.com/topic/87394-solved-im-new-to-mysql-and-need-a-bit-of-help/#findComment-447044 Share on other sites More sharing options...
Tylor_Famous Posted January 23, 2008 Author Share Posted January 23, 2008 Ok I removed the $mysql and I believe I made a connection because now I get a new error Unknown column 'topic_id' in 'where clause' I think that is from this section $get_num_posts_sql = "SELECT COUNT(post_id) AS post_count FROM forum_posts WHERE topic_id = '".$topic_id."' "; Any ideas? Link to comment https://forums.phpfreaks.com/topic/87394-solved-im-new-to-mysql-and-need-a-bit-of-help/#findComment-447055 Share on other sites More sharing options...
revraz Posted January 23, 2008 Share Posted January 23, 2008 That means topic_id doesn't exist in your table as a field name. Link to comment https://forums.phpfreaks.com/topic/87394-solved-im-new-to-mysql-and-need-a-bit-of-help/#findComment-447058 Share on other sites More sharing options...
Tylor_Famous Posted January 23, 2008 Author Share Posted January 23, 2008 Ok looks like it worked!! I have a few buggs I need to fix but I think I should be able to get it working now. Thanks so much! I can't tell you how much you helped me out! Link to comment https://forums.phpfreaks.com/topic/87394-solved-im-new-to-mysql-and-need-a-bit-of-help/#findComment-447063 Share on other sites More sharing options...
revraz Posted January 23, 2008 Share Posted January 23, 2008 No problem. Link to comment https://forums.phpfreaks.com/topic/87394-solved-im-new-to-mysql-and-need-a-bit-of-help/#findComment-447074 Share on other sites More sharing options...
Recommended Posts
Archived
This topic is now archived and is closed to further replies.