0

I'm having a problem connecting to Sql Workbench using pdo. Shows the following error, eve though I've tried every way to connect.

Getting an error:

SQLSTATE[HY000] [1045] Access denied for user 'root'@'localhost' (using password: NO)

<?php
session_start();
try {
$con = new PDO ("mysql:host=localhost;dbname=users",'root','');
if(isset($_POST['signup'])){
    $username = $_POST['username'];
    $email = $_POST['email'];
    $password = $_POST['password'];
    $fname = $_POST['fname'];
    $lname = $_POST['lname'];
    $city = $_POST['city'];

    $insert = $con->prepare("INSERT INTO users1(username,email,password,fname,lname,city)
            values(:username, :email, :password, :fname, :lname, :city)
            ");
    $insert->bindParam (':username',$username);
    $insert->bindParam (':email',$email);
    $insert->bindParam (':password',$password);
    $insert->bindParam (':fname',$fname);
    $insert->bindParam (':lname',$lname);
    $insert->bindParam (':city',$city);
    $insert->execute();
}elseif (isset($_POST['signin'])){
    $username = $_POST['username'];
    $password = $_POST['password'];

    $select = $con->prepare("SELECT*FROM users1 where username='$username' and password='$password'");
    $select->setFetchMode(PDO::FETCH_ASSOC);
    $select->execute();
    $data=$select->fetch();
    if($data['username']!=$username and $data['password']!=$password)
    {
        echo "Invalid username or Password";
    }
    elseif($data['username']==$username and $data['password']==$password)
    {
        $_SESSION['username']=$data['username'];
        $_SESSION['email']=$data['email'];
        $_SESSION['fname']=$data['fname'];
        $_SESSION['lname']=$data['lname'];

        header("location:profile.php");
    }
     }
}
catch (PDOException $e) { 
      echo "Error: ". $e -> getMessage();
}?>
Au Nguyen
  • 655
  • 4
  • 12
Matt
  • 23
  • 6

2 Answers2

3

If you don't know the password, you can update that by using this command:

UPDATE mysql.user SET Password=PASSWORD('MyNewPass') WHERE User='root';

//then connection will be:

$con = new PDO ("mysql:host=localhost;dbname=users",'root','MyNewPass');

Thanks,

SAVe
  • 814
  • 6
  • 22
0

i think it asking for password

 $con = new PDO ("mysql:host=localhost;dbname=users",'root','your_password');