php/mysql account activation

前端 未结 3 870
一整个雨季
一整个雨季 2021-01-29 10:43

Everything in my new website is working just fine, except that I can\'t get this piece of code to work:

$query = mysql_query(\"SELECT * FROM members WHERE userem         


        
相关标签:
3条回答
  • 2021-01-29 10:46

    The error message suggests that your query is invalid:

    $query = mysql_query("SELECT * FROM members WHERE useremail = '$useremail'");
    

    Are you doing any input sanitization for $usermail?

    Are you sure your database contains that table and that the table contains that column.

    Try doing a little debugging:

    $query = "SELECT * FROM members WHERE useremail = '$useremail'";
    echo $query;
    

    and try running the content of $query directly in your database (from phpMyAdmin or something).

    0 讨论(0)
  • 2021-01-29 11:01

    Everything in my new website is working just fine

    ...until something goes wrong.

    You have to learn how to handle errors.

    run all your queries at least this way.

    $query  = "SELECT * FROM members WHERE useremail = '$useremail'"
    $result = mysql_query() or trigger_error(mysql_error()." ".$query);
    

    and you always be notified of any error and it's reason

    or implement any other way of error notifications, employing mysql_error() function which is the only thing in the world that can tell you where the actual problem is.

    0 讨论(0)
  • 2021-01-29 11:11

    Change your first line to:

    $query = mysql_query("SELECT * FROM members WHERE useremail = '$useremail'") or die(mysql_error());
    

    And it will spit out the mysql error that is causing the Warning =)

    You should not be presuming the call to mysql_query returns a valid result; It's good practice to always test the result first, e.g.

    $r=mysql_query("SELECT * YADYADA");
    if($r && mysql_num_rows($r)>0){
      $row=mysql_fetch_assoc($r);
    }else{
      //Uh oh, something's not right~~~ throw an exception maybe?
    }
    
    0 讨论(0)
提交回复
热议问题