You are not logged in.

  • Login

Dear visitor, welcome to Coder Forum. If this is your first visit here, please read the Help. It explains in detail how this page works. To use all features of this page, you should consider registering. Please use the registration form, to register here or read more information about the registration process. If you are already registered, please login here.

1

Friday, October 9th 2009, 12:48pm

Problem mit: Cannot redeclare...

Hallo zusammen,

Ich brauch mal wieder eure Hilfe.
Folgendes Problem:
Ich versuche meine Datenbankverbindungen anhand eines Includes aufzubauen.

Hier mal die Funktion in der function.php

Source code

1
2
3
4
5
6
7
function log( )
  {
      $db = @new mysqli('localhost', 'root', 'supergeheim', 'datenbank');
      return $db();
	  
  
  }


Danach binde ich die function.php ein und versuche anschließend die Funktion log() aufzurufen.

Source code

1
2
include("function.php");
$db = log( );


Wenn ich jetzt mein Skript aufrufe, heißt es immer

Fatal error: Cannot redeclare log() in C:\xampp\htdocs\Admin\function.php on line 69

Auch habe ich es schon mit include_once() und include_require versucht.

Ich hoffe ihr könnt mir helfen.

gruß
trublu

2

Friday, October 9th 2009, 12:53pm

Ich nehm mal an, dass das eine geschütze PHP-Funktion ist, die du nicht überschreiben kannst.

http://de3.php.net/manual/de/function.log.php

3

Friday, October 9th 2009, 1:21pm

Wie soll ich das verstehen?
Die function.php hab ich ja selbst geschrieben.

Ich will ja einfach die Funktion aufrufen und als Ergebnis die $db erhalten.

gruß
trublu

4

Friday, October 9th 2009, 1:23pm

Die Funktion heißt aber gleich, wie die gelinkte Funktion. Wenn die jetzt als "final" deklariert ist, kannst du deine Funktion nicht so nennen wie die PHP-Funktion, da sie ja sonst überschrieben wird. Wenn du deine Funktion umbenennst, sollte es keine Probleme geben.

5

Friday, October 9th 2009, 1:36pm

Nö, sollte eigentlich kein Problem darstellen.
In der function.php sind schon mehrere Funktionen drin. Man muss halt dazu sagen, dass die anderen Funktionen nur false oder true zurück geben. Diese Funktion soll ja die $db zurück geben.

Ich bin schon am verzweifeln.

6

Friday, October 9th 2009, 1:51pm

Quoted

Nö, sollte eigentlich kein Problem darstellen.


Auch wenn du es mir nicht glauben willst: Es geht nicht! Und wenn du deine Funktion log() nicht umbennenst wirste da noch unendlich dran hängen...

7

Friday, October 9th 2009, 2:01pm

hehe du bist ja lustig :) Fragst nach Hilfe von wenn du dann die vermeindlich richtige Antwort bekommst, sagste "nö" :thumbsup:

Weißt du denn was BennyBunny mit "überschreiben" meint?

8

Friday, October 9th 2009, 2:04pm

SUPER! Danke für deine Hilfe und deine Geduld :thumbsup:

Sag doch gleich, dass ich einfach log umbenennen muss ;)

edit: Ja natürlich weiß ich was er mit überschreiben meint :rolleyes: aber ich hab da irgendwas falsch verstanden
Aber jetzt ist das Rätsel gelöst und bin wieder ein Stück schlauer geworden :D

gruß
trublu

Social bookmarks