Fatal error: Cannot redeclare set_php_self() (previously declared in /

Shorty1968

Erfahrenes Mitglied
Der inhalt der TestShop Datei sieht nun so aus:

function_exists set_php_self()
{
if(!empty($_SERVER['SCRIPT_NAME']) && strpos($_SERVER['SCRIPT_NAME'], '.php') !== false) {
return $_SERVER['SCRIPT_NAME'];
} elseif(!empty($_SERVER['PHP_SELF']) && strpos($_SERVER['PHP_SELF'], '.php') !== false) {
$tmp = explode('.php',$_SERVER['PHP_SELF']);
return $tmp[0] .'.php';
}
die('ERROR: PHP_SELF');

Aber ein aufruf der seite geht nun nicht mehr.
 
B

ByeBye 284669

Auweia! Liest du auch mal die Doku und siehst du dir dort auch mal die Beispiele an?
PHP:
if (! function_exists('set_php_self'))
{
   function set_php_self()
   {
      if(!empty($_SERVER['SCRIPT_NAME']) && strpos($_SERVER['SCRIPT_NAME'], '.php') !== false) {
        return $_SERVER['SCRIPT_NAME'];
      } elseif(!empty($_SERVER['PHP_SELF']) && strpos($_SERVER['PHP_SELF'], '.php') !== false) {
        $tmp = explode('.php',$_SERVER['PHP_SELF']);
        return $tmp[0] .'.php';
      }
      die('ERROR: PHP_SELF');
   }
}
Und nochmal: das ist eine Krücke!!! Dein Problem liegt an einer anderen Stelle!!!

Was du da machst ist nicht ungefährlich. Wenn du dir deinen Shop zerschossen hast, dann viel Spaß. Ich hoffe, du hast eine gute Datensicherung.

Das ist bei dir ungefähr so: du weißt, was ein Schraubenschlüssel ist und bastelst deshalb an den Bremsen eines Autos rum!
 

Shorty1968

Erfahrenes Mitglied
Da es nur in den TestShop kommt sehe ich das nicht so eng, wen es den gehen würde.

Schwerwiegender Fehler : Kann set_php_self() (zuvor deklariert in /var/www/vhosts/schnaeppchenpiet.eu/test.schnaeppchenpiet.eu/inc/set_php_self.inc.php:17) in /var/www/vhosts/schnaeppchenpiet.eu nicht neu deklarieren /httpdocs/inc/set_php_self.inc.php in Zeile 15
 
B

ByeBye 284669

Ich glaube das jetzt nicht! Bist du wirklich so blind?

/var/www/vhosts/schnaeppchenpiet.eu/test.schnaeppchenpiet.eu/inc/set_php_self.inc.php
/var/www/vhosts/schnaeppchenpiet.eu/httpdocs/inc/set_php_self.inc.php

Da wird doch sowohl auf Dateien des Testshop und des normalen Shops zugegriffen. Das darf auf keinen Fall sein!

Zum letzten Mal: Dein Problem liegt an einer anderen Stelle!!!
 

basti1012

Erfahrenes Mitglied
@Shorty1968 kannst du mal erklären, was du davor hast?
Die Frage ist immer noch, warum der Code aus beiden Shops die self.inc.php Datei holt.
Wenn du im Testshop herumspielen willst, ist das vielleicht ok (wenn nur du Zugang hast), doch der Testshop sollte nicht die Dateien für den normalen Shop holen (andersrum auch nicht).
Die sollten eigentlich in keinen Zusammenhang stehen.

Nur wenn du versuchst beide Shops ( z. B. per include ) in einer Datei aufrufst (das würde dann wahrscheinlich auch die Fehler erklären).

Wie sieht der Code aus, der den Inhalt aus der set_php_self.inc.php aufruft?
Hast du mal einen Link, wo der Fehler zusehen ist.
 
Zuletzt bearbeitet:

Shorty1968

Erfahrenes Mitglied
Hallo basti,
kann es etwas damit zutun haben das der testshop auf der subdomain zum realen shop liegt,ich werde nun erst einmal alles neu machen das wird zu verwirrend.
 
B

ByeBye 284669

kann es etwas damit zutun haben das der testshop auf der subdomain zum realen shop liegt
Wenn du alles richtig gemacht hast, dann nicht. Ein Shop-System in eine Sub-Domain zu transferieren kann u.U. etwas aufwändiger sein als nur Dateien und Datenbank zu kopieren. In der Konfiguration können Pfade existieren, die dann angepasst werden müssen. Und das, so vermute ich, dürfte bei dir der Fall sein. Wo das alles der Fall sein kann (Konfig-Datei und/oder Datenbankeinträge), kann ich dir bei dem Shop auch nicht verraten.
 

basti1012

Erfahrenes Mitglied
Hallo basti,
kann es etwas damit zutun haben das der testshop auf der subdomain zum realen shop liegt,ich werde nun erst einmal alles neu machen das wird zu verwirrend.

Ich frage mal anders.
Du hast doch beide Shops schon länger laufen wenn ich mich richtig erinnere.
Da lief doch bis jetzt alles.
Du hast jetzt irgendwas geändert, bzw. du baust irgendwas, wo die Fehler jetzt herkommen.