Hackerboard Wiki HaboBlog
Hackerboard bei Facebook Hackerboard bei Google+ Hackerboard bei Twitter

[HaBo]

 
(Web-) Design und webbasierte Sprachen Tipps & Tricks, Designabgleich, HTML & Javascript, Flash, ASP, PHP, Perl/CGI...

Kontaktformular & Umlaute

Diskussion: Kontaktformular & Umlaute im Forum (Web-) Design und webbasierte Sprachen, in der Kategorie Web, Network & Multimedia Palace; Anzeige Einen schönen Ich habe folgendes PHP Script zur Kontaktaufnahme: PHP-Code: <?php $adminemail  =  '********@***.**, ' ********@***.** '; $usesecimage = ''; $controlvars = '  thankspage submitteremail ccsubmitter messagetosubmitter  ...

Antwort
Alt 07.01.07, 19:28   #1 (permalink)
 
Registriert seit: 09.02.06
goflo Leistung: Facit NTK
Likes: 0
Standard Kontaktformular & Umlaute

Anzeige

Einen schönen

Ich habe folgendes PHP Script zur Kontaktaufnahme:

PHP-Code:
<?php
$adminemail 
'********@***.**, '********@***.**';

$usesecimage = '';

$controlvars = ' 
thankspage submitteremail ccsubmitter messagetosubmitter ';
$messagetoadmin = $_POST['
submitteremail'] ." hat folgende Anfrage ueber das Kontaktformular gesendet:


";

if (!function_exists('
geturl'))
{
function geturl($url)
{
 if (extension_loaded('
curl')) 
 {
   $user_agent = '
Mozilla/4.0 (compatibleMSIE 6.02PHP)';
   $ch = curl_init(); 
   curl_setopt ($ch, CURLOPT_URL, $url); 
   curl_setopt ($ch, CURLOPT_USERAGENT, $user_agent); 
   curl_setopt ($ch, CURLOPT_HEADER, false); 
   curl_setopt ($ch, CURLOPT_RETURNTRANSFER, true); 
   curl_setopt ($ch, CURLOPT_CONNECTTIMEOUT, 15);  // Timeout nach 5 Sekunden
   curl_setopt ($ch, CURLOPT_TIMEOUT, 15);  // Timeout nach 5 Sekunden
   curl_setopt ($ch, CURLOPT_FOLLOWLOCATION, true); 
   $result = curl_exec ($ch); 
   curl_close ($ch); 
// curl_error($ch); // fuer Debugmodus
   return $result;    
 }
 
 if (version_compare("4.3.0", phpversion(), "<"))
 { 
  $filecontents = @file_get_contents($url);
 }
 else
 {
  $fd = @fopen($url, '
rb');
  $filecontents = "";
  do 
  {
   $data = @fread($fd, 8192);
   if (strlen($data) == 0) 
   {
    break;
   }
   $filecontents .= $data;
  } while(true); 
  @fclose ($fd);
 }
 return $filecontents;
}
}

 if (!isset($_POST['
messagetosubmitter'])) $messagetosubmitter = "<br>Sie haben nachfolgende Anfrage erfolgreich an uns gesendet. Wir werden Ihnen schnellstmöglich antworten.


";
 else $messagetosubmitter = $_POST['
messagetosubmitter'];
 
while(list($key, $value) = each($_POST))
{
 if (!stristr($controlvars, ' '. $key .' '))
 {
  $messagetoadmin .= $key .'
'. $value .'

';
  $messagetosubmitter .= $key .'
'. $value .'

';
 }

$submitter = $_POST['
submitteremail'];
if ($submitter == '') $submitter = '
anonym@anonym.com';
if (strstr($submitter, "\n")!==false || strstr($submitter, "\r")!==false || strlen($submitter) > 50) die("Pech, Du gemeiner Spammer.");

if ($usesecimage)
{
 $curr_path = getcwd(); 
 chdir($usesecimage);        // Geht zum EdeV Verzeichnis
 require '
start.php'; 
 if (strtolower($_POST['
securityimage']) != securityimagevalue()) die("Sie haben das Sicherheitsbild nicht korrekt übertragen.");
 chdir($curr_path);      // kommt zurück zum Original Verzeichnis
}

mail($adminemail, '
Form Submitted'. stripslashes($_POST['subject']), stripslashes($messagetoadmin), 'From'. $submitter);

if ($_POST['
ccsubmitter'] == 'yes')
{
 mail($submitteremail, '
Form Submitted'. stripslashes($_POST['subject']), stripslashes($messagetosubmitter), 'From'. $adminemail);
}
if ($_POST['
autoresponse'] != '')
{
 $body = geturl($autoresponse);
 mail($submitteremail, '
Re'. stripslashes($_POST['subject']), stripslashes($body), 'From'. $adminemail);
}
header('
Location'. $_POST['thankspage']);
// Falls die Weiterleitung nicht funktioniert
die('
<meta http-eqiv="refresh" content="0;url='. $_POST['thankspage'] .'">);


?>
So, das ganze funktioniert auch wunderbar. Aber leider werden die Umlaute (ä, ü, ö und auch das ß) als html-Code (ist das überhaupt HTML) ausgegeben!
zb "Grüße" kommt als "Gr???Ye "
oder "für" als "f??r"
bei mir an.

Da ich leider php nicht beherrsche weiß ich nicht wie man das überhaupt lösen kann?
Kann mir jemand sagen was ich hinzufügen bzw. abändern muss???

Für euch ist das sicher ein Kinderspiel!

Danke und sg
GoFlo
goflo ist offline   Mit Zitat antworten
Alt 07.01.07, 19:49   #2 (permalink)
LX
Moderator
 
Registriert seit: 14.02.06
LX Leistung: Z3
LX eine Nachricht über ICQ schicken LX eine Nachricht über AIM schicken LX eine Nachricht über Yahoo! schicken
Likes: 21
Lightbulb

Das ist ein Zeichensatzproblem. Vermutlich läuft die Seite mit dem Formular auf UTF-8, deine Auswertung oder die Datenbank, in der du's speicherst aber mit ISO-8859-15. Entweder du vereinheitlichst das ganze, oder du greifst auf iconv() zurück.
__________________
"Ever tried. Ever failed. No matter.
Try again. Fail again. Fail better."
- Samuel Beckett

JS BB LX UP
LX ist offline   Mit Zitat antworten
   
HaBOT
 
- Anzeige -

Werbung ist gerade online    
Alt 07.01.07, 20:22   #3 (permalink)
Themenstarter
 
Registriert seit: 09.02.06
goflo Leistung: Facit NTK
Likes: 0
Standard

Danke für deine schnelle AW!
Ich habe mir schon so etwas in der Art gedacht!

Aber wo muss ich nun die Konvertierung des Zeichensatztes vornehmen? Ich gehe mal davon aus dass ich den Inhalt der Texfelder, aus dem HTML Formular, umwandeln muss?

Edit:
Habs jetzt lösen könne!
Einfach den Zeichensatz vereinheitlicht.
In der html wo das Kontaktformular eingebaut ist.

PHP-Code:
<form action="/cgi-bin/auswert.pl" method="post" accept-charset="ISO-8859-15">
<!-- 
hier folgen die Formularelemente -->
</
form

Diese Seit hat mir datei geholfen: Self HTML - Formulare

thx lx
goflo ist offline   Mit Zitat antworten
Antwort
   
- Anzeige -

Werbung ist gerade online    

[HaBo] » Web, Network & Multimedia Palace » (Web-) Design und webbasierte Sprachen » Kontaktformular & Umlaute
Themen-Optionen
Ansicht

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks sind aus
Pingbacks sind aus
Refbacks sind aus


Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
php und umlaute / sonderzeichen bikmaek (Web-) Design und webbasierte Sprachen 8 08.06.07 22:59
Problem mit Kontaktformular / Revido.de Franzl (Web-) Design und webbasierte Sprachen 0 12.08.06 16:25
IP über Kontaktformular stone.dr (Web-) Design und webbasierte Sprachen 1 10.01.06 18:49
Suche PHP Kontaktformular Po11er (Web-) Design und webbasierte Sprachen 3 07.11.03 15:21
Suche PHP Kontaktformular Po11er Internet Allgemein 2 29.08.03 12:32


1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61