Probleme mit textarea, Daten werden nicht korrekt übergeben


 
Neues Thema eröffnen   Neue Antwort erstellen    Webmaster Forum -> Hilfe für Webmaster
Vorheriges Thema anzeigen :: Nächstes Thema anzeigen  
Autor Nachricht
ass-online.eu
Mitglied

BeitragProbleme mit textarea, Daten werden nicht korrekt übergeben Antworten mit Zitat

axinio Internet Marketing
Hallo,

heute habe ich ein kleines Problem im Quelltext, bei dem ich nicht weiter komme.

Ich habe zu Jahresanfang für einen Kunden eine individuelle Homepage erstellt, eben genau so wie er es haben wollte. Sollte so günstig wie möglich sein und genau so aussehen wie er es mir aufgemalt und erklärt hat. Hab ich auch so erstellt. Das ganze sollte natürlich schnellstmöglich (binnen 7 Tagen ab Auftragserteilung) online stehen. Da das natürlich insgesamt dazu geführt hat, dass der Code nun nicht wirklich valide ist und einige Fehler drin stecken die erst nach und nach auftauchen, bin ich nun momentan dabei, die Seite so anzupassen, dass alle Probleme und Fehler behoben werden.


Das aktuelle Problem ist folgendes:

Es existiert ein Kontaktformular. In diesem Formular wird nach dem Absenden per PHP geprüft, ob denn auch die Pflichtfelder ausgefüllt wurden. Wenn nicht, werden die bereits eingegebenen Werte wieder an das Formular übergeben und es gibt Hinweise, welche Einträge fehlen. Klappt soweit auch bestens. Nur bei dem Kommentarfeld, das ich gerade eben von normalem Textfeld in ein ein Textarea geändert habe (weil die Leute sehr oft die Enter Taste drücken um einen Zeilenumbruch zu erhalten, der ja aber in einem normalen Input Feld nicht geht), wird dann natrürlich das Formular abgeschickt. Dadurch versuchen es viele natürlich 10x oder gar öfter und blicken es einfach nicht. Drum also nun ein Textarea.

Jetzt ist aber das Problem, dass der Wert aus diesem Textarea nach dem Absenden nicht wieder an das Feld übergeben und dann auch angezeigt wird. Der Text wird zwar in der Mail korrekt verschickt, aber das wars dann auch. Er erscheint nicht mehr im Formular.

Weiß hier jemand einen Rat, wo ich den Fehler habe?

Für Eure Hilfe wäre ich Euch wieder sehr dankbar.

Hier der Quelltext von dem Kontaktformular:

