header() ?

Also ich habe ein Formular gemacht und wenn ich da ein Wort eintippe leitet es sofort zur Wikipedia Seite um.
In der normalen Datei ist das Formular:

[html]

Wikipedia
[/html]und dann noch die Datei die es auswertet

[php]…

<?php $suchwort=$HTTP_POST_VARS['suchwort']; header("Location: http://de.wikipedia.org/wiki/" . $suchwort .); ?>

…[/php]aber wenn ich auf Wikipedia Suche klicke kommt das:

Warning: Cannot modify header information - headers already sent by (output started at D:.…\checkwiki.php:8) in D:.…\checkwiki.php on line 46

also zeile 46 ist die mit dem header()

wo liegt da der fehler? ich finde nämlich keinen…

du darfst keine ausgaben machen bevor du den header sendest also fängst du dein script am besten so an

[php]<?php

if($_POST[‚send‘]){
$suchwort=$_POST[‚suchuchwort‘];
header(„Location: http://www.domain.de/pfad/“.$suchwort);
}

// hier dan das formular ^[1]


  1. /php ↩︎

diesmal war die seite einfach leer, is vielleicht ein fehler in dem formular?

[php]<?php // suche.php

if($_POST[‚send‘]){
$suchwort=$_POST[‚suchwort‘];
header(„Location: http://www.domain.de/pfad/“.$suchwort);
}

?>

[/php]

so müsste es gehen habs aber nicht getestet

an dem skript das du geschrieben hast is ja garnichts anders wies momentan bei mir ist :confused:

Doch.
Denn wenn du erst einen Text ausgibst kann kein Header mehr versendet werden. Du gibst allerdings erst das Formular aus. Dadurch wird der Header vor deiner Weiterleitung versendet.
Gruß

aber das formular is doch in einer ganz anderen datei als der weiterleitungs-code.

die datei checkwiki.php besteht nur aus

[PHP]<?php if($_POST['send']){ $suchwort=$_POST['suchuchwort']; header("Location: http://de.wikipedia.org/wiki/".$suchwort); } ?>[/PHP]

sonst garnichts

der HEader muss aus einer kompletten URL bestehen.
Wenn ich ein Suchwort eingebe zum Beispiel:
hallo
dann will deiner mit weiterleiten:
header("Location: http://de.wikipedia.org/wiki/hallo );
Dies ist ist aber keine vollständige Dmain: mach es vll so:
header(„Location: http://de.wikipedia.org/wiki/„.$suchwort.“.html“);

ja aber mit .html funktioniert das ja dann garnicht mehr. kopier mal http://de.wikipedia.org/wiki/hallo in deine adressleiste und http://de.wikipedia.org/wiki/hallo .html mit html das funktioniert nich :confused:

hmm ich hab das jetzt ma ne halbe Stunde ausprobiert und es klappt net…
[php]
header(" Location: http://de.wikipedia.org/w/index.php?title=Special%3ASearch&search=„.$suchwort.“&fulltext=Suche");
[/php]Na ja so kommste zumindest in die Suche…

ich hab jetzt mal das in die datei checkwiki.php eingearbeitet ganz oben:

$suchwort=$_POST[‚suchuchwort‘];
echo $suchwort;
echo „test“;

aber angezeigt wird nur test
das problem liegt also anscheint auch bei der übermittlung von formular zu skript… aber ich hab eben auch noch mal alles genau angeschaut und ich weiß net woran es liegen könnte…