Seite 1 von 3 123 LetzteLetzte
Ergebnis 1 bis 10 von 27

Thema: Online Formular

  1. #1
    st0ny
    Gast

    Standard Online Formular

    Guten Morgen,

    ich habe folgendes Problem:

    Ich soll für unsere Firma ein Online-Formular machen, mit dem unsere User uns diverse Probleme oder Sonstiges mitteilen können, eine Art Instandsetzungsauftrag per Mail-Formular so zu sagen.
    Nungut, ich hab mit PHP ungefähr soviel am Hut wie Frauen mit Fußball.. deshalb hab ich mir einfach mal ein paar Tutorials angeschaut und bin jetzt eigentlich auch so gut wie fertig, nur ein paar Kleinigkeiten fehlen mir noch. Vielleicht könnt ihr mir dabei ja weiterhelfen.
    Zuerst allerdings einmal der Code den ich verwendet habe.

    formular.htm enthält folgendes:

    Code:
    <html>
    
    <head><title>Instandsetzungsauftrag an xxx</title>
    
    <center><img src=img/logo.jpg></center>
    
    
    <form method="post" action="senden.php">
    
    <table border="0" cellpadding="" align="center" width="700">
    <tr>
    
    <td>Ihr Name&#58;</td> <td><input type="text" name="name"></td>
    
    
    </tr>
    
    <tr>
    <td>Ihre Abteilung&#58;</td> <td><input type="text" name="abteilung" size="25"></td>
    
    
    </tr>
    
    <tr>
    <td>Tel.&#58;</td> <td><input type="text" name="tel"></td>
    
    
    </tr>
    
    <tr>
    <td>E-Mail&#58;</td> <td><input type="text" name="email"></td>
    
    
    </tr>
    
    <tr>
    <td>Fax&#58;</td> <td><input type="text" name="fax"></td>
    
    
    </tr>
    
    <tr>
    <td>Problembericht&#58;</td> <td><textarea name="bericht" rows="10" cols="50"></textarea></td>
    
    
    </tr>
    
    <tr>
    <td><input type="submit" name="Button" value="Abschicken"></td> <td><input type="reset" name="Button" value="Zurücksetzen"></td>
    </tr>
    
    </form>
    senden.php enthält folgendes:

    Code:
    <?PHP
    echo "<center><u>Sie haben folgende Angaben gemacht&#58;</u>
    
    
    ";
    echo "Ihr Name&#58; $name
    
    ";
    echo "Ihre Abteilung&#58; $abteilung
    
    ";
    echo "Tel.&#58; $tel
    
    ";
    echo "Fax&#58; $fax
    
    ";
    echo "Problembericht&#58; $bericht</center>"; 
    
    $text = $name."\n".$abteilung."\n".$tel."\n".$fax."\n".$bericht;
    mail&#40;"j.worobij@goetz-dl.de","Instandsetzungsauftrag von $name",$text&#41;;
    ?>

    Ok, mein erstes und größtes Problem ist es, dass ich einfach keine E-Mail zugesandt bekomme. Alles funktioniert, wie es sein soll, nur es kommt keine E-Mail an. Woran könnte das liegen?

    Mein zweites (kleines) Problem ist, dass das Bild über dem Formular extrem weit entfernt vom Rest der Seite ist, heißt also, es ist sehr viel Zwischenraum zwischen dem Bild und dem Formular.

    Und als Letztes habe ich noch eine Frage.
    Mein Cheffe hätte das gerne so, dass man aus dem Namensfeld ein Dropdown-Menü macht, dort seinen Namen aussucht und die restlichen Felder sich dann automatisch eintragen. Wenn ich also jetzt meinen Namen dort aussuche, soll sofort meine Telefon-Nummer, meine Abteilung, etc. dastehen. Meines Wissens ist dies nur mit einer Datenbank möglich, oder liege ich da falsch?

    Ok, also wenn jemand kurz Zeit hat, mir da ein wenig unter die Arme zu greifen, wäre das sehr nett. Ich wünsch euch noch einen schönen Tag.

    MfG
    Achtung: Dies ist ein alter Thread im HTML und Webmaster Forum
    Diese Diskussion ist älter als 90 Tage. Die darin enthaltenen Informationen sind möglicherweise nicht mehr aktuell. Erstelle bitte zu deiner Frage ein neues Thema im Forum !!!!!

  2. #2
    Forum Guru
    Registriert seit
    14.06.2004
    Ort
    Schleswig-Holstein
    Beiträge
    5.439
    Danke
    0
    Bekam 0 mal "Danke" in 0 Postings

    Standard Re: Online Formular

    Moin!

    Ich habe leider im Augenblick nicht die Zeit, dir mit all deinen Problemem zu helfen, möchte aber schnell zu einem Abschnitt deines Posting etwas sagen. Wenn du mit den anderen Problemen nicht weiterkommst, dann kann ich dir da gerne morgen helfen.
    Zitat Zitat von st0ny
    Und als Letztes habe ich noch eine Frage.
    Mein Cheffe hätte das gerne so, dass man aus dem Namensfeld ein Dropdown-Menü macht, dort seinen Namen aussucht und die restlichen Felder sich dann automatisch eintragen. Wenn ich also jetzt meinen Namen dort aussuche, soll sofort meine Telefon-Nummer, meine Abteilung, etc. dastehen. Meines Wissens ist dies nur mit einer Datenbank möglich, oder liege ich da falsch?
    Schönen Gruß an deinen Chef, aber wenn es tatsächlich so sein soll, wie du es beschrieben hast, dann wird ihm der Datenschutz ganz schnell auf die Füsse steigen und ich fürchte daß da auch einige Abmahnanwälte gerne aufspringen.
    Da kannst so etwas machen, wenn der Kunde sich einloggen muß oder es sich um ein lokales Intranet handelt, wo nur ein überschaubarer Nutzerkreis zugriff auf die daten der anderen Nutzer hat. Auf deutsch: nur Innerhalb der Firma mit den Daten der Mitarbeiter - so sie dem zugestimmt haben.

    Alternative:
    Ihr führt eine Kundendatenbank und der Kunde muß sich mit seinem Paßwort in einem Kundenbereich anmelden. Dann kannst du in solch einem Formular seine Daten automatisch darstellen, was allerdings überflüssig ist, denn wenn er sich eingeloggt hat, dann weiß das PHP-Script ja um wen es sich handelt und muß die ganzen Daten nicht noch einmal abfragen.

    Technisch ist das ganze mit einer Datenbank oder auch nur einem Text-File realisierbar. Solch ein Text-File kann man jedem Textverarbeitungsprogramm, mit Excel, Outlook, Access, Word u.s.w. erstellt werden, man muß sich nur eine Gliederung ausdenken, die PHP dann anschließend auch versteht.

    Für die Darstellug in einer Dropdownliste mußt du dir die HTML-Seite vom PHP-Script erstellen lassen und die Daten dabei gleich einlesen. Ob du dann alle Daten in einem Javasript ablegst oder nur den jeweiligen Namen in die Dropdownfeld legst ist Geschmackssache - bei der ersten Variante erzeugst du auf jeden Fall eine sehr große HTML-Seite (viel Quelltext). Im zweiten Fall mußt du dir die Daten nach Anklicken des entsprechenden Dropdownfelds irgendwie holen, das kann man z.B. mit einem unsichtbaren Iframe machen, in dem ein PHP-Script gestartet wird, welches die Daten dann aus der Datenbank ausliest und anbietet. Mit Javascript werden die Daten dann aus dem Iframe geholt und in die richtigen Felder geschubst. Das jetzt detailiert zu erklären ist mir etwas zu aufwendig, zumal ja auch zunächst die Datenschutzfrage im Raum steht.

    Gruß aus der Marsch!

    Ronald

  3. #3
    st0ny
    Gast

    Standard

    Guten Morgen,

    schonmal vielen Dank für die äußerst schnelle Antwort.
    Also das Thema, das Du angesprochen hast, hat sich nun erledigt, nachdem ich ihm deinen Post gezeigt habe. Vielen Dank dafür, ich glaube damit bleibt mir eine Menge Arbeit erspart.

    Ich werde heute noch versuchen, die anderen Probleme irgendwie geregelt zu bekommen. Wenn ich das noch schaffe, dann geb ich Dir hier noch einmal Bescheid, sollte heute nichts mehr von mir kommen, bin ich wohl auch nicht recht viel weitergekommen. Es würde mich in diesem Fall sehr freuen, wenn du Dir dann morgen ein wenig Zeit nehmen könntest, aber auch nur, wenn es wirklich in Ordnung ist.

    MfG

  4. #4
    st0ny
    Gast

    Standard

    Guten Morgen,

    so leid es mir tut, aber man findet auch sonst kaum Möglichkeiten sich helfen zu lassen, deshalb bin ich nach wie vor so weit wie gestern. Ich bekomme immernoch keine E-Mail, der Rest funktioniert sonst einwandfrei. Kann sich das hier jemand erklären?

    MfG

  5. #5
    Forum Guru
    Registriert seit
    14.06.2004
    Ort
    Schleswig-Holstein
    Beiträge
    5.439
    Danke
    0
    Bekam 0 mal "Danke" in 0 Postings

    Standard

    Moin!

    Ich habe deine Quelltexte eben mal überarbeitet, so sollte es funktionieren.

    Zunächst dein Eingabeformular, da waren noch Fehler drinnen (was aber nicht die Ursache für das Nichtsenden der Mail war):
    formular.htm:
    Code:
    <!doctype html public "-//W3C//DTD HTML 4.01 Transitional//EN">
    <html>
    <head>
    <title>Instandsetzungsauftrag an xxx</title>
    <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
    <style type="text/css">
    <!--
    input &#123;width&#58;200px;&#125;
    .button &#123;width&#58;100px&#125;
    .texttd &#123;width&#58;150px;font-weight&#58;bold;&#125;
    -->
    </style>
    </head>
    <body style="text-align&#58;center">
     [img]img/logo.jpg[/img]
    
    <form method="post" action="senden.php">
    
    <table border="0" cellspacing="10" cellpadding="0" style="margin&#58;auto;border&#58;1px outset #6F6F6F;padding&#58;10px;">
     <tr>
      <td class="texttd">Ihr Name&#58;[/b]</td>
      <td><input type="text" name="name"></td>
     </tr>
     <tr>
      <td class="texttd">Ihre Abteilung&#58;[/b]</td>
      <td><input type="text" name="abteilung" size="25"></td>
     </tr>
     <tr>
      <td class="texttd">Tel.&#58;[/b]</td>
      <td><input type="text" name="tel"></td>
     </tr>
     <tr>
      <td class="texttd">E-Mail&#58;[/b]</td>
      <td><input type="text" name="email"></td>
     </tr>
     <tr>
      <td class="texttd">Fax&#58;</td>
      <td><input type="text" name="fax"></td>
     </tr>
     <tr>
      <td style="vertical-align&#58;top">Problembericht&#58;</td>
      <td><textarea name="bericht" rows="10" cols="50"></textarea></td>
     </tr>
     <tr>
      <td colspan="2" style="text-align&#58;center">
       <input class="button" type="submit" name="Button" value="Abschicken">
       <input class="button" type="reset" name="Button" value="Zurücksetzen">
      </td>
     </tr>
    </table>
    </form>
    </body>
    </html>
    Und nun das Auswerte- und Versendescript,m ich hab die eine HTML-Version gebastelt:
    senden.php:
    Code:
    <?PHP
    extract&#40;$_POST&#41;;
    $bericht = stripcslashes&#40;nl2br&#40;$bericht&#41;&#41;;
    
    $header  = "From&#58; $email\n";
    $header .= "MIME-Version&#58; 1.0\n";
    $header .= "Content-Type&#58; text/html;\n";
    $header .= "X-Mailer&#58; PHP/".phpversion&#40;&#41;;
    $empfaenger = "EMAILADRESSE";      ##  <------- dort muß eure Emailadresse rein ##
    $subject = "Problembericht von $name";
    
    echo "<center><u>[b]Sie haben folgende Angaben gemacht&#58;</u>
    
     ";
    $message = "
    <table border='0' cellspacing='0' cellpadding='10' style='width&#58;600px;margin&#58;50px auto;border&#58;1px solid #7F7F7F'>
     <colgroup>
      <col style='width&#58;150px'></col>
      <col></col>
     </colgroup>
      <tr>
      <td>Name&#58;</td><td>$name</td>
      </tr>
      <tr>
      <td>Abteilung&#58;</td><td>$abteilung</td>
      </tr>
      <tr>
      <td>Email&#58;</td><td>$email</td>
      </tr>
      <tr>
      <td>Telefon&#58;</td><td>$tel</td>
      </tr>
      <tr>
      <td>Fax&#58;</td><td>$fax</td>
      </tr>
      <tr>
      <td style='vertical-align&#58;top'>Problembericht&#58;</td><td>$bericht</td>
      </tr>
    </table>
    ";
    echo "$message
    
    ";
    
    $send = @mail&#40;$empfaenger, $subject, $message, $header&#41;;
    if&#40;$send&#41;
       &#123;
       echo "Wir haben ihre Nachricht erhalten";
       &#125;
       else
         &#123;
         echo "Ihre Nachricht konnte nicht übermittelt werden,
    bitte versuchen Sie es später noch einmal";
         &#125;
    ?>
    Ich hoffe du wirst daraus schlau,

    G.a.d.M.

    Ronald

  6. #6
    st0ny
    Gast

    Standard

    Hallo Ronald,

    also erstmal vielen vielen Dank, es funktioniert nun alles einwandfrei und schön formatiert ist auch alles. Du hast mir da echt einen riesigen Gefallen damit getan, also noch ein dickes Dankeschön dafür.
    Was mich jetzt allerdings interessieren würde, ist, was ich denn falsch gemacht habe, oder weißte das auch nicht wirklich so genau?
    Ok ich wünsch dir noch einen schönen Tag und ich kanns nur nochmal wiederholen: DAAAANKE!

    Mfg

  7. #7
    Forum Guru
    Registriert seit
    14.06.2004
    Ort
    Schleswig-Holstein
    Beiträge
    5.439
    Danke
    0
    Bekam 0 mal "Danke" in 0 Postings

    Standard

    Ich vermute mal, daß ein Fehler im PHP -> mail-function vorlag.
    Da der "automatische Email-Kill-Admin" deinen Quelltext aber übergemalt hat, kann ich das nicht genau sagen.

    Inwieweit die fehlenden (/)HTML, Body, pp - Tags eine Rolle spielen, bin ich mir auch nicht ganz sicher, das müßte man ggf. mal ausprobieren.

    Hauptsache es geht jetzt und wenn du mal wieder was vergleichbares machst, dann hast du ja nun eine Vorlage

    G.a.d.M.

    Ronald

  8. #8
    st0ny
    Gast

    Standard Sichtbare Tags

    Hallo Ronald (u. Rest),

    also wieder mal bins ich, dieses Mal allerdings mit einem weitaus kleinerem Übel.
    Mein Cheffe is soweit zufrieden, alles bestens. Er möchte allerdings die Daten aus der E-Mail in eine Datenbank ziehen. Dazu meinte er, wäre es für ihn einfacher die eingetragenen Daten in Tags zu setzen.
    Also als Beispiel: Der User hat den Namen "Hans Wurscht" eingegeben.
    In der E-Mail die bei uns ankommt soll das ganze dann so aussehen:

    <Start Name>Hans Wurscht<End Name>

    Die Tags sollen also sichtbar bleiben. Ich hoffe man versteht ungefähr was ich meine und jemand nimmt sich vielleicht kurz ein paar Minuten.

    Auszug der senden.php

    Code:
    <?PHP 
    extract&#40;$_POST&#41;; 
    $bericht = stripcslashes&#40;nl2br&#40;$bericht&#41;&#41;; 
    
    $header  = "From&#58; $email\n"; 
    $header .= "MIME-Version&#58; 1.0\n"; 
    $header .= "Content-Type&#58; text/html;\n"; 
    $header .= "X-Mailer&#58; PHP/".phpversion&#40;&#41;; 
    $empfaenger = "j.worobij@goetz-dl.de"; 
    $subject = "Stoerung"; 
    
    echo "<center><u>[b]Sie haben folgende Angaben gemacht&#58;</u>
    
     "; 
    $message = " 
    <table border='0' cellspacing='0' cellpadding='10' style='width&#58;600px;margin&#58;50px auto;border&#58;1px solid #7F7F7F'> 
     <colgroup> 
      <col style='width&#58;150px'></col> 
      <col></col> 
     </colgroup> 
      <tr> 
      <td>Name&#58;</td><td>$name</td>
      </tr> 
      <tr> 
      <td>Abteilung&#58;</td><td>$abteilung</td> 
      </tr> 
      <tr> 
      <td>Email&#58;</td><td>$email</td>
      </tr> 
      <tr> 
      <td>Telefon&#58;</td><td>$tel</td> 
      </tr> 
      <tr> 
      <td>Fax&#58;</td><td>$fax</td> 
      </tr> 
      <tr> 
      <td style='vertical-align&#58;top'>Problembericht&#58;</td><td>$bericht</td>
      </tr> 
    </table> 
    "; 
    echo "$message
    
    "; 
    
    $send = @mail&#40;$empfaenger, $subject, $message, $header&#41;; 
    if&#40;$send&#41; 
       &#123; 
       echo "Wir haben ihre Nachricht erhalten"; 
       &#125; 
       else 
         &#123; 
         echo "Ihre Nachricht konnte nicht übermittelt werden,
    bitte versuchen Sie es später noch einmal"; 
         &#125; 
    ?>
    Und zu guter Letzt würd ich doch noch gerne von dir wissen Ronald: für was zum Geier steht denn bitte G.a.d.M ?

    MfG (das versteht wenigstens jeder )

  9. #9
    Forum Guru
    Registriert seit
    14.06.2004
    Ort
    Schleswig-Holstein
    Beiträge
    5.439
    Danke
    0
    Bekam 0 mal "Danke" in 0 Postings

    Standard

    Moin!

    Ich vermmute mal, er will es in ein Access-Datenbank auf dem lokalen PC haben, ansonsten könnte mann die Daten ja gleich beim Versenden mit dem PHP-Script in einer Datenbank auf dem Server ablegen?

    Du kannst die Tags ganz einfach dazu screibenl, mußt nur die öffnende eckige Klammer gegen "&lt;" austauschen::
    Code:
      <td>Name&#58;</td><td>&lt;Start Name>$name&lt;/End Name></td>
    sonst zeigt HTML das nicht an.

    Ich halte aber das Ablegen der Daten auf dem Server in einer Textdatei für besser - auch auf die kann man ja jederzeit zugreifen und die kann so vorformatiert sein, daß man die Daten gleich mit Office-Programmen (Word, Excel, pp.) weiter benutzen kann.

    Gruß aus der Marsch!

    Ronald

  10. #10
    st0ny
    Gast

    Standard

    Hallo Ronald,

    ich danke dir (mal wieder) für die schnelle und hilfreiche Antwort, aber da hätt ich wohl auch selbst drauf kommen können.
    Das Problem ist, dass auf unserem Webserver kein PHP o.ä. vorhanden ist und wir das deshalb auf die Webserver unserer User schalten möchten. Dann gibt es dort natürlich auch wieder Leute, die meinen, sich auszukennen und sobald sie was von einer Datenbank hören, sehen sie nur noch Rot. Heißt also, wir müssen darauf achten nicht allzu viel auf deren Server zu installieren und deshalb haben wir auf die Datenbank verzichtet.
    Mein Chef allerdings will das ganze in eine Datenbank packen (keine Access, sondern selbst programmiert) in der die User sehen können, wie es gerade mit der Bearbeitung aussieht, etc. und da meinte er, ist es für ihn einfacher, wenn ich das von Tags umschließe.

    Ok, also ich wünsch speziell Dir, aber auch allen anderen noch einen wunderschönen Tag.

    G.a.d.s.S. (Gruß aus dem sonnigen Süden)

Ähnliche Themen

  1. Online-TV / Web-TV
    Von Pater im Forum Script-Archiv
    Antworten: 0
    Letzter Beitrag: 20.07.2007, 16:08
  2. Online Kalender / Online Tagebuch
    Von StefanLutz im Forum HTML & CSS Forum
    Antworten: 5
    Letzter Beitrag: 11.03.2007, 18:09
  3. Wer ist online?
    Von Vosch im Forum PHP Forum - Apache - CGI - Perl - JavaScript und Co.
    Antworten: 5
    Letzter Beitrag: 11.01.2006, 17:39

Stichworte

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •