PDA

View Full Version : حرفه ای: خطا PDOException در طراحی cms



mostafa272
جمعه 25 فروردین 1391, 12:18 عصر
با سلام

من دارم یه CMS طراحی می کنم و گام به گام با کتاب CMS design using PHP نوشته kae verens پیش میرم اما همون بخش اول به مشکل خوردم.تو آخر اون فصل که دوتا صفحه درست میکنه و می خواد دسترسی به اونها از طریق CMS رو نشون بده مقادیر رو از چند صفحه می گذرونه که یکیش basics.php هست تو اون صفحه این ارور رو میده:

Fatal error: Uncaught exception 'PDOException' with message 'SQLSTATE[28000] [1045] Access denied for user 'cmsuser'@'localhost' (using password: NO)' in C:\wamp\www\my_CMS\ww.incs\basics.php:12 Stack trace: #0 C:\wamp\www\my_CMS\ww.incs\basics.php(12): PDO->__construct('mysql:host=loca...', 'cmsuser', NULL) #1 C:\wamp\www\my_CMS\ww.incs\basics.php(19): dbInit() #2 C:\wamp\www\my_CMS\ww.incs\basics.php(25): dbQuery('select * from p...') #3 C:\wamp\www\my_CMS\ww.php_classes\page.php(25): dbRow('select * from p...') #4 C:\wamp\www\my_CMS\ww.php_classes\page.php(61): Page->__construct(1, 3) #5 C:\wamp\www\my_CMS\index.php(17): Page::getInstanceBySpecial(1) #6 {main} thrown in C:\wamp\www\my_CMS\ww.incs\basics.php on line 12

کد basics.php هم اینه:

<?php
session_start();
function __autoload($name) {
require $name . '.php';
}
function dbInit(){
if(isset($GLOBALS['db']))return $GLOBALS['db'];
global $DBVARS;
$db=new PDO('mysql:host='.$DBVARS['hostname']
.';dbname='.$DBVARS['db_name'],
$DBVARS['username'],
$DBVARS['password']);
$db->query('SET NAMES utf8');
$db->num_queries=0;
$GLOBALS['db']=$db;
return $db;
}
function dbQuery($query){
$db=dbInit();
$q=$db->query($query);
$db->num_queries++;
return $q;
}
function dbRow($query) {
$q = dbQuery($query);
return $q->fetch(PDO::FETCH_ASSOC);
}
define('SCRIPTBASE', $_SERVER['DOCUMENT_ROOT'].'/my_CMS/');
require SCRIPTBASE . 'ww.private/config.php';
if(!defined('CONFIG_FILE'))
define('CONFIG_FILE',SCRIPTBASE.'ww.private/config.php');
set_include_path(SCRIPTBASE.'ww.php_classes'
.PATH_SEPARATOR.get_include_path());

Reza1607
جمعه 25 فروردین 1391, 13:29 عصر
دوست عزيز شما يوزنيم و پسورد بانك اطلاعاتي رو اشتباه وارد كرديد