Code:

  <?php
      $nameOK = true;
      $emailOK = true;
      $kommentarOK = true;

      if (isset($_POST['submit_x']) && isset($_POST['submit_y'])) {
           
      $ausgabe = '';
      $fehler = '';
     
      if (isset($_POST['name']) && !is_array($_POST['name']) && $_POST['name'] != '') {
        $ausgabe .= 'Name : ' . htmlspecialchars($_POST['name']) . "\n";
      }
      else {
        $fehler .= '<span style="color:red">Kein Name angegeben!</span><br />';
        $nameOK = false;
      }
     
      if (isset($_POST['strasse']) && !is_array($_POST['strasse']) && $_POST['strasse'] != '') {
        $ausgabe .= 'Strasse : ' . htmlspecialchars($_POST['strasse']) . "\n";
      }
     
      if (isset($_POST['plz_ort']) && !is_array($_POST['plz_ort']) && $_POST['plz_ort'] != '') {
        $ausgabe .= 'PLZ und Ort : ' . htmlspecialchars($_POST['plz_ort']) . "\n";
      }
     
      if (isset($_POST['land']) && !is_array($_POST['land']) && $_POST['land'] != '') {
        $ausgabe .= 'Land : ' . htmlspecialchars($_POST['land']) . "\n";
      }
     
      if (isset($_POST['email']) && !is_array($_POST['email']) && $_POST['email'] != '') {
        $ausgabe .= 'E-Mail : ' . htmlspecialchars($_POST['email']) . "\n";
      }
      else {
        $fehler .= '<span style="color:red">Keine E-Mail-Adresse angegeben!</span><br />';
        $emailOK = false;
      }
     
      if (isset($_POST['telefon']) && !is_array($_POST['telefon']) && $_POST['telefon'] != '') {
        $ausgabe .= 'Telefon : ' . htmlspecialchars($_POST['telefon']) . "\n";
      }
     
      if (isset($_POST['fax']) && !is_array($_POST['fax']) && $_POST['fax'] != '') {
        $ausgabe .= 'Fax : ' . htmlspecialchars($_POST['fax']) . "\n";
      }
     
      if (isset($_POST['kommentar']) && !is_array($_POST['kommentar']) && $_POST['kommentar'] != '') {
        $ausgabe .= 'Kommentar : ' . htmlspecialchars($_POST['kommentar']) . "\n";
      }
      else {
        $fehler .= '<span style="color:red">Keine Nachricht angegeben!</span><br />';
        $kommentarOK = false;
      }
      if ($fehler == '') {
        mail('kontakt@mister-wine.de', 'Kontaktformular Berghaus Lerchenstüble, 72461 Albstadt-Tailfingen', $ausgabe);
        echo '<b><font color="green">Wir haben Ihre Nachricht erhalten und werden diese schnellstm&ouml;glich bearbeiten.</font></b><br /><br />';
      }
      else {
        echo $fehler;
      }
    }
  ?>
    <p>
      <form action="<?php echo htmlspecialchars($_SERVER['PHP_SELF']); ?>?p=4b&m=bl&b=bl" method="POST">
        <table width="550">
          <tr>
            <td style="vertical-align: top">Name :</td>
            <td style="vertical-align: top"><input class="rahmen" type="text" name="name" size="40" value="<?php
              if (isset($_POST['name']) && !is_array($_POST['name'])) {
                echo htmlspecialchars($_POST['name']);
              }
            ?>" />
              <?php
                if (!$nameOK) {
                  echo '<span style="color:red">&nbsp;&nbsp;*</span>';
                }
              ?>
            </td>
          </tr>
          <tr>
            <td style="vertical-align: top">Stra&szlig;e :</td>
            <td style="vertical-align: top"><input class="rahmen" type="text" name="strasse" size="40" value="<?php
              if (isset($_POST['strasse']) && !is_array($_POST['strasse'])) {
                echo htmlspecialchars($_POST['strasse']);
              }
            ?>" />
            </td>
          </tr>
          <tr>
            <td style="vertical-align: top">PLZ und Ort :</td>
            <td style="vertical-align: top"><input class="rahmen" type="text" name="plz_ort" size="40" value="<?php
              if (isset($_POST['plz_ort']) && !is_array($_POST['plz_ort'])) {
                echo htmlspecialchars($_POST['plz_ort']);
              }
            ?>" />
            </td>
          </tr>
          <tr>
            <td style="vertical-align: top">Land :</td>
            <td style="vertical-align: top"><input class="rahmen" type="text" name="land" size="40" value="<?php
              if (isset($_POST['land']) && !is_array($_POST['land'])) {
                echo htmlspecialchars($_POST['land']);
              }
            ?>" />
            </td>
          </tr>
          <tr>
            <td style="vertical-align: top">E-Mail :</td>
            <td style="vertical-align: top"><input class="rahmen" type="text" name="email" size="40" value="<?php
              if (isset($_POST['email']) && !is_array($_POST['email'])) {
                echo htmlspecialchars($_POST['email']);
              }
            ?>" />
              <?php
                if (!$emailOK) {
                  echo '<span style="color:red">&nbsp;&nbsp;*</span>';
                }
              ?>
            </td>
          </tr>
          <tr>
            <td style="vertical-align: top">Telefon :</td>
            <td style="vertical-align: top"><input class="rahmen" type="text" name="telefon" size="40" value="<?php
              if (isset($_POST['telefon']) && !is_array($_POST['telefon'])) {
                echo htmlspecialchars($_POST['telefon']);
              }
            ?>" />
            </td>
          </tr>
          <tr>
            <td style="vertical-align: top">Fax :</td>
            <td style="vertical-align: top"><input class="rahmen" type="text" name="fax" size="40" value="<?php
              if (isset($_POST['fax']) && !is_array($_POST['fax'])) {
                echo htmlspecialchars($_POST['fax']);
              }
            ?>" />
            </td>
          </tr>
          <tr>
            <td style="vertical-align: top">Nachricht :</td>
            <td style="vertical-align: top"><textarea class="rahmen" rows="5"  cols="30" name="kommentar" value="<?php
              if (isset($_POST['kommentar']) && !is_array($_POST['kommentar'])) {
                echo htmlspecialchars($_POST['kommentar']);
              }
            ?>" /></textarea>
              <?php
                if (!$kommentarOK) {
                  echo '<span style="color:red">&nbsp;&nbsp;*</span>';
                }
              ?>
            </td>
          </tr>
          <tr>
            <td colspan="2">
         <p align="center"><input type="image" name="submit" src="../images/button-formular-absenden.png" alt="Reservierung absenden" /></td>
          </tr>
        </table>
      </form>
    </p>



