20. oktober 2007 - 22:24Der er
12 kommentarer og 1 løsning
Fatal error: Cannot redeclare class MySQLDB
HJÆLP! Hvorfor får jeg dette svar?
Jeg er ved at lave en tagwall på mit site, som jeg har taget ud fra mit nyhedes-system.
Men når jeg ligger filen over fra min gamle side, over på den nye, kommer den her fejl?
Fatal error: Cannot redeclare class MySQLDB
Hvorfor? ..
Her er nogen udklip fra den linje, & fil, fejlen ligger på:
class MySQLDB { var $connection; //The MySQL database connection var $num_active_users; //Number of active users viewing site var $num_active_guests; //Number of active guests viewing site var $num_members; //Number of signed-up users /* Note: call getNumMembers() to access $num_members! */
/* Class constructor */ function MySQLDB(){ /* Make connection to database */ $this->connection = mysql_connect(DB_SERVER, DB_USER, DB_PASS) or die(mysql_error()); mysql_select_db(DB_NAME, $this->connection) or die(mysql_error());
/** * Only query database to find out number of members * when getNumMembers() is called for the first time, * until then, default value set. */ $this->num_members = -1;
if(TRACK_VISITORS){ /* Calculate number of users at site */ $this->calcNumActiveUsers();
/* Calculate number of guests at site */ $this->calcNumActiveGuests(); }
Håber i kan hjælpe, spørg hvis i skal bruge mere info?
Denne side indeholder artikler med forskellige perspektiver på Identity & Access Management i private og offentlige organisationer. Artiklerne behandler aktuelle IAM-emner og leveres af producenter, rådgivere og implementeringspartnere.
Hvis ikke klassen MySQLDB allerede eksisterer, når du prøver at inkludere den, _kan_ du ikke få den fejl. Enten er det din kode, der allerede har inkluderet den eller også har du en centralmongolsk php-nisse kravlende rundt på din server :)
Prøv der, hvor du inkluderer klassen, at skrive dette i stedet:
$oMySQLDB = new MySQLDB(); var_dump($oMySQLDB);
Hvis den første linje smider en fejl, som siger, PHP ikke kan instantiere en ikke-eksisterende klasse, er klassen ikke allerede inkluderet. Hvis derimod, der udskrives et serialiseret objekt, er klassen allerede inkluderet.
Vi er foreløbig tre-fire stykker, der gerne vil vædde på det sidste :)
Jeg bekalger meget, men det havde noget at gøre med at jeg havde inkluderet en fil, som havde inkluderet den samme som jeg allerede var igang med at inkludere.
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.