Jump to content

[SOLVED] simple rating script errors Warning: mysql_num_rows(): supplied argument is not


farkewie

Recommended Posts

Hi have am new to php this is one of my first hand writen script its just a basic rating script, im getting some errors i cant work out, any help would be great. google says it may be because the script cant find the database but it is because it told me it couldnt find some colums, but when i got rid of the spelling mistakes im still getting errors.

 

below is my code and erors

<?php
$id = $_POST['id'];

//Grabing the details from the name table

$connection=mysql_connect("localhost","username", "password") or die("Unable to connect!"); /* change this! */ 

mysql_select_db("database") or die("Unable to select database!"); /* change this! */ 

$result = "SELECT * FROM name WHERE id='$id'";
$numrow = mysql_num_rows ($result);

// converting thenm into objects
$row = mysql_fetch_array($result);

$domain = GetHostByName($REMOTE_ADDR);
$submit_rating = $_POST['rate'];
$num_votes = $row["num_votes"];
$votes_total = $row["votes_total"];
$new_num_votes =  ($num_votes + 1);
$new_votes_total = ($votes_total + $submit_rating);
$rating = (new_votes_total / $new_num_votes);


$query2 = "UPDATE name SET `num_votes` = '$new_num_votes',
`votes_total` = '$new_votes_total',
`rating` = '$rating'" ;


$result2=mysql_query($query2) or die("Error in query:".mysql_error()); 
//if ($result) 
    //echo mysql_affected_rows()." row inserted into the database effectively."; 

//  CLOSE CONNECTION ---> 

header ("Location:".$_SERVER['HTTP_REFERER']." ");



mysql_close($connection); 
?>

 

 

errors:

Warning: mysql_num_rows(): supplied argument is not a valid MySQL result resource in /home/tyspicsc/public_html/posthate/rating_action.php on line 11

Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in /home/tyspicsc/public_html/posthate/rating_action.php on line 14

Warning: Cannot modify header information - headers already sent by (output started at /home/tyspicsc/public_html/posthate/rating_action.php:11) in /home/tyspicsc/public_html/posthate/rating_action.php on line 36

Change these lines:

<?php

$result = "SELECT * FROM name WHERE id='$id'";
$numrow = mysql_num_rows ($result);

// converting thenm into objects
$row = mysql_fetch_array($result);

?>

 

to this:

 

<?php

$result = "SELECT * FROM name WHERE id='$id'";
$result1 = mysql_query($result) or die (mysql_error());
$numrow = mysql_num_rows ($result1);

// converting thenm into objects
$row = mysql_fetch_array($result1);

?>

 

You also are using the header function inpropely, you have to use that before ANY out put to the screen.

Archived

This topic is now archived and is closed to further replies.

×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.