Gruß,

Bodo


__________________________________________________
www.ass-online.eu
18 März 2008 10:27
Benutzer-Profile anzeigen Private Nachricht senden MSN Messenger
Matthias
Gast

Beitrag Antworten mit Zitat

Ich versuchs mal, ich schick dir dann den fertigen code, wenn ichs hinkriege
18 März 2008 18:00
Matthias
Gast

Beitrag Antworten mit Zitat

also ein fehler ist da nicht drin, da muss man das wahrscheinlich komplett neu überarbeiten.
Versuchs mal damit, ist erst mal ne billig lösung, funktioniert vielleicht auch nicht:
PHP-Code:
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
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
<?php
      $nameOK 
true;
      
$emailOK true;
      
$kommentarOK true;
      
$kommentar2 false;

      if (isset(
$_POST['submit_x']) && isset($_POST['submit_y'])) {
           
      
$ausgabe '';
      
$fehler '';
     
      if (isset(
$_POST['name']) && !is_array($_POST['name']) && $_POST['name'] != '') {
        
$ausgabe .= 'Name : ' htmlspecialchars($_POST['name']) . "\n";
      }
      else {
        
$fehler .= '<span style="color:red">Kein Name angegeben!</span><br />';
        
$nameOK false;
      }
     
      if (isset(
$_POST['strasse']) && !is_array($_POST['strasse']) && $_POST['strasse'] != '') {
        
$ausgabe .= 'Strasse : ' htmlspecialchars($_POST['strasse']) . "\n";
      }
     
      if (isset(
$_POST['plz_ort']) && !is_array($_POST['plz_ort']) && $_POST['plz_ort'] != '') {
        
$ausgabe .= 'PLZ und Ort : ' htmlspecialchars($_POST['plz_ort']) . "\n";
      }
     
      if (isset(
$_POST['land']) && !is_array($_POST['land']) && $_POST['land'] != '') {
        
$ausgabe .= 'Land : ' htmlspecialchars($_POST['land']) . "\n";
      }
     
      if (isset(
$_POST['email']) && !is_array($_POST['email']) && $_POST['email'] != '') {
        
$ausgabe .= 'E-Mail : ' htmlspecialchars($_POST['email']) . "\n";
      }
      else {
        
$fehler .= '<span style="color:red">Keine E-Mail-Adresse angegeben!</span><br />';
        
$emailOK false;
      }
     
      if (isset(
$_POST['telefon']) && !is_array($_POST['telefon']) && $_POST['telefon'] != '') {
        
$ausgabe .= 'Telefon : ' htmlspecialchars($_POST['telefon']) . "\n";
      }
     
      if (isset(
$_POST['fax']) && !is_array($_POST['fax']) && $_POST['fax'] != '') {
        
$ausgabe .= 'Fax : ' htmlspecialchars($_POST['fax']) . "\n";
      }
     
      if (isset(
$_POST['kommentar']) && !is_array($_POST['kommentar']) && $_POST['kommentar'] != '') {
        
$ausgabe .= 'Kommentar : ' htmlspecialchars($_POST['kommentar']) . "\n";
      }
      else {
        
$fehler .= '<span style="color:red">Keine Nachricht angegeben!</span><br />';
        
$kommentarOK false;
      }
      if (
$fehler == '') {
        
mail('kontakt@mister-wine.de''Kontaktformular Berghaus Lerchenstüble, 72461 Albstadt-Tailfingen'$ausgabe);
        echo 
'<b><font color="green">Wir haben Ihre Nachricht erhalten und werden diese schnellstm&ouml;glich bearbeiten.</font></b><br /><br />';
      }
      else {
        echo 
$fehler;
      }
    }
  
