2014-12-05 196 views
-3

我想设置一个mysql数据库来捕获来自html表单的信息,但是当我测试它时,会返回下面的错误。该文件与数据库位于同一台服务器上。我的php位于错误之下。为什么我收到这个错误?

警告:mysql_connect()[function.mysql-connect]:拒绝用户访问inmoti6_ted_seminar'@'localhost'(使用password:YES)在/home/westcl5/public_html/drjseminars.com/thankyou.php上线92 无法连接:拒绝访问用户inmoti6_ted_seminar'@“localhost”的(使用密码:YES)

if($_POST) 
     { 
      $con = mysql_connect("localhost","inmoti6_ted_seminar","Polarbear5"); 

      if (!$con) 
      { 
      die('Could not connect: ' . mysql_error()); 
      } 

      mysql_select_db("inmoti6_westcl5_ted_sem", $con); 

      $users_firstName = $_POST['first_name']; 
      $users_lastName = $_POST['last_name']; 
      $users_street = $_POST['street']; 
      $users_street2 = $_POST['street2']; 
      $users_city = $_POST['city']; 
      $users_state = $_POST['state']; 
      $users_zip = $_POST['zip']; 
      $users_country = $_POST['country']; 
      $users_email = $_POST['email']; 
      $users_telephone = $_POST['telephone']; 
      $users_practice = $_POST['practice']; 

      $users_firstName = mysql_real_escape_string($users_firstName); 
      $users_lastName = mysql_real_escape_string($users_lastName); 
      $users_street = mysql_real_escape_string($users_street); 
      $users_street2 = mysql_real_escape_string($users_street2); 
      $users_city = mysql_real_escape_string($users_city); 
      $users_state = mysql_real_escape_string($users_state); 
      $users_zip = mysql_real_escape_string($users_zip); 
      $users_country = mysql_real_escape_string($users_country); 
      $users_email = mysql_real_escape_string($users_email); 
      $users_telephone = mysql_real_escape_string($users_telephone); 
      $users_practice = mysql_real_escape_string($users_practice); 

      $query = " 
      INSERT INTO `westcl5_ted_sem`.`ted_seminar` (`First Name`, `Last Name`, `E-mail`, `Phone #`, `Street Address`, `Street Address 2`, `City`, `State`, `Zip Code`, `Country`, `Practice`) VALUES ('$users_firstName', '$users_lastName', '$users_email', '$users_telephone', '$users_street', '$users_street2', '$users_city', '$users_state', '$users_zip', '$users_country', '$users_practice');"; 

      mysql_query($query); 

      mysql_close($con); 
     } 
+1

看来你的数据库用户没有足够的权限,给你的用户所需的权限 – Adeel 2014-12-05 06:20:17

+1

而且还注意到,'mysql_ *'功能已被弃用。停止使用它们,因为它不再安全。看看'PDO'或'MySQLi' :) – Darren 2014-12-05 06:23:12

回答

0

问题是与您的密码这是不匹配的。尝试defulat $ con = mysql_connect(“localhost”,'root','');而不是 $ con = mysql_connect(“localhost”,“inmoti6_ted_seminar”,“Polarbear5”);

虽然在XAMPP上工作,但我也收到了这个错误,但通过使用上面提到的那条线来解决我的问题。

0

您将需要授予inmoti6_ted_seminar用户权限。以root身份登录到mysql服务器并执行以下SQL,您当然可以设置他们拥有的权限,但我认为您只需要INSERT

CREATE USER 'inmoti6_ted_seminar'@'localhost' IDENTIFIED BY 'Polarbear5'; 
GRANT INSERT ON inmoti6_westcl5_ted_sem.* TO 'inmoti6_ted_seminar'@'localhost';