Solved

PHP Error

Posted on 2010-11-30
2
274 Views
Last Modified: 2012-05-10
I am not sure what is wrong with the code below, but when ever I attempt to execute it I get the following error:

PHP Warning:  mysql_fetch_assoc() expects parameter 1 to be resource, boolean given in mysql.main.php on line 17

According to the PHP manual, I have mysql_fetch_assoc() written correctly. Not sure why this error is being thrown.
<?php



	// require the configurations file

	require(dirname(__FILE__) . "/configurations/config.inc.php");

	

	// open connection to mysql - source and destination

	$mysql_source_link_id = mysql_connect($argv[1], mysql_user, mysql_user_password);

	$mysql_destination_link_id = mysql_connect(destination_mysql_host, mysql_user, mysql_user_password);

	

	// open the databases for both - source and destination mysql instances

	$mysql_database_source = mysql_select_db($argv[2], $mysql_source_link_id);

	$mysql_database_destination = mysql_select_db(destination_database_name, $mysql_destination_link_id);

	

	// execute the select statement on the source

	$query_select = mysql_query($sql_select, $mysql_source_link_id); 

	

	for ($i=0; $i < ($row = mysql_fetch_assoc($query_select)); $i++) {

		

		echo $row["world_id"] . "\n";

		echo $row["room_id"] . "\n";

		echo $row["player_id"] . "\n";

		echo $row["timestamp"] . "\n";

		echo $row["is_blocked"] . "\n";

		echo $row["message"] . "\n";

		

	}

	

	mysql_free_result($query_select);

	

	// close connection to mysql - source and destination

	mysql_close($mysql_destination_link_id);

	mysql_close($mysql_source_link_id);



?>

Open in new window

0
Comment
Question by:plecostomus
2 Comments
 
LVL 82

Expert Comment

by:Dave Baldwin
ID: 34241768
I don't see '$sql_select' defined anywhere in that code.  Your 'mysql_query()' won't work without it.
0
 
LVL 1

Accepted Solution

by:
jebpotly earned 500 total points
ID: 34241771
http://us2.php.net/manual/en/function.mysql-query.php
"For SELECT, SHOW, DESCRIBE, EXPLAIN and other statements returning resultset, mysql_query() returns a resource on success, or FALSE on error.

"For other type of SQL statements, INSERT, UPDATE, DELETE, DROP, etc, mysql_query() returns TRUE on success or FALSE on error."

I would guess that your "mysql_query($sql_select, $mysql_source_link_id); " statement on line 15 is returning a boolean which is why your warning is complaining about a boolean. What is the value of your $sql_select variable and what what do you get if you do a print_r($query_select)  on line 16 right after you do the query?
0

Featured Post

Free Trending Threat Insights Every Day

Enhance your security with threat intelligence from the web. Get trending threat insights on hackers, exploits, and suspicious IP addresses delivered to your inbox with our free Cyber Daily.

Join & Write a Comment

Popularity Can Be Measured Sometimes we deal with questions of popularity, and we need a way to collect opinions from our clients.  This article shows a simple teaching example of how we might elect a favorite color by letting our clients vote for …
This article discusses how to create an extensible mechanism for linked drop downs.
The viewer will learn how to dynamically set the form action using jQuery.
The viewer will learn how to create and use a small PHP class to apply a watermark to an image. This video shows the viewer the setup for the PHP watermark as well as important coding language. Continue to Part 2 to learn the core code used in creat…

707 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question

Need Help in Real-Time?

Connect with top rated Experts

9 Experts available now in Live!

Get 1:1 Help Now