?>
    <p>
      <form action="<?php echo htmlspecialchars($_SERVER['PHP_SELF']); ?>?p=4b&m=bl&b=bl" method="POST">
        <table width="550">
          <tr>
            <td style="vertical-align: top">Name :</td>
            <td style="vertical-align: top"><input class="rahmen" type="text" name="name" size="40" value="<?php
              
if (isset($_POST['name']) && !is_array($_POST['name'])) {
                echo 
htmlspecialchars($_POST['name']);
              }
            
?>" />
              <?php
                
if (!$nameOK) {
                  echo 
'<span style="color:red">&nbsp;&nbsp;*</span>';
                }
              
?>
            </td>
          </tr>
          <tr>
            <td style="vertical-align: top">Stra&szlig;e :</td>
            <td style="vertical-align: top"><input class="rahmen" type="text" name="strasse" size="40" value="<?php
              
if (isset($_POST['strasse']) && !is_array($_POST['strasse'])) {
                echo 
htmlspecialchars($_POST['strasse']);
              }
            
?>" />
            </td>
          </tr>
          <tr>
            <td style="vertical-align: top">PLZ und Ort :</td>
            <td style="vertical-align: top"><input class="rahmen" type="text" name="plz_ort" size="40" value="<?php
              
if (isset($_POST['plz_ort']) && !is_array($_POST['plz_ort'])) {
                echo 
htmlspecialchars($_POST['plz_ort']);
              }
            
?>" />
            </td>
          </tr>
          <tr>
            <td style="vertical-align: top">Land :</td>
            <td style="vertical-align: top"><input class="rahmen" type="text" name="land" size="40" value="<?php
              
if (isset($_POST['land']) && !is_array($_POST['land'])) {
                echo 
htmlspecialchars($_POST['land']);
              }
            
?>" />
            </td>
          </tr>
          <tr>
            <td style="vertical-align: top">E-Mail :</td>
            <td style="vertical-align: top"><input class="rahmen" type="text" name="email" size="40" value="<?php
              
if (isset($_POST['email']) && !is_array($_POST['email'])) {
                echo 
htmlspecialchars($_POST['email']);
              }
            
?>" />
              <?php
                
if (!$emailOK) {
                  echo 
'<span style="color:red">&nbsp;&nbsp;*</span>';
                }
              
?>
            </td>
          </tr>
          <tr>
            <td style="vertical-align: top">Telefon :</td>
            <td style="vertical-align: top"><input class="rahmen" type="text" name="telefon" size="40" value="<?php
              
if (isset($_POST['telefon']) && !is_array($_POST['telefon'])) {
                echo 
htmlspecialchars($_POST['telefon']);
              }
            
?>" />
            </td>
          </tr>
          <tr>
            <td style="vertical-align: top">Fax :</td>
            <td style="vertical-align: top"><input class="rahmen" type="text" name="fax" size="40" value="<?php
              
if (isset($_POST['fax']) && !is_array($_POST['fax'])) {
                echo 
htmlspecialchars($_POST['fax']);
              }
            
?>" />
            </td>
          </tr>
          <tr>
            <td style="vertical-align: top">Nachricht :</td>
            <td style="vertical-align: top">
            <textarea class="rahmen" rows="5"  cols="30" name="kommentar" value="<?php
              
if (isset($_POST['kommentar']) && !is_array($_POST['kommentar'])) {
                echo 
htmlspecialchars($_POST['kommentar']);
              }
            
?>" />
            </textarea>
              <?php
                
if (!$kommentarOK) {
                  echo 
'<span style="color:red">&nbsp;&nbsp;*</span>';
                }

                if (!
$kommentar2) {
                  echo
'<span style="color:red>$_POST['kommentar']</span>
                }
              ?>
            </td>
          </tr>
          <tr>
            <td colspan="2">
         <p align="center"><input type="image" name="submit" src="../images/button-formular-absenden.png" alt="Reservierung absenden" /></td>
          </tr>
        </table>
      </form>
    </p>
18 März 2008 18:11
Werner
Homepage-Total.de
Moderator

Beitrag Antworten mit Zitat

Das Textarea hat kein Value-Attribut!
Code:
<textarea> Inhalt </textarea>

