php weiterleitung
lima-city → Forum → Programmiersprachen → PHP, MySQL & .htaccess
anhang
ausgabe
betreff
code
dank
datei
dieb
email
funktionieren
header
http
kontakt
kram
mime
multi
nachricht
teil
text
transfer
type
-
heyho schon wieder ich
also ich hab jetz alles hinbekommen mit dem kontaktformular .. nur wenn man das abschickt dann kommt da son text : vielen danke bla bla -> hab ich ja selber so eingestellt xD .. nur ich will das nich ich will das man stattdessen weitergeleitet wird .. kann mir da jemand helfen ? o_O...
das ganze is zu finden hier : http://dieb.lima-city.de/kontakt.php
und hier is nochma das script :
EDIT:
neues sript ist im anderen beitrag von mir ;)
Beitrag geändert: 11.11.2008 15:32:49 von dieb -
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage
-
echo"Vielen Danke fuer Deine Mail!";
->
echo"<meta http-equiv=refresh content='1; URL=*'>";
* = URL -
haja genau das was ich gesucht hab danke =D
jetz wieder n andres problem .. ich hab das da jetz reingemacht nur jetz is ein teil vom script auf der seite zu sehen .. das is natürlich nich so gut .. hier :
http://dieb.lima-city.de/kontakt.php
da sieht man das hier :
"; } } else { ?>
-
haja genau das was ich gesucht hab danke =D
jetz wieder n andres problem .. ich hab das da jetz reingemacht nur jetz is ein teil vom script auf der seite zu sehen .. das is natürlich nich so gut .. hier :
http://dieb.lima-city.de/kontakt.php
da sieht man das hier :
"; } } else { ?>
Wie währe es mit aktuellem Quellcode?
P.S. ich persöhnlich bevorzuge bei längeren Quelltexten http://pastebin.com -
Sag mal, kannst du mir erklären warum du in deinem Quelltext mehrmals html, body und head öffnest? Das könnte vielleicht die Lösung sein auf die Frage warum man nicht nur ""; } } else { ?> " auf deiner Website sieht, sondern auch deinen kompletten phpsource wenn man sich den Quelltext ansieht?
-
Sag mal, kannst du mir erklären warum du in deinem Quelltext mehrmals html, body und head öffnest? Das könnte vielleicht die Lösung sein auf die Frage warum man nicht nur ""; } } else { ?> " auf deiner Website sieht, sondern auch deinen kompletten phpsource wenn man sich den Quelltext ansieht?
mach ich doch ganich o: oder ? o_O
also ich seh da nur einmal body und head geöffnet o: [ganz oben]
ahh warum sieht man das alles im quelltext .. das is mir noch garnicht aufgefallen o:
hier is der quelltext nochmal...
<html>
<head>
<title>Kontaktformular</title>
</head>
<body>
<?php
$Empfaenger = "dieb1@live.de";
if($_REQUEST['Send'])
{
if(empty($_REQUEST['Name']) || empty($_REQUEST['Email']) || empty($_REQUEST['Nachricht']))
{
echo"Bitte geh zurueck und fuell alle Felder aus!";
}
else
{
$Mailbetreff = "Kontakt: ";
$Mailbetreff .= $_REQUEST['Betreff'];
$Trenner = md5(uniqid(time()));
$Header = "From: ".$_REQUEST['Email'];
$Header .= "\n";
$Header .= "MIME-Version: 1.0";
$Header .= "\n";
$Header .= "Content-Type: multipart/mixed; boundary=$Trenner";
$Header .= "\n\n";
$Header .= "This is a multi-part message in MIME format";
$Header .= "\n";
$Header .= "--$Trenner";
$Header .= "\n";
$Header .= "Content-Type: text/plain";
$Header .= "\n";
$Header .= "Content-Transfer-Encoding: 8bit";
$Header .= "\n\n";
$Header .= "Sie haben folgende Nachricht erhalten: \n\n";
while(list($Formularfeld, $Wert)=each($_REQUEST))
{
if($Formularfeld!="Send" && $Formularfeld!="Anhang")
{
$Header .= $Formularfeld.": ".$Wert."\n";
}
}
$Header .= "\nDatum/Zeit: ";
$Header .= date("d.m.Y H:i:s");
$Header .= "\n";
$Header .= "--$Trenner";
$Header .= "\n";
$Header .= "Content-Type: ";
$Header .= $_FILES['Anhang']['type'];
$Header .= "; name=";
$Header .= $_FILES['Anhang']['name'];
$Header .= "\n";
$Header .= "Content-Transfer-Encoding: base64";
$Header .= "\n";
$Header .= "Content-Disposition: attachment; filename=";
$Header .= $_FILES['Anhang']['name'];
$Header .= "\n\n";
$Dateiinhalt = fread(fopen($_FILES['Anhang']['tmp_name'], "r"), $_FILES['Anhang']['size']);
$Header .= chunk_split(base64_encode($Dateiinhalt));
$Header .= "\n";
$Header .= "--$Trenner--";
mail($Empfaenger, $Mailbetreff, "", $Header);
echo"<meta http-equiv=refresh content='1; URL=http://dieb.lima-city.de'>";
}
}
else
{
?>
<table border="0" cellpadding="1" cellspacing="2">
<form action="<?php echo$_SERVER['PHP_SELF']; ?>" enctype="multipart/form-data" method="post">
<tr>
<td>Name:</td>
<td><input name="Name" size="20" type="text"></td>
</tr>
<tr>
<td>eMail:</td>
<td><input name="Email" size="20" type="text"></td>
</tr>
<tr>
<td>Betreff:</td>
<td><select name="Betreff" size="1"><option>Hilfe</option><option>Kritik</option><option>Werbung</option></select></td>
</tr>
<tr>
<td>Nachricht:</td>
<td><textarea cols="25" name="Nachricht" rows="5"></textarea></td>
</tr>
<tr>
<td>Anhang:</td>
<td><input name="Anhang" size="20" type="file"></td>
</tr>
<tr>
<td align="center" colspan="2"><input name="Send" type="submit" value="Abschicken"> <input name="Reset" type="reset" value="Loeschen"></td>
</tr>
</form>
</table>
<?php
}
?>
</body>
</html> -
echo"<meta http-equiv=refresh content='1; URL=http://dieb.lima-city.de'>";
nach echo kommt ne Lücke! -
echo"<meta http-equiv=refresh content='1; URL=http://dieb.lima-city.de'>";
nach echo kommt ne Lücke!
das macht überhaupt kein unterschied
-
ich hab jetz echt alles versucht was mir eingefallen ist aber es klappt iwie nich o:
wenn man den quelltext aufruft sieht man das php script und die eine zeile des scriptes erscheint sogar auf der normalen seite >_<
http://dieb.lima-city.de/kontakt.php
mittlerweile jemand ne idee -
wie wäre es wenn du eine PHP-Weiterleitung benutzt???
ich hab es schon eingefügt (Zeile 66)
<html> <head> <title>Kontaktformular</title> </head> <body> <?php $Empfaenger = "dieb1@live.de"; if($_REQUEST['Send']) { if(empty($_REQUEST['Name']) || empty($_REQUEST['Email']) || empty($_REQUEST['Nachricht'])) { echo"Bitte geh zurueck und fuell alle Felder aus!"; } else { $Mailbetreff = "Kontakt: "; $Mailbetreff .= $_REQUEST['Betreff']; $Trenner = md5(uniqid(time())); $Header = "From: ".$_REQUEST['Email']; $Header .= "n"; $Header .= "MIME-Version: 1.0"; $Header .= "n"; $Header .= "Content-Type: multipart/mixed; boundary=$Trenner"; $Header .= "nn"; $Header .= "This is a multi-part message in MIME format"; $Header .= "n"; $Header .= "--$Trenner"; $Header .= "n"; $Header .= "Content-Type: text/plain"; $Header .= "n"; $Header .= "Content-Transfer-Encoding: 8bit"; $Header .= "nn"; $Header .= "Sie haben folgende Nachricht erhalten: nn"; while(list($Formularfeld, $Wert)=each($_REQUEST)) { if($Formularfeld!="Send" && $Formularfeld!="Anhang" { $Header .= $Formularfeld.": ".$Wert."n"; } } $Header .= "nDatum/Zeit: "; $Header .= date("d.m.Y H:i:s" ; $Header .= "n"; $Header .= "--$Trenner"; $Header .= "n"; $Header .= "Content-Type: "; $Header .= $_FILES['Anhang']['type']; $Header .= "; name="; $Header .= $_FILES['Anhang']['name']; $Header .= "n"; $Header .= "Content-Transfer-Encoding: base64"; $Header .= "n"; $Header .= "Content-Disposition: attachment; filename="; $Header .= $_FILES['Anhang']['name']; $Header .= "nn"; $Dateiinhalt = fread(fopen($_FILES['Anhang']['tmp_name'], "r" , $_FILES['Anhang']['size']); $Header .= chunk_split(base64_encode($Dateiinhalt)); $Header .= "n"; $Header .= "--$Trenner--"; mail($Empfaenger, $Mailbetreff, "", $Header); header("Location: http://dieb.lima-city.de/"); } } else { ?> <table border="0" cellpadding="1" cellspacing="2"> <form action="<?php echo$_SERVER['PHP_SELF']; ?>" enctype="multipart/form-data" method="post"> <tr> <td>Name:</td> <td><input name="Name" size="20" type="text"></td> </tr> <tr> <td>eMail:</td> <td><input name="Email" size="20" type="text"></td> </tr> <tr> <td>Betreff:</td> <td><select name="Betreff" size="1"><option>Hilfe</option><option>Kritik</option><option>Werbung</option></select></td> </tr> <tr> <td>Nachricht:</td> <td><textarea cols="25" name="Nachricht" rows="5"></textarea></td> </tr> <tr> <td>Anhang:</td> <td><input name="Anhang" size="20" type="file"></td> </tr> <tr> <td align="center" colspan="2"><input name="Send" type="submit" value="Abschicken"> <input name="Reset" type="reset" value="Loeschen"></td> </tr> </form> </table> <?php } ?> </body> </html>
-
hui danke!! :D
:D:D -
Freu Dich nicht zu früh, das wird nicht funktionieren. Header() muss aufgerufen werden, bevor irgendeine andere Ausgabe stattfindet - der ganze HTML-Kram müsste also unter den PHP-Teil kommen.
-
Header('Location: datei.php');
Beitrag geändert: 12.11.2008 16:24:23 von crackcheck -
Freu Dich nicht zu früh, das wird nicht funktionieren. Header() muss aufgerufen werden, bevor irgendeine andere Ausgabe stattfindet - der ganze HTML-Kram müsste also unter den PHP-Teil kommen.
hast recht xD
funktioniert nich >.<
die mail kommt an aber man wird nich weitergeleitet .. stattdessen gibts nen fehler -.- -
Lesen hilft:
Header() muss aufgerufen werden, bevor irgendeine andere Ausgabe stattfindet - der ganze HTML-Kram müsste also unter den PHP-Teil kommen.
Kein "<html>", kein "<head>", kein "echo 'irgendwas';".
Beitrag geändert: 13.11.2008 13:06:47 von tavern -
Header('Location: datei.php');
Beitrag geändert: 12.11.2008 16:24:23 von crackcheck
Man sollte es lieber so machen:
<?php header('Location: datei.php'); exit(); ?>
Beitrag geändert: 13.11.2008 13:06:43 von moritzpeuser -
Und wenn man das Ganze komplett standardkonform haben will: mit absoluter URI ;)
<?php header('Location: http://www.domain.de/datei.php'); exit(); ?>
Btw: Damit dieb was Schönes zum Nachlesen hat :D: http://de.php.net/header
-
Entschuldigt bitte, dass ich einfach so mit reinquatsch...
hab nur ne kurze Frage:
Für ne ganz normale Umleitung auf ne andere Seite, reichts da wenn ich im texteditor ne neue Datei anlege mit folgendem Inhalt:
"echo"<meta http-equiv=refresh content='1; URL=http://blabla'>" ?
Vielen Dank im Vorraus ! -
Für ne ganz normale Umleitung auf ne andere Seite, reichts da wenn ich im texteditor ne neue Datei anlege mit folgendem Inhalt:
"echo"<meta http-equiv=refresh content='1; URL=http://blabla'>" ?
das musst du dann doch einbinden auf der seite von der weitergeleitet werden soll ..
und die txtdatei musst du zu ner html oder php datei machen o:
ich brauch übrigens keine hilfe mehr :D
ich habs hinbekommen und mirs aufgefallen die tipps hier ham mich nich weitergebracht trotzdem danke :P
Beitrag geändert: 14.11.2008 14:58:47 von dieb -
Freu Dich nicht zu früh, das wird nicht funktionieren. Header() muss aufgerufen werden, bevor irgendeine andere Ausgabe stattfindet - der ganze HTML-Kram müsste also unter den PHP-Teil kommen.
Geht auch anders: Einfach mit Puffer arbeiten, sieht so aus:
<?php ob_start(); //Initialisieren des PHP-Puffers //... Alle möglichen Quelltexte, echo, html, was weiß ich ;) header($parameter); //... Noch mehr Quelltexte... ob_end_flush(); //Leeren des Puffers ?>
-
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage