Mysql_fetch_array() expects parameter 1 to be

Fermé
Manones - 22 janv. 2012 à 01:43
 le père - 22 janv. 2012 à 23:50
Bonjour!
Je suis en train de créer un site internet permettant de proposer des films à des internautes en fonction du genre qu'ils ont choisi. Je suis en train d'écrire le code permettant à la page d'afficher une description du film qu'il a choisi, mais impossible j'ai l'erreur "mysql_fetch_array() expects parameter 1 to be resource, boolean given in D:\EasyPHP-5.3.8.0\www\gaynorproject\site\descriptionpage.php on line 30" qui ne fait que s'afficher et je ne sais plus quoi faire pour régler ça!

J'ai dans ma base de donnée movie :
-une table movie (movie_id, movie_name, synopsis, year, director_id, directorname)
-une table genre, une table directors et une table comments.

et voici mon code pour la page descriptionpage.php :
<html>
	<head>
		<link rel="stylesheet" href="style2.css" />
        <title>Go Movies</title>

<script language="JavaScript" type="text/javascript">
<!--

//-->
</script>
	</head>
	<body>
<?php
// on se connecte à MySQL
$db = mysql_connect('localhost', 'root', '');

// on sélectionne la base
mysql_select_db('movie',$db);

?>
		<p>
			<img src="images/logo.png" alt="logo" title="Go Movies"/>
		</p>
<?php

$id=$_GET['dirid'];

$query=mysql_query("SELECT * FROM movie WHERE synopsis,movie_name like '$id'");

while($r=mysql_fetch_array($query))
{
echo "<b>Movie name : </b>".$r["movie_name"]."<br>";
echo "<b>Synopsis : </b>".$r['synopsis']."<br>";
}
    
?>

		<div id="rss">
			<a href="rss.xml"><img src="images/rss_logo.png" alt="rss"/></a>
		</div>

	</body>
</html>



Je suis désespérée et je dois rendre ce projet pour dans trois jours, alors je vous remercie d'avance pour votre aide!!

1 réponse

Bonjour

Ton messsage signifie que tu as appelé mysql_fetch_array en lui passant en paramètre ($query) un boolean, alors qu'il faut lui fournir une ressource.
Ton $query provient d'un appel à mysql_query qui, normalement, rend une ressource sauf... quand il y a une erreur. Dans ce cas mysql_query rend false, c'est à dire un boolean.
Il y a un une erreur parce que ta requête est incorrecte. Je ne sais pas ce que veut dire
.. WHERE synopsis,movie_name like '$id'"
Que voulais-tu faire ?
.. WHERE CONCAT(synopsis,movie_name) like '$id'"
.. WHERE synopsis LIKE '$id' AND movie_name like '$id'"
.. WHERE synopsis LIKE '$id' OR movie_name like '$id'"
ou autre chose ?
0