2013-01-06 2 views
0

다중 소유가 적합하지 않은 애플리케이션을 개발 중입니다. 그래서 내 계획은 각 고객 계정마다 다른 MySQL 데이터베이스와 사용자를 생성하는 것입니다. 문제가 발생했습니다. 내 코드가 잘못되었다는 것을 알 수 있다면 오류가 발생하지 않지만 데이터베이스/사용자가 추가되지 않습니다..PHP - MySQL 데이터베이스 및 사용자 코드 생성이 작동하지 않습니다.

$dsn = "mysql:host=localhost"; 
$pdo = new PDO($dsn,"REMOVED","REMOVED"); // I removed the login. 

$username = 'testing'; 
$password = 'password'; 
$dbname = 'test_table'; 

//Creation of user 
$STH = $pdo->prepare("CREATE USER `:username` @'%' IDENTIFIED BY `:password`;"); 
$STH->execute(array(':username' => $username, ':password' => $password)); 

//Creation of database "new_db" 
$STH = $pdo->prepare("CREATE DATABASE `:dbname`;"); 
$STH->execute(array(':dbname' => $dbname)); 

//Adding all privileges on our newly created database 
$STH = $pdo->prepare("GRANT ALL PRIVILEGES on `:dbname`.* TO `:username`@'%';"); 
$STH->execute(array(':dbname' => $dbname,':username' => $username)); 
+1

"삭제 된"사용자에게 USER, CREATE DATABASE, GRANT 작업을 만들 수있는 권한이 있습니까? – kirugan

+0

cPanel이 생성 한 사용자를 사용하고 있습니다.이 사용자에게 권한이 있다고 확신합니다. – cantaffordretail

+0

스 니펫에 오류 테스트/처리 코드가 표시되지 않습니다. 올바르게 수행되는지 확인하십시오. – fvu

답변

1

당신이 cPanel을 사용하고 있다고 말한 것으로 나타났습니다. phpMyAdmin을 확인하여 사용자를 만들 수 있는지 확인하십시오. 탭을 사용할 수 있으면 코드가 예상대로 작동합니다. 그렇다면 phpMyAdmin config.inc.php 파일에서 구성 옵션을 확인할 수 있습니다. 문제가 cPanel 또는 phpMyAdmin에 있는지 확실하지 않습니다. 코드에 관해서는 Windows에서 실행되는 XAMPP에서 100 % 작동하므로 문제는 다른 곳에 있습니다. 미안하지만 확실한 답을주지 못했습니다!

+0

코드 작동에 대해 알려 주셔서 감사합니다. 사용 권한 문제를 검토하기 시작합니다. – cantaffordretail

관련 문제