Beiträge von vivistar

    Weiß keiner mehr was darauf?

    Und nochwas.....
    Seitdem dort:

    PHP
    $header .= "Content-Transfer-Encoding: 8bit"

    eingefügt ist, funktioniert es soweit, bekomme aber ca 30 Minuten nach der eigentlichen Email
    eine 2te Email, die wie folgt aussieht:
    ----------------------------------

    Content-type: text/plain; charset=utf-8

    From: homer0177@gmx.net[/email]

    Content-Transfer-Encoding: 8bit
    Message-Id: <20090625101745.96A5577E54@loki.ffm.hosting-agency.net>
    Date: Thu, 25 Jun 2009 12:17:45 +0200 (CEST)

    Name: ööüüö
    Vorname: Name

    Telefon: 0505050
    Email: homer0177@gmx.net[/email]
    Betreff: Beitrag
    Meine Nachricht: üööää


    Warum das denn nun schon wieder?

    PS: Doppelpst bewusst gemacht, da sonst keiner antwortet :(

    Meiner Meinung nach habe ich genau das getan :smilie085:
    Oder nicht?

    Ich habe den entsprechenden Header mit dem Content-type eingefügt - genau so wie es du mir beschrieben hast.
    Die anderen übrigen Header aus Afraels Link wie z.B

    PHP
    $header .= 'To: Simone <simone@example.com>, Andreas <andreas@example.com>' . "\r\n";
    $header .= 'Cc: geburtstagsarchiv@example.com' . "\r\n";
    $header .= 'Bcc: geburtstagscheck@example.com' . "\r\n";

    sollten hier meiner Meinung nach keinen Einfluss darauf haben oder gar überflüssig sein oder? Zumindest macht es keinen Unterschied bei mir^^
    Dann habe ich da noch gefunden:

    PHP
    $subject = mb_encode_mimeheader('ääööö test test öäöäöä','UTF-8');

    Hätte ja sein können, daß es hilft...leider auch nicht :(


    *verzweifel :smilie201:


    Könnte das Problem ganz woanders liegen?
    Mir wurde unter anderem gesagt:

    Zitat

    Beim mail() Befehl sind die Headerzeilen selbst zu setzen.

    Den Befehl habe ich damit doch gesetzt und per mail() Befehl geht das ganze doch auch raus ja?

    Dann noch was.....bei Dreamwaver gibt es noch die Möglichkeit, innerhalb des Formulares den Kod.-Typ anzugeben.
    Das habe ich getan....
    Nun sieht der Formularbereich wie folgt aus:


    Teilweise Problemlösung

    Ich habe das Problem nun zum Teil gelöst, indem ein weiterer Header hinzugefügt wurde!;

    PHP
    $header .= "Content-Transfer-Encoding: 8bit"

    Nun erscheint der Inhalt der Email korrekt!!
    Soweit sehr gut - allerdings erscheint in der Betreffzeile und der Absenderzeile im Emailprogramm noch Fragezeichen, wenn ein Umlaut eingegeben wurde.

    Ich muss doch sicher irgendwo jetzt diese 8bit Sache ebenfalls einfügen, damit auch dort die Umlaute korrekt angezeigt werden, oder?
    Kann da jemand was schlaues zu sagen?

    Werde ich auf jeden Fall heute noch mit anfangen...da hast du recht!
    Nur momentan muss ich erstmal schnell dieses Formular hinbekommen.

    Es sieht nun wie folgt aus:



    Aber glaubst du,das funktioniert?
    Was soll denn das :(

    Ich werd nochmal ein wenig experimentieren....aber fällt dir was schlaues ein? Danke auf jeden Fall für deine Hilfe!!! :danke2:

    Habe ich mir angeschaut...und finde dort:

    PHP
    $header .= 'Content-type: text/html; charset=iso-8859-1' . "\r\n";

    Ich denke darin sollte die Lösung liegen, richtig?
    Wobei hier utf-8 angegeben werden muss.....richtig?

    Wenn das richtig ist, wo muss das in mein Formular rein?
    Ich hab ein wenig probiert, ging aber nicht.....ach verdammt :(
    Ist denn UTF-8 überhaupt richtig - notwendig?

    Danke für die schnelle Antwort!

    Gibt es das auch in Deutsch?
    Nicht, weil ich kein Englisch kann....aber wenn man mit Materie arbeitet, die man noch nicht perfekt beherrscht, dann macht es das leider nicht einfacher.
    Aber ich schaue mir das auf jeden Fall heute noch an!

    Gibt es denn für mein bestehendes Formular keine Hoffung mehr?
    Daß ich z.B sowas wie das von dir erwähnte

    PHP
    $mail->charSet = "utf-8";

    in meinen php-Teil einfüge und gut ist? *gg....wäre zumindest das Optimalste für mich ;)

    Sämtliche Umlaute kommen in den Emails aus meinem Formular als Fragezeichen an!
    Nach langer Suche bei Google und in verschiedenen Foren bin ich zum Ergebniss gekommen, daß es an der Kodierung liegen muss / soll.

    Momentan ist diese auf charset=utf-8 eingestellt.
    Laut Google und anderen Foren, muss man die Datenbank ebenfalls komplett auf diese Kodierung umstellen. Dies habe ich getan...hat aber nichts genützt [Blockierte Grafik: http://www.html.de/images/smilies/icon_sad.gif]

    Wenn ich mir jetzt mal in Firefox die Seiteninformationen anschaue,
    sehe ich dort:

    Kodierung: utf-8
    Content-Type text/html; charset=utf-8
    Folgendes steht in meiner Datenbank:
    Zeichensatz / Kollation der MySQL-Verbindung: utf8 unicode ci

    Verstehe also nicht, warum das nicht funktioniert :(


    Zum besseren Verständnis nochmal die entscheidenen Schnipsel aus meiner Kontakt.php

    Wer kann mir helfen? Bitte nicht all zu Fachchinesisch....bin kein Profi ;)


    PS: Mein Provider hat mir auf die Frage, ob es an der Datenbank liegt folgene Gegenfrage gestellt:

    Zitat

    Welches text-encoding setzen Sie in den Mail-Headern? Nutzen Sie hier 8bit.

    Bevor ich da antworte, will ich hier kurz fragen, was er meint?
    Mail-Header?-->Hab doch nur die eine php.Datei...verstehe ich nicht.
    8bit?..keine Ahnung^^.....hab ich das? Was ist das?

    Da ich bisher in keinem anderem Forum zu einem Ergebnis gekommen bin, hoffe ich hier auf Hilfe.....so pleeaase ;)

    Dein Provider kann nichts für deine fehlerhaften Scripte!

    Muss ja....warum läuft exakt das Script Problemlos auf einem anderen?

    Unabhängig davon, ob meins Fehlerhaft oder Fehlerfrei ist, kann es ja nur entweder funktionieren oder nicht und nicht von Webpaket zu Webpaket unterschiedlich sein, zumal beide Pakete von dem gleichen Provider kommen und beide Pakete sogar identisch sind.....das ist schon etwas komisch^^

    Und dein Formular geht auf dem ursprünglichen Webpaket auch nicht, obwohl es ansonsten genau wie meins auf dem 2ten getesteten problemlos läuft!

    Fazit: Irgendwas muss an diesem einem Paket fehlerhaft sein......
    Werde dann mal mit denen Kontakt aufnehmen, wie das angehen kann und wo das Problem liegt^^

    Jemand eine Idee, wie das angehen kann??^^


    @SinnlosS-->Danke nochmal für die Hilfe! Werde mich weiter mit dem Thema php auseinander setzen und hoffentlich bald ein bisschen mehr davon verstehen :)

    Leute...hab mal eben was getestet:


    Ich hab bei einem Provider 3 getrennte Webspace-Pakete laufen.
    Alle 2 Pakete haben getrennte ftp-Zugänge.

    Nun habe ich diese besagte Seite mit diesem Kontaktformular mal auf einer der anderen Pakete geladen - und siehe da......es geht - und zwar genau so, wie ich es am Anfang auch gepostet hatte.

    Gut, der Header sitzt zwar ganz unten und ob das nun so richtig ist oder nicht - es geht^^

    Dann werde ich mich wohl mal mit meinem provider auseinander setzen, warum nun genau in diesem einen Paket das Formular nicht richtig will^^


    Trotzdem nochmal die Frage:
    Muss der header unter allen Umständen weiter nach oben vor den Ausgaben oder kann der dann auch da unten stehen bleiben, wenn es so funktioniert? Ich meine..klar könnte er das - aber ist das mehr Glück als Verstand, daß es geht oder macht es nix und kann so bleiben?


    Ändere diese Zeile:

    PHP
    $strFrom       = "$_POST[Name] <$_POST[Email]>";

    in:

    PHP
    $strFrom = isset($_POST['Name']) && isset($_POST['Email']) && !empty($_POST['Name']) && !empty($_POST['Email'])    ?    "{$_POST['Name']} <{$_POST['Email']}>"    :    "";

    Leider spuckt er mir dabei nichts aus - es erscheint wieder nur eine weiße Seite.

    Edit: Achso, es fehlten auch die ' ' um deine $_POST-Keys. ('Name' und 'Email')

    Wenn ich das mache, sagt er:

    Zitat

    [B]Parse error

    Zitat

    : syntax error, unexpected T_ENCAPSED_AND_WHITESPACE, expecting T_STRING or T_VARIABLE or T_NUM_STRING in /home/u0088629688/public_html/Kontakt2.php on line 6

    Mhhhh......?

    Gut...selbst wenn ich den

    PHP
    $strFrom       = "$_POST['Name'] <$_POST['Email']>";

    komplett weg lasse, macht es keinen Unterschied.


    Lies mal nach wie PHP grundsätzlich funktioniert, dann verstehst du alles andere auch besser.

    Bin ja nebenebei dabei.....aber mit diesem Problem komme ich echt nicht alleine weiter... :(


    Ich weiß auch nicht mehr, was ich noch tun soll...hab schon den Header an alle möglichen Stellen gesetzt^^..aber nix hilft^^

    Tu mal folgendes oben ins Script:
    error_reporting(E_ALL);
    ini_set("display_errors",1);


    Ergebniss:

    Notice: Undefined index: Name in /home/u0088629688/public_html/Kontakt2.php on line 7

    Notice: Undefined index: Email in /home/u0088629688/public_html/Kontakt2.php on line 7


    Eine header() Anweisung muss immer vor einer Ausgabe stehen, ansonsten bekommst du den Fehler den du erhalten hast. Also wenn vor dem header() irgendeine Ausgabe an den Browser geliefert wird, sei es auch nur ein <html> oder eine print()/echo() Anweisung, wirst du den Fehler erhalten.


    http://www.php-fehlermeldungen.de/topic24.html
    Lies dir das erstmal durch um den Fehler zu verstehen.


    Das bedeutet doch, daß dann der header() über dem

    PHP
    if($_POST)

    stehen müsste, weil dort die erste Ausgabe ist? Aber wenn ich das tue, wird direkt an die Danke-Kontakt.html weitergeleitet, ohne daß ich auf die eigentliche Kontaktseite komme.

    Leerzeichen sind keine vorhanden!


    @SinnlosS--->danke für den Link!


    Kompletter Code der php-Seite



    So siehts aus.......

    Habs jetzt als "utf-8 ohne BOM" gespeichert..nützt leider nichts.

    Ok...das mit dem:

    Zitat

    Ansonsten deinen Code nochmal genau prüfen wo du vor dem header() schon eine Ausgabe hast, denn da ist definitiv eine.

    übersteigt jetzt einfach mein Wissen.
    Kannst du nicht anhand des angegebenen Codes erkennen, ob das so ist?
    Bitte nicht vergessen...ich bin Neu in dem Bereich um es fällt mir noch nicht sonderlich leicht, das alles zu verstehen^^

    Und zum Thema:

    Zitat


    Diesbezüglich kann ich dir dann aber nicht weiterhelfen, da du nicht die komplette Datei in einem postest, genauso wie du sie auch abgespeichert hast.

    Kann ich nur sagen, daß diese beiden Codes mein komplettes Kontaktformular darstellen. Natürlich sind da noch Bilder und Links mit auf der Seite, was aber ja nichts mit dem Formular an sich zu tun hat.

    Und zur Info: der von mir angegebene php-Teil sitzt ganz oben und der eigentliche <form> Teil sitzt halt im <body> Bereich - also alles innerhalb einer php-Datei.

    Macht das ein Problem?

    Also....aktueller Stand:


    php:

    Im Body:


    Funktioniert leider weiterhin nicht!


    Fehlermeldungen unter Angabe von:

    PHP
    print("Location: $strReturnhtml");
    header("Location: $strReturnhtml");
    Zitat

    Location:
    Warning: Cannot modify header information - headers already sent by (output started at /home/u0088629688/public_html/Kontakt.php:3) in /home/u0088629688/public_html/Kontakt.php on line 4

    ----Erscheint bei dem Kontaktformular.

    Zitat

    Location:
    Warning: Cannot modify header information - headers already sent by (output started at /home/u0088629688/public_html/Kontakt.php:3) in /home/u0088629688/public_html/Kontakt.php on line 4

    Warning: Cannot modify header information - headers already sent by (output started at /home/u0088629688/public_html/Kontakt.php:3) in /home/u0088629688/public_html/Kontakt.php on line 42

    ----Erscheint beim drücken des Button's "senden"


    Nun schaue ich mir die line 4 und 42 an:

    4:

    PHP
    header("Location: $strReturnhtml");

    Das ist der Teil aus dem:
    print("Location: $strReturnhtml");
    header("Location: $strReturnhtml");


    42:

    PHP
    header("Location:Danke-Kontakt.html");


    Fakten:
    1. Danke-Kontakt.html zu 100% vorhanden und auch aufrufbar - somit korrekt!

    2. Selbst mit direkter http-Adresse der Danke-Kontakt.html funktioniert es nicht!

    3. Bei Angabe einer Seite / Adresse unter

    Zitat

    $strReturnhtml

    , die gar nicht existiert, ändert sich auch nichts, was bedeuten muss, daß er ja gar nicht erst dazu kommt, das

    Zitat

    $strReturnhtml

    auszuführen, da er nicht einmal den Fehler ausgibt, daß die angegebene Seite nicht zu erreichen ist (da nicht existend)

    Irgendwas in dem Code muss ja falsch sein, daß er einfach an keine Seite weiterleitet..aber was und wo?
    Wie gesagt - die Email kommt an!

    Danach wird dir kein "Headers already sent" ausgespuckt?


    Nein.

    Das mit:

    PHP
    $array['Name']
    und
    $array['Email']

    habe ich so nicht gewusst. Ich war der Meinung, daß es sich auf
    die Angabe innerhalb's

    HTML
    <label><span class="Stil1">Name:</span><br /></label>
                <input name="Name" type="text" id="Name" size="40" />
                <br>
    <label>Vorname<br></label>

    bezieht und sich daraus die Daten holt.


    Also ist das der Grund, daß keine Weiterleitung erfolgt?
    Es geht ja nicht darum, daß dieses Formular nicht funktioniert, sondern daß schlicht die Weiterleitung nicht an die angegebene Seite funktioniert, was ansonsten bisher nie ein Problem war und daher für mich keinen Sinn ergibt.


    @Bandit:

    Zitat

    Mach' mal beide Augen ganz fest zu, was du dann siehst, kannst du in einem Forum erwarten!

    Freut mich, daß du selber darsellst, wie deine Einstellung zu dem Forum hier ist!
    Und mit genau dieser Einstellung gehst du hier auch die Sache an....
    Großkotzig, arrugant und nur wenig hilfsbereit. Da fragt man sich--was willst du hier, wenn du keinen Bock hast Leuten zu helfen, die nicht so viel Ahnung von der Materie haben.....

    Zitat

    Ich habe keinen Bock, mir so eine Buchstabenwüste anzusehen! Wenn du nicht in der Lage bist, deinen Quellcode ordentlich zu posten, dann ist das dein Problem!

    Dann lass es einfach.....hat dich keiner gezwungen sich hierzu zu äußern^^

    Tolle Antwort^^

    Hift mir als nicht Profi richtig weiter^^


    Zitat

    Du zeigst uns 2 Teile deines Scriptes, allerdings bleibt uns so der Zusammenhang fremd

    Das ist das Script! Was sollte da deiner Meinung nach fehlen? Php und html Teil sind doch vorhanden......was fehlt?

    Zitat

    Richtig debuggen

    Toll wie du diesen Text immer und immer wieder allen möglichen Usern an den Kopf wirfst^^

    Zumal:

    Zitat

    2. Man schreibt an den Anfang des Scriptes die Zeile: error_reporting(E_ALL); und ini_set("display_errors", true);

    z.B völlig überflüssig zu erwähnen ist, da:

    bereits geschehen wie du siehst^^..also was soll das?


    Da dies ein Hilfeforum darstellen soll, kann man doch bitte etwas mehr erwarten oder wie? Schließlich sind wir hier nicht alle Vollprofis! Und wenn du keinen Bock hast, dann laß es lieber ganz!

    Keinverständnishab*


    Zitat


    3. $_SERVER['PHP_SELF'] ist schlecht, füttere google mit PHP_SELF XSS

    Kann es daran liegen, daß die Seite nicht weitergeleitet wird, da es ja innerhalb der 2ten bestehenden Seite von mir genau so Problemlos funktioniert?

    Und um nochmal auf die Fehlermedlung zurück zu kommen:
    Notice: Undefined index: Name in /home/u0088629688/public_html/Kontakt2.php on line 10

    Notice: Undefined index: Email in /home/u0088629688/public_html/Kontakt2.php on line 10

    Was bedeutet das?

    Hallo!


    Ich habe ein Problem mit meinem Kontaktformular, was hinten und vorne keinen Sinn macht!

    php-code

    html-code:

    Folgendes:

    Exakt so, wie es oben steht, funktioniert das Formular Problemlos auf einer Seite von mir.
    Auf einer weiteren Seite will exakt dieses Forumal einfach nicht auf die "Danke.html" weiterleiten! Nachdem man "senden" drückt, bleibt der Bildschirm einfach weiß und es passiert nichts mehr! Die Email kommt an.

    Fakt ist:
    1 Die Adresse/Pfad zur "danke.html" ist korrekt!
    2:Auch mit direktem Link zur "danke.html" mit http oder auch nur www. nützt nix!
    3: Beide Seiten liegen auf dem gleichen Provider (2ftp Zugänge). Privder unerstützt also die Funtkion und Probleme sind auch nicht vorhanden!
    4: Auf der einen Seite geht es und auf der anderen nicht, was absolut keinen Sinn macht!


    Wer kann mir sagen, was hier los ist?
    Mach ich was falsch? Wenn ja, was?

    Da ich kein Profi bin, bitte ich um möglichst leicht verständliche Hilfe :)

    Thx schonmal vorab!


    PS: Er schmeißt mir bei Eingabe von

    Zitat


    error_reporting(E_ALL);
    ini_set("display_errors", true);

    folgendes aus:

    Notice: Undefined index: Name in /home/u0088629688/public_html/Kontakt2.php on line 10

    Notice: Undefined index: Email in /home/u0088629688/public_html/Kontakt2.php on line 10


    Aber warum?

    google richtig füttern und mit den Ergebnissen etwas anfangen, ist anscheinend sehr schwer. :(

    Anscheinend ;)


    Denn es bringt überhaupt nix dein Fund. Es geht auf dieser Seite um die Grundsätzliche Lösung über htc und behavior, was ich bereits weiß und so eingebaut habe und funktioniert. Die Veränderung des Codes für den Effekt mit Hintergdundbilden trifft hier ja auch nicht zu, daß es sich um einen "Bildaustausch" handelt.

    aber google sagt:

    Ergebnisse 1 - 10 von ungefähr 4.620.000 für Behavior ie6. (0,05 Sekunden)

    Google sagt da eine ganze Menge, aber nichts zu dem Thema konnte ich finden. Deswegen bin ich hier gelandet.

    Es geht ja nicht darum einen Behavior zu finden, sondern das Problem damit zu lösen. Und dazu habe ich nichts gefunden. Solltest du was finden, lasse ich mich gerne überzeugen ;)