PHPFixing
  • Privacy Policy
  • TOS
  • Ask Question
  • Contact Us
  • Home
  • PHP
  • Programming
  • SQL Injection
  • Web3.0

Monday, May 16, 2022

[FIXED] Why am I getting all these errors?

 May 16, 2022     easyphp, mysql, php     No comments   

Issue

Sorry if this seems pretty dumb but simple but I can't seem to figure out why I am getting these errors:

Warning: mysql_result() expects parameter 1 to be resource, boolean given in C:\Program Files (x86)\EasyPHP-5.3.9\www\Image Upload\func\user.func.php on line 25

Notice: Undefined index: user_id in C:\Program Files (x86)\EasyPHP-5.3.9\www\Image Upload\register.php on line 37

Here is the code for each file

user.func.php:

function user_exists($email){
$email = mysql_real_escape_string($email);
$query = mysql_query("SELECT COUNT(`user_id`) FROM `users` WHERE `email` = `$email`");
return (mysql_result($query, 0) == 1) ? true : false;
}

and here is register.php:

if (isset($_POST['register_email'], $_POST['register_name'], $_POST['register_password'])){
$register_email = $_POST['register_email'];
$register_name = $_POST['register_name'];
$register_password = $_POST['register_password'];

$errors = array();

if(empty($register_email) || empty($register_name) || empty($register_password)){
    $errors[] = 'All fields must be filled out';
} 
else{
        if(filter_var($register_email, FILTER_VALIDATE_EMAIL) === false){
            $errors[] = 'Email address not valid';
        }
        if(strlen($register_email) > 255 || strlen($register_name) > 35 || strlen($register_password) > 35){
            $errors[] = 'One or more fields contains too many characters';
        }
        if(user_exists($register_email) === true){
            $errors[] = 'That email has already been registered to another user';
        }
    }

if(!empty($errors)){
    foreach ($errors as $error){
        echo $error, '<br />';
    }
} else {
    $register = user_register($register_email, $register_name, $register_password);
    $SESSION['user_id'] = $register;
    echo $_SESSION['user_id'];
}

}

Thanks for any help! -TechGuy24


Solution

You're using backticks "`" on a value, so your query is failing, use single quotes '

$query = mysql_query("SELECT COUNT(`user_id`) FROM `users` WHERE `email` = '$email'");


Answered By - Musa
Answer Checked By - Katrina (PHPFixing Volunteer)
  • Share This:  
  •  Facebook
  •  Twitter
  •  Stumble
  •  Digg
Newer Post Older Post Home

0 Comments:

Post a Comment

Note: Only a member of this blog may post a comment.

Total Pageviews

Featured Post

Why Learn PHP Programming

Why Learn PHP Programming A widely-used open source scripting language PHP is one of the most popular programming languages in the world. It...

Subscribe To

Posts
Atom
Posts
Comments
Atom
Comments

Copyright © PHPFixing