Internet Explorer stellt PHP Formular falsch dar
lima-city → Forum → Programmiersprachen → PHP, MySQL & .htaccess
anhang
array
code
codierung
datei
dateiname
email
format
forum
funktion
header
http
image
info
lese
mime
text
transfer
typ
type
-
Hi ! Folgendes Problem, wenn ich auf meine Page http://www.buttonking.at/Eigeneidee.html gehe, wird das eingebettete PHP File im Internetexpl. mit Weißem Hintergrund angezeigt ! Sonst (frfx, chrome) nicht ! Wisst ihr woran das liegt ?
Eingebettet (Diese Farbe sollte es sein ! ("#FFA802"):
<th height="72" bgcolor="#FFA802" scope="row"><iframe src="http://button4vienna.lima-city.de/emailattachment.php" width="540" height="560" frameborder="0" scrolling="no">emailattachment</iframe> </th>
PHP Formular:
<?php /* EMAIL-ANHANG VERSENDEN (05/2000) * * ==================================== * * copyright (c) 2000 by Kristof Hamann * * published @ http://www.php3-forum.de */ /* Hier wird die Schriftart definiert, die anvielen Stellen verwendet wird */ $FONT = "<FONT SIZE=2 FACE=\"Verdana, Arial, Helvetica\">"; /* Das Array $contenttypes dient zur identifizierung des MIME-Typs des Anhanges. Es beinhaltet den MIME-Typ, die Codierung und eine Beschreibung dazu. Die Codierung ist hierbei sehr wichtig, da binaere Daten im base64-Format versendet werden muessen (siehe http://www.php3-forum.de/mime_mail.htm) */ $contenttypes = array( "text/plain" => array("encoding"=>"8bit" ,"info"=>"purer Text"), "text/html" => array("encoding"=>"8bit" ,"info"=>"HTML-Dokument"), "image/gif" => array("encoding"=>"base64","info"=>"Bild: GIF"), "image/jpeg" => array("encoding"=>"base64","info"=>"Bild: JPEG"), "image/png" => array("encoding"=>"base64","info"=>"Bild: PNG"), "application/x-zip-compressed" => array("encoding"=>"base64","info"=>"Komprimiert: ZIP"), "application/x-gzip" => array("encoding"=>"base64","info"=>"Komprimiert: GZ"), "application/x-tar" => array("encoding"=>"base64","info"=>"Komprimiert: TAR") ); ?> <!-- Quellcode vom PHP-Beispiel: http://www.php3-forum.de/ --> <HTML> <HEAD> <TITLE>buttons</TITLE> <style type="text/css"> <!-- .dd { color: #FFA802; } .ff { text-align: center; } --> </style> </HEAD> <BODY class="ff"> <?php echo $FONT; /* pruefe, ob ein Absender und ein Mail-Inhalt eingegeben wurde */ if($von && $mail_content) { /* Beginne den Mail-Header mit der Definition des Absenders */ $mail_header = "From: $von"; /* Wenn eine Datei als Anhang ausgewaelt wurde... */ if($anhang=="jep" && $dateiname && $datei && $datei != "none") { /* Lese die temporaere Datei, die der Benutzer hochgeladen hat aus */ $datei_content = fread(fopen($datei,"r"),filesize($datei)); /* Codiere Datei ins BASE64-Format, falls noetig */ if($contenttypes[$anhang_content_type][encoding]=="base64") $datei_content = chunk_split(base64_encode($datei_content)); else $datei_content = $datei_content; /* Generiere einen Boundary */ $boundary = strtoupper(md5(uniqid(time()))); /* Beginne den Mail-Header mit MIME-Mail-Header */ /* (siehe http://www.php3-forum.de/mime_mail.htm) */ $mail_header .= "\nMIME-Version: 1.0"; $mail_header .= "\nContent-Type: multipart/mixed; boundary=$boundary"; $mail_header .= "\n\nThis is a multi-part message in MIME format -- Dies ist eine mehrteilige Nachricht im MIME-Format"; /* Hier faengt der normale Mail-Text an */ $mail_header .= "\n--$boundary"; $mail_header .= "\nContent-Type: $content_type"; $mail_header .= "\nContent-Transfer-Encoding: 8bit"; $mail_header .= "\n\n$mail_content"; /* Hier faengt der Datei-Anhang an */ $mail_header .= "\n--$boundary"; $mail_header .= "\nContent-Type: $anhang_content_type; name=\"$dateiname\""; /* Lese aus dem Array $contenttypes die Codierung fuer den MIME-Typ des Anhangs aus */ $mail_header .= "\nContent-Transfer-Encoding: ".$contenttypes[$anhang_content_type][encoding]; $mail_header .= "\nContent-Disposition: attachment; filename=\"$dateiname\""; $mail_header .= "\n\n$datei_content"; /* Gibt das Ende der eMail aus */ $mail_header .= "\n--$boundary--"; } else { $mail_header .= "\nContent-Type: $content_type"; $mail_header .= "\nContent-Transfer-Encoding: 8bit"; $mail_header .= "\n\n".$mail_content; } /* Sende eMail und gebe Fehler bzw. Bestaetigung aus */ if(@mail($an,$subject,"",$mail_header)) echo "Die eMail mit dem Betreff ".htmlentities($subject)." wurde an ".htmlentities($an)." gesendet."; else echo "Es ist ein Fehler beim senden der eMail aufgetreten."; } else { ?> <TABLE BORDER=0 CELLPADDING=0 CELLSPACING=0> <FORM METHOD=post ENCTYPE="multipart/form-data" ACTION="<?php echo $PHP_SELF; ?>"> <TR><TD><?php echo $FONT; ?><B>An: </TD><TD><INPUT TYPE=text SIZE=40 NAME=an VALUE="hier meine E-Mail eintragen !"></TD></TR> <TR><TD height="43"><?php echo $FONT; ?><B>Von: </TD><TD><INPUT TYPE=text SIZE=40 NAME=von></TD></TR> <TR><TD height="47"><?php echo $FONT; ?><B>Betreff: </TD><TD><INPUT TYPE=text SIZE=40 NAME=subject VALUE=""></TD></TR> <TR><TD height="38"><?php echo $FONT; ?><B>Inhaltstyp: </TD><TD><SELECT NAME=content_type><OPTION VALUE="text/plain">Standard: Text<OPTION VALUE="text/html">HTML-Mail</SELECT></TD></TR> <TR><TD height="46" COLSPAN=2><?php echo $FONT; ?><B>Folgender Text wird in der eMail versendet: </TD></TR> <TR><TD COLSPAN=2><TEXTAREA NAME="mail_content" COLS="60" ROWS="10"></TEXTAREA></TD></TR> <TR><TD><?php echo $FONT; ?><BR><B><INPUT TYPE=checkbox NAME=anhang VALUE="jep">Anhang: </TD><TD></TD></TR> <TR><TD height="42"><?php echo $FONT; ?>Datei: </TD><TD><INPUT TYPE=file SIZE=20 NAME=datei></TD></TR> <TR><TD height="43"><?php echo $FONT; ?>Dateiname in Mail: </TD><TD><INPUT TYPE=text SIZE=20 NAME=dateiname VALUE=""></TD></TR> <TR><TD height="36"><?php echo $FONT; ?>Inhaltstyp: </TD><TD><SELECT NAME=anhang_content_type> <?php /* Lese aus dem Array $contenttypes mit den MIME-Typen die Daten aus und generiere eine Drop-Down-Liste */ reset($contenttypes); $key=key($contenttypes); while($key != "" || $key=="0") { echo "<OPTION VALUE=\"$key\">".$contenttypes[$key][info]; next($contenttypes); $key=key($contenttypes); } ?> </SELECT></TD></TR> <TR><TD><?php echo $FONT; ?></TD><TD><?php echo $FONT; ?><INPUT TYPE=submit VALUE="Abschicken"></TD></TR> </FORM></TABLE> </FONT> <?php } ?> </BODY> </HTML>
-
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage
-
mmh, ja es scheint so als ob der IE den Background von dem Frame übernimmt (was jetzt html valid ist weiß ich auswendig nicht)
Versuch mal den background in der php-Datei zu verändern...
Beitrag zuletzt geändert: 21.11.2009 19:47:34 von rms -
ja klar, brauchst du auch kein php für
einfach im Body-Tag die Hintergrund Farbe angeben. Also aus
<BODY class="ff">
wird
<BODY bgcolor="#FFA802">
die class ist ja sowieso auskommentiert -
Ich weiß jetzt grad net genau, wie du des meinst.
Aber es gibt eine funktion, mit welcher du einen html code schreiben kannst, welcher nur für den IE gilt und für alle anderen browser nicht.
diese funktion ist sehr geschickt, da es mit jeder Version des IEs eine sache mehr gibt, die nur er kann und eine sache mehr, welche der IE nicht kann (Ausnahme ist der IE8 - zum glück...)
die Funktion geht so:
du schreibst vor dem code für den IE:
<!--if IE>
und danach:
<!endif-->
gibt noch mehr:
Zitat von SELFHTML:
[if IE]: alle Versionen (ab 5.0),
[if IE 6]: alle 6er-Versionen,
[if lt IE 7]: alle Version vor 7 (less-than = kleiner als),
[if lte IE 5.5999]: alle Version bis 5.5 (less-than or equal = kleiner oder gleich),
[if gte IE 5.5]: alle Version ab 5.5 (greater-than or equal = größer oder gleich).
nikic: Problem gelöst, somit geschlossen.
Beitrag zuletzt geändert: 17.5.2010 21:08:38 von nikic -
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage