Seite 1 von 2

header() geht nicht - Was könnte der Fehler sein?

Verfasst: 08.02.2010 16:12
von P7BB
Hallo,

ich habe in einer While-Schleife, die Datenbankeinträge ausliest, eine If-Abfrage. Diese ist immer nur ein einziges Mal erfolgreich... Wenn die If-Abfrage als erfolgreich ist, soll auf eine seite weitergeleitet werden, aber der header-befehl wird praktisch einfach ignoriert.

Code: Alles auswählen

  if($get_bikes->motorrad == $s_bike) {
   header('Location: show.php?id='.$get_bikes->id);
   echo "test";
  }
"test" wird ausgegeben, also müsste vorher ja eigentlich die header-funktion ausgeführt werden, oder nicht? Eine Textausgabe findet vorher definitiv NICHT statt. Gibt es noch weitere Möglichkeiten, warum die Funktion einfach ignoriert wird? Das ganze übrigens nur online... bei XAMPP funktioniert es.
Muss ich außer PHP nochwas aktiviert haben, damit das geht?

P7BB

Edit:
http://www.php.de/server-hosting-und-wo ... nicht.html
Derselbe Domain-Anbieter...
Edit2:
Es hat tatsächlich was mit united-domains zu tun. Da ich den Domain nicht selbst registriert habe, sondern jemand anderes, muss ich gleich nach dem kennwort fragen und dort bei der konfiguration mal rumgucken, was es da so gibt...
Außerdem ein anderes Problem:
Bei mir funktioniert die Homepage von der Darstellung her sowohl über den domain von united-domains, als auch über den domain von dem homepage-anbieter, aber bei jmd anderem funktioniert zumindest über united-domains die darstellung auch nciht... Wieso ist das so? Es sind keine Style-Probleme, sondern Bilder werden offensichtlich nciht geladen. Wir beide benutzen firefox...
Edit3:
Ok, also: Es liegt an der versteckten Weiterleitung. Meine Idee wäre, wenn man die Weiterleitung jetzt auf Frames umstellt, aber da ist die Frage, ob sich das nicht auf die Suchmaschienen auswirkt... Ist das so oder brauch ich keine Bedenken zu haben?

Re: header() geht nicht - Was könnte der Fehler sein?

Verfasst: 24.02.2010 09:29
von Frank1604
Es gibt nichts furchtbareres als eine Frame Weiterleitung, Suchmaschinen sehen das übrigens genauso.

Jetzt weiß ich natürlich nicht was für ein Domain Paket du da hast, warum du überhaupt eine Weiterleitung brauchst??

Wenn schon weiterleiten, dann am Besten direkt über die DNS Einträge, alles andere ist murks.

Re: header() geht nicht - Was könnte der Fehler sein?

Verfasst: 24.02.2010 16:10
von P7BB
Naja, der Domain ist zwar normalerweise beim hosting-paket dabei, aber es gab bereits einen domain (da die seite früher anderweitig benutzt wurde) und diesen haben wir dann entsprechend übernommen...
Ich mag die Frameweiterleitung auch nicht, aber eine direkte weiterleitung mag ich auch nicht, da die neue adresse eben ziemlich unschön aussieht... deshalb würde nur die versteckte weiterleitung funktionieren oder die frame-weiterleitung. da die versteckte weiterleitung aber eindeutig probleme mit header() hat, fällt das weg...

Re: header() geht nicht - Was könnte der Fehler sein?

Verfasst: 24.02.2010 16:13
von Frank1604
Nee, was ich meinte ist ne DNS-Wieterleitung. Das heisst, beim Hoster deiner Domain gibst du die IP-Adresse des Servers an, auf dem die Seite liegt. Damit definierst du praktisch das Ziel deiner Domain. Die steht dann natürlich auch oben in der Adressleiste.

Ich weiß allerdings nicht, ob das dein Hoster auch unterstützt.

Re: header() geht nicht - Was könnte der Fehler sein?

Verfasst: 24.02.2010 17:04
von P7BB
Frank1604 hat geschrieben:Nee, was ich meinte ist ne DNS-Wieterleitung. Das heisst, beim Hoster deiner Domain gibst du die IP-Adresse des Servers an, auf dem die Seite liegt. Damit definierst du praktisch das Ziel deiner Domain. Die steht dann natürlich auch oben in der Adressleiste.

Ich weiß allerdings nicht, ob das dein Hoster auch unterstützt.
Was meinst du mit "natürliche Adresse"? Du meinst die Adresse, über die ich meine Seite dann eben aufrufen kann (also nicht über den domain, sondern über den "hässlichen" pfad)? Das möchte ich eben nicht.

Re: header() geht nicht - Was könnte der Fehler sein?

Verfasst: 24.02.2010 19:27
von tas2580
Versuch mal

Code: Alles auswählen

    header("Status: 301 Permanently Moved");
    header("Location: http://www.example.com"); 
Das mögen die Suchmaschinen und sollte auf jeden Fall funktionieren.

Gruß Tobi

Re: header() geht nicht - Was könnte der Fehler sein?

Verfasst: 24.02.2010 19:53
von Frank1604
Das würde wieder die "hässliche Adresse" zum Vorschein bringen, was er ja nicht will. Deshalb müsste er entweder die Domain per DNS weiterleiten, oder eben diese Frame weiterleitung.

Re: header() geht nicht - Was könnte der Fehler sein?

Verfasst: 24.02.2010 21:02
von P7BB
um die ip von meiner hp rauszubekommen habe ich bei der windows-konsole mal "ping *adresse*" eingegeben, jedoch wird mir dort angezeigt, der host kann nicht gefunden werden. Die Startseite ist in der Tat auch noch E404, da die Homepage noch nicht offiziell online ist. liegt es daran? (bei dem pfad, den ich angegeben hab, gibt es eine index.php, die leitet aber auf eine nicht-existierende index.php in einem anderme verzeichnis um)
Wie bekomme ich sons tdie IP raus?

Re: header() geht nicht - Was könnte der Fehler sein?

Verfasst: 25.02.2010 19:57
von PCFreund
Mit "tracert adresse.de" verfolgst du die routen
Wenn du enter drückst steht
"Routenverfolgung zu adresse.de [123.456.789.000] über maximal XX Abschnitte:"
Das in [] ist die IP-Adresse ;)

Ne frage: hast du vor dem header(); noch irgendwelche ?><?php drinne also ich meinte so:

Code: Alles auswählen

<?php
//code
?>
<?php
header();
?>
dann musst du die ?><?php rausnehmen, und leerzeichen bzw. zeilenumbrüche vor dem <?php sind auch nicht richtig ...

Re: header() geht nicht - Was könnte der Fehler sein?

Verfasst: 25.02.2010 20:12
von P7BB
Wie gesagt, es liegt zu 100% an dem Domainhoster und nicht an meinem Script ;) Es erfolgt keine ausgabe vor dem header und php wird auch nicht "beendet" oder sowas... ;)