Geltos
5. Dezember 2006 um 17:01
1
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]
[/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…
system
5. Dezember 2006 um 17:06
2
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 ^
Geltos
5. Dezember 2006 um 17:13
3
diesmal war die seite einfach leer, is vielleicht ein fehler in dem formular?
system
5. Dezember 2006 um 17:31
4
[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
Geltos
5. Dezember 2006 um 17:43
5
an dem skript das du geschrieben hast is ja garnichts anders wies momentan bei mir ist
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ß
Geltos
5. Dezember 2006 um 18:43
7
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 “);
Geltos
5. Dezember 2006 um 18:52
9
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
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…
Geltos
5. Dezember 2006 um 21:00
11
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…