_________________
Bei Fragen oder Fehlermeldungen - Bitte ausführlichen Code posten!
Wie man Fragen richtig stellt
18 März 2008 19:44
Benutzer-Profile anzeigen Private Nachricht senden Website dieses Benutzers besuchen
ass-online.eu
Mitglied

Beitrag Antworten mit Zitat

Hallo,

danke für die Antworten.

Matthias: Der Code klappt leider nicht.

Werner: Bedeutet das, dass ich den Wert nicht weitergeben kann, wie bei allen anderen Feldern? Also dass das Feld imer leer bleiben wird, wenn das Formular verschickt wurde und das Fenster neu geladen wird? Gibt es dann ggf. noch eine Alternative, dies zu realisieren?

_________________
==============================

www.assonline.kilu.de

Schreibbüro und Werbeagentur in 72458 Albstadt

Webdesign, Printdesign, allgemeine Bürodienstleistung, ...
19 März 2008 01:11
Benutzer-Profile anzeigen Private Nachricht senden MSN Messenger
Forrest Gumb
Mitglied

Beitrag Antworten mit Zitat

Hallo,
an Ass und an Matthias --> Ihr habt in euren Codes die E-Mail Adresse nicht in xxxxx@xxx.xx geändert. Die Robots schaun doch bestimmt auch auf diese Seite.

_________________
4rest
Wende Dein Gesicht ins Licht, dann werden die Schatten hinter Dir sein.
[ forrest ] - [ more ]
19 März 2008 16:55
Benutzer-Profile anzeigen Private Nachricht senden Website dieses Benutzers besuchen
Werner
Homepage-Total.de
Moderator

Beitrag Antworten mit Zitat

ass-online.eu hat Folgendes geschrieben:
Werner: Bedeutet das, dass ich den Wert nicht weitergeben kann, ...

Den Text einfach zwischen den Textarea-Tags einfügen...
PHP-Code:
1
2
3
4
5
6
7
<textarea class="rahmen" rows="5"  cols="30" name="kommentar" />
<?php
              
if (isset($_POST['kommentar']) && !is_array($_POST['kommentar'])) {
                echo 
htmlspecialchars($_POST['kommentar']);
              }
            
?>
 </textarea>

_________________
Bei Fragen oder Fehlermeldungen - Bitte ausführlichen Code posten!
Wie man Fragen richtig stellt
19 März 2008 22:00
Benutzer-Profile anzeigen Private Nachricht senden Website dieses Benutzers besuchen
ass-online.eu
Mitglied

Beitrag Antworten mit Zitat

Hallo Werner,

ich danke Dir herzlichst für die Hilfe.

Dass ich aber auch selbst nicht darauf gekommen bin

_________________
==============================

www.assonline.kilu.de

Schreibbüro und Werbeagentur in 72458 Albstadt

Webdesign, Printdesign, allgemeine Bürodienstleistung, ...
19 März 2008 22:33
Benutzer-Profile anzeigen Private Nachricht senden MSN Messenger
axinio Internet Marketing
Beiträge der letzten Zeit anzeigen:   
Neues Thema eröffnen   Neue Antwort erstellen    Webmaster Forum -> Hilfe für Webmaster Alle Zeiten sind GMT + 1 Stunde
Seite 1 von 1

 
Gehe zu:  

Ähnliche Beiträge
Thema Webmaster Forum Antw. Autor Verfasst am
Keine neuen Beiträge Doppelmenue bei ID in <form> ge... Javascript 9 Phil1710 04 Feb 2012 12:17 Letzten Beitrag anzeigen
Keine neuen Beiträge Homepage läuft nicht mit dem Internet... CSS 1 CharlotteG 08 Dez 2011 15:42 Letzten Beitrag anzeigen
Keine neuen Beiträge Angehängte Bilder werden übermittelt,... PHP / MySQL 3 Casadero 19 Nov 2011 19:17 Letzten Beitrag anzeigen
Keine neuen Beiträge Terminkalender Probleme - Transparenz... PHP / MySQL 0 Gast 27 Okt 2011 21:47 Letzten Beitrag anzeigen
Keine neuen Beiträge es werden nur die Vorkommen aus dem e... PHP / MySQL 1 rernanded 10 Okt 2011 00:32 Letzten Beitrag anzeigen