imported_Conny
18.10.2005, 22:45
Hallo Allerseits
Dank Eurer Hilfe habe ich nun eine Formularkontrolle wie sie mir gefällt. (Hier gefunden (http://www.getfreelancer.de/t2337_formular_klappt_nicht.html))
Soweit klappt dies auch, jedoch nicht so ganz wie ich es wünsche und hoffe deshalb auf Eure Unterstützung da ich von PHP auch noch nicht gewaltig viel Ahnung habe.
Mein Anliegen:
Ich möchte nur eine Datei (kontakt.php) verwenden.
Ich rufe wegen der Formularkontrolle das Kontaktformular auf (funktioniert).
Nach dem Absenden soll der Text oberhalb vom Formular und das Formular nicht mehr sichtbar sein, dafür aber der "Sendebestätigungstext".
Wie muss ich den Text oberhalb vom Formular und die Tabelle mit dem Formular ins PHP einbetten, dass ich beim erfolgreichen Absenden nur den Sendebestätigungstext auf der Seite angezeigt bekomme?
Mit "echo" habe ich es schon versucht, aber das klappt irgendwie nicht wegen den "Value-Angaben". Oder ich habe dabei was falsch gemacht.
Im Moment ist es logischerweise so, dass wenn das Formular erfolgreich abgesendet wurde, das Formular mit den gesamten Eingaben da steht und unterhalb der Sendebestätigungstext ist.
Ich habe auch versucht mit "action" auf eine Bestätigungsseite, aber dann klappt ja die Formularkontrolle nicht mehr und das Formular kann auch unvollständig abgeschickt werden. :rolleyes:
Vielen Dank im Voraus für Eure Unterstützung.
Bin für jeden Tipp dankbar
Mfg Conny :)
So sieht mein Formular aus:
Text oberhalb vom Formular welches in einer 2spaltigen Tabelle ist
...
<form action="index.php?section=kontakt&action=kontakt" method="post" id="kontakt">
<input type="hidden" name="subject" value="Mitteilung von www.xxxxxxxx.xx">
<table width="620" border="0">
<tr>
<td width="317" valign="top">
<p class="angaben"><br>
<label class="left" for="Firma" ACCESSKEY="F"><span class="label"><u>F</u>irma</span></label>
<input type="text" name="Firma" value="<?php echo $Firma; ?>" id="Firma" title="Name der Firma" tabindex="1" size="30"><br>
<label class="left" for="Branche" ACCESSKEY="B"><span class="label"><u>B</u>ranche</span></label>
<input type="text" name="Branche" value="<?php echo $Branche; ?>" id="Branche" title="In welcher Branche ist Ihr Unternehmen tätig?" tabindex="2" size="30
...
...
...
</p>
<?php
if(isset($_POST['action']) && ($_POST['action']=='senden'))
{
// Prueft ob die Felder ausgefuellt wurden falls nicht komm eine Fehlermeldung
if(!$Firma) $fehler[] = "Bitte tragen Sie den Firmennamen ein.";
if(!$Branche) $fehler[] = "Bitte tragen Sie die Branche in der Ihr Unternehmen tätig ist ein.";
if(!$Ansprechpartner) $fehler[] = "Bitte tragen Sie den Ansprechpartner ein.";
if(!$Position) $fehler[] = "Welche Position im Unternehmen präsentieren Sie?";
if(!$Anschrift) $fehler[] = "Tragen Sie bitte die Anschrift ein.";
if(!$Ort) $fehler[] = "Geben Sie bitte PLZ und Ort ein.";
if(!$Telefon) $fehler[] = "Geben Sie bitte die Telefonnummer ein.";
if(!$Mitteilung) $fehler[] = "Haben Sie schon einige Mitteilungen für mich? Kann ich schon etwas Konkretes für Sie vorbereiten?";
if(!$sendermail) $fehler[] = "Tragen Sie bitte Ihre E-Mail Adresse ein. Eine Kopie erhalten Sie nach dem Absenden.";
if(!count($fehler))
{
// Sendet Email, wenn Prüfung "ok"
echo("<p>Sendebestätigung:<br><br><br>Vielen Dank für Ihr Interesse.<br><br>Ihre Mitteilung wurde erfolgreich an xxxxxxxx gesendet.<br>
Sie erhalten eine Bestätigungsmail an $sendermail<br><br>
Mit freundliche Grüssen<br>xxxxxxxxxx<p>\n\n");
mail("$to", "$subject", "Mitteilung von $geschlecht $Ansprechpartner\n\n
Firma: $Firma\nBranche: $Branche\nAnrede: $geschlecht\nAnsprechpartner: $Ansprechpartner\nPosition: $Position\nAnschrift: $Anschrift\nOrt: $Ort\nTel: $Telefon\nE-Mail: $sendermail\n\nMitteilung:\n$Mitteilung","From:$sendermail");
mail("$sendermail", "Ihr Mitteilung an xxxxxxx www.xxxxxxxx.xx", "Ihre Angaben wurde mit folgenden Inhalt erfolgreich an xxxxxxxxxxx gesendet.\n
Firma: $Firma\nBranche: $Branche\nAnrede: $geschlecht\nAnsprechpartner: $Ansprechpartner\nPosition: $Position\nAnschrift: $Anschrift\nOrt: $Ort\nTel: $Telefon\nE-Mail: $sendermail\n\nIhre Mitteilung:\n$Mitteilung\n\n-------------------------\n
Besten Dank für Ihre Kontaktaufnahme.\n
Ich werde Ihr Schreiben schnellstmöglich bearbeiten.\n
Mit freundlichen Grüssen\xxxxxx\n-------------------------\n$web\n$to","From: xxxxxxxx <xxxx@xxxxx.xx>");
}
else
{
// Fehlerausgabe, wenn Felder leer waren
echo "<br><font size=2 face=Verdana, Arial, Helvetica, sans-serif color=red><b>Bitte füllen Sie alle notwendigen Felder aus:</b></font>";
echo "<font size=1 face=Verdana, Arial, Helvetica, sans-serif color=red><ul><li>".implode("<li>",$fehler)."</ul></font>";
}
}
?>
</td>
<td width="303" valign="top"><br><br>
Ihre Mitteilung<br>
<textarea name="Mitteilung" id="Mitteilung" title="Haben Sie vorab schon konkrete Fragen?
Kann ich für Sie schon Vorabklärungen oder bestimmte Vorbereitungen treffen?" tabindex="11" cols="45" rows="7"><?php echo $Mitteilung; ?></textarea>
<br>
<input type="hidden" name="action" value="senden">
<input class="senden" type="submit" name="Submit" value="Mitteilung senden">
<input type="hidden" name="an" value="xxxxx@xxxxxxxxx.xx">
</td>
</tr>
</table>
</form>
Dank Eurer Hilfe habe ich nun eine Formularkontrolle wie sie mir gefällt. (Hier gefunden (http://www.getfreelancer.de/t2337_formular_klappt_nicht.html))
Soweit klappt dies auch, jedoch nicht so ganz wie ich es wünsche und hoffe deshalb auf Eure Unterstützung da ich von PHP auch noch nicht gewaltig viel Ahnung habe.
Mein Anliegen:
Ich möchte nur eine Datei (kontakt.php) verwenden.
Ich rufe wegen der Formularkontrolle das Kontaktformular auf (funktioniert).
Nach dem Absenden soll der Text oberhalb vom Formular und das Formular nicht mehr sichtbar sein, dafür aber der "Sendebestätigungstext".
Wie muss ich den Text oberhalb vom Formular und die Tabelle mit dem Formular ins PHP einbetten, dass ich beim erfolgreichen Absenden nur den Sendebestätigungstext auf der Seite angezeigt bekomme?
Mit "echo" habe ich es schon versucht, aber das klappt irgendwie nicht wegen den "Value-Angaben". Oder ich habe dabei was falsch gemacht.
Im Moment ist es logischerweise so, dass wenn das Formular erfolgreich abgesendet wurde, das Formular mit den gesamten Eingaben da steht und unterhalb der Sendebestätigungstext ist.
Ich habe auch versucht mit "action" auf eine Bestätigungsseite, aber dann klappt ja die Formularkontrolle nicht mehr und das Formular kann auch unvollständig abgeschickt werden. :rolleyes:
Vielen Dank im Voraus für Eure Unterstützung.
Bin für jeden Tipp dankbar
Mfg Conny :)
So sieht mein Formular aus:
Text oberhalb vom Formular welches in einer 2spaltigen Tabelle ist
...
<form action="index.php?section=kontakt&action=kontakt" method="post" id="kontakt">
<input type="hidden" name="subject" value="Mitteilung von www.xxxxxxxx.xx">
<table width="620" border="0">
<tr>
<td width="317" valign="top">
<p class="angaben"><br>
<label class="left" for="Firma" ACCESSKEY="F"><span class="label"><u>F</u>irma</span></label>
<input type="text" name="Firma" value="<?php echo $Firma; ?>" id="Firma" title="Name der Firma" tabindex="1" size="30"><br>
<label class="left" for="Branche" ACCESSKEY="B"><span class="label"><u>B</u>ranche</span></label>
<input type="text" name="Branche" value="<?php echo $Branche; ?>" id="Branche" title="In welcher Branche ist Ihr Unternehmen tätig?" tabindex="2" size="30
...
...
...
</p>
<?php
if(isset($_POST['action']) && ($_POST['action']=='senden'))
{
// Prueft ob die Felder ausgefuellt wurden falls nicht komm eine Fehlermeldung
if(!$Firma) $fehler[] = "Bitte tragen Sie den Firmennamen ein.";
if(!$Branche) $fehler[] = "Bitte tragen Sie die Branche in der Ihr Unternehmen tätig ist ein.";
if(!$Ansprechpartner) $fehler[] = "Bitte tragen Sie den Ansprechpartner ein.";
if(!$Position) $fehler[] = "Welche Position im Unternehmen präsentieren Sie?";
if(!$Anschrift) $fehler[] = "Tragen Sie bitte die Anschrift ein.";
if(!$Ort) $fehler[] = "Geben Sie bitte PLZ und Ort ein.";
if(!$Telefon) $fehler[] = "Geben Sie bitte die Telefonnummer ein.";
if(!$Mitteilung) $fehler[] = "Haben Sie schon einige Mitteilungen für mich? Kann ich schon etwas Konkretes für Sie vorbereiten?";
if(!$sendermail) $fehler[] = "Tragen Sie bitte Ihre E-Mail Adresse ein. Eine Kopie erhalten Sie nach dem Absenden.";
if(!count($fehler))
{
// Sendet Email, wenn Prüfung "ok"
echo("<p>Sendebestätigung:<br><br><br>Vielen Dank für Ihr Interesse.<br><br>Ihre Mitteilung wurde erfolgreich an xxxxxxxx gesendet.<br>
Sie erhalten eine Bestätigungsmail an $sendermail<br><br>
Mit freundliche Grüssen<br>xxxxxxxxxx<p>\n\n");
mail("$to", "$subject", "Mitteilung von $geschlecht $Ansprechpartner\n\n
Firma: $Firma\nBranche: $Branche\nAnrede: $geschlecht\nAnsprechpartner: $Ansprechpartner\nPosition: $Position\nAnschrift: $Anschrift\nOrt: $Ort\nTel: $Telefon\nE-Mail: $sendermail\n\nMitteilung:\n$Mitteilung","From:$sendermail");
mail("$sendermail", "Ihr Mitteilung an xxxxxxx www.xxxxxxxx.xx", "Ihre Angaben wurde mit folgenden Inhalt erfolgreich an xxxxxxxxxxx gesendet.\n
Firma: $Firma\nBranche: $Branche\nAnrede: $geschlecht\nAnsprechpartner: $Ansprechpartner\nPosition: $Position\nAnschrift: $Anschrift\nOrt: $Ort\nTel: $Telefon\nE-Mail: $sendermail\n\nIhre Mitteilung:\n$Mitteilung\n\n-------------------------\n
Besten Dank für Ihre Kontaktaufnahme.\n
Ich werde Ihr Schreiben schnellstmöglich bearbeiten.\n
Mit freundlichen Grüssen\xxxxxx\n-------------------------\n$web\n$to","From: xxxxxxxx <xxxx@xxxxx.xx>");
}
else
{
// Fehlerausgabe, wenn Felder leer waren
echo "<br><font size=2 face=Verdana, Arial, Helvetica, sans-serif color=red><b>Bitte füllen Sie alle notwendigen Felder aus:</b></font>";
echo "<font size=1 face=Verdana, Arial, Helvetica, sans-serif color=red><ul><li>".implode("<li>",$fehler)."</ul></font>";
}
}
?>
</td>
<td width="303" valign="top"><br><br>
Ihre Mitteilung<br>
<textarea name="Mitteilung" id="Mitteilung" title="Haben Sie vorab schon konkrete Fragen?
Kann ich für Sie schon Vorabklärungen oder bestimmte Vorbereitungen treffen?" tabindex="11" cols="45" rows="7"><?php echo $Mitteilung; ?></textarea>
<br>
<input type="hidden" name="action" value="senden">
<input class="senden" type="submit" name="Submit" value="Mitteilung senden">
<input type="hidden" name="an" value="xxxxx@xxxxxxxxx.xx">
</td>
</tr>
</table>
</form>