Mam formularz e-mail PHP osadzony w górnej części HTML mojej strony formularza kontaktowego (index.php):
<?php
if (isset($_POST["submit"])) {
$name = $_POST["name"];
$email = $_POST["email"];
$message = $_POST["message"];
$from = "Camino Contact Form";
$to = "email@example.com";
$subject = "Message Contact Form ";
$body ="From: $namen E-Mail: $emailn Message:n $message";
if (!$errName && !$errEmail && !$errMessage) {
if (mail ($to, $subject, $body, $from)) {
$result="<div>Thank You! I will be in touch</div>";
} else {
$result="<div>Sorry there was an error sending your message.</div>";
}
}
}
?>
HTML:
<form role="form" method="post" action="index.php">
...
</form>
i chciałem ukryć formularz dopiero po pomyślnym przesłaniu. W jaki sposób mogę to zrobić?
Odpowiedzi:
0 dla odpowiedzi № 1W twoim pliku CSS;
.hide {
display:none;
}
(Jeśli nie masz pewności, jak to zrobić, to pytanie powinno pomóc)
Następnie wewnątrz PHP, jeśli blok;
$class = "";
if (mail ($to, $subject, $body, $from)) {
$result="<div>Thank You! I will be in touch</div>";
$class = "class="hide"";
} else {
$result="<div>Sorry there was an error sending your message.</div>";
}
i wreszcie na index.php:
<form role="form" method="post" action="index.php" <?php echo $class ?>>
Teraz możesz ukryć cały formularz z odrobiną CSS i zmienną dynamiczną.
Edytować:
Jeśli chcesz całkowicie uniknąć korzystania z zewnętrznego lub wewnętrznego pliku CSS, możesz zastosować CSS bezpośrednio do elementu HTML tak jak to;
$style = "style = "display:none;"";
Alternatywne podejście, jeśli nie używasz arkuszy stylów ani żadnego innego CSS.
0 dla odpowiedzi nr 2
Aby ukryć formularz po przesłaniu i wysłaniu wiadomości e-mail, podaj identyfikator formularza (tutaj jego identyfikator = "myForm", a następnie użyj stylu do wyświetlenia: brak, jak pokazano poniżej)
<?php if (isset ($ _ POST [„upload”]))) { $ name = $ _POST [„name”]; $ email = $ _POST [„email”]; $ message = $ _POST [„message”]; $ from = "Formularz kontaktowy Camino"; $ do = „email@example.com”; $ subject = „Formularz kontaktowy wiadomości”; $ body = "Od: $ namen E-mail: $ emailn Wiadomość: n $ wiadomość"; if (! $ errName &&! $ errEmail &&! $ errMessage) { if (mail ($ to, $ subject, $ body, $ from)) { $ result = "<div> Dziękuję! Będę w kontakcie </div>"; echo "<style> #myForm {display: none;} </style>"; } else { $ result = "<div> Przepraszamy, wystąpił błąd podczas wysyłania wiadomości. </div>"; echo "<style> #myForm {display: block;} </style>"; } } } ?> <form role = "form" method = "post" action = "index.php" id = "myForm"> </form>