Jump to content
miguel_macedo

Erros quando retrocedo

Recommended Posts

miguel_macedo

Bom Dia

Quando clico no botão reservar do formulário, os erros aparecem no site.! No entanto quando clico numa foto da galeria ( que tenho em baixo do formulário ) e retrocedo os erros parecem novamente. Como é que faço para que os erros só apareçam quando clico no botão da reserva ?

Aguardo Resposta

 

<section class="section section_reservation mt-5" id="reservation">
		<div class="container">
			<div class="row">
				<div class="col">
					<h2 class="text-center">Reserva Online</h2>
				</div>
			</div> 
			<div class="row justify-content-lg-center section_reservation__row">
				<div class="col-lg-8">
					<form class="section_reservation__form" method="post">
						<div class="row">
							<div class="col-md-6">
								<div class="form-group">
									<label class="sr-only">Nome Completo</label>
									<input type="text" class="form-control" name="name" placeholder="Nome Completo" value="<?= isset($name) ? $name : ""?>">
								</div>
								<div class="form-group">
									<label class="sr-only">Telemóvel</label>
									<input type="tel" class="form-control" name="tel" placeholder="Telemóvel" maxlength="9" value="<?= isset($tel) ? $tel : ""?>">
								</div>
								<div class="form-group">
									<label class="sr-only">E-mail</label>
									<input type="email" class="form-control" name="email" placeholder="E-mail" value="<?= isset($email) ? $email : ""?>">
								</div>
							</div>
							<div class="col-md-6">
								<div class="form-group">
									<label class="sr-only">Pessoas</label>
									<select class="form-control" name="people">
										<option value="" >Selecione</option>
										<option value="1" <?= isset($people) && $people == 1 ? "selected" : ""?>>1 pessoa</option>
										<option value="2" <?= isset($people) && $people == 2 ? "selected" : ""?>>2 pessoas</option>
										<option value="3" <?= isset($people) && $people == 3 ? "selected" : ""?>>3 pessoas</option>
										<option value="4" <?= isset($people) && $people == 4 ? "selected" : ""?>>4 pessoas</option>
										<option value="5" <?= isset($people) && $people == 5 ? "selected" : ""?>>5 pessoas</option>
									</select>
								</div>
								<div class="form-group">
									<label class="sr-only">Data</label>
									<input type="date" class="form-control" name="date" value="<?= isset($date) ? $date : ""?>">
								</div>
								<div class="form-group">
									<label class="sr-only">Time</label>
									<input type="time" class="form-control" name="time" value="<?= isset($time) ? $time : ""?>">
								</div>
							</div>
							<div class="col">
								<div class="text-center">
									<button type="submit" class="btn btn-primary">Reserve</button>
								</div>
							</div>
						</div>
					</form>
				</div>
			</div> 
		</div> 
    </section>

 

<?php
        $html = "";
        if(!empty($errors))
        {
            $html.='
                    <script>
                            window.onload = function() {
                                $("html, body").animate({
                                        scrollTop: $("#val_errors").offset().top
                                }, 2000);
                            };
                    </script>    

                  ';
            $html.='<div id="val_errors">';
            foreach($errors as $error)
            {
                $html.='<div class="alert alert-warning" role="alert">' . $error . '</div>';
            }
            $html.='</div>';
            print $html;
        }
    ?>

 

Edited by miguel_macedo

Share this post


Link to post
Share on other sites
Zex

O melhor seria usar primeiro um botão "submit" só para testar os dados.

<button onclick="testar_dados()"> submit </button>

E, depois, se os dados estivessem corretos então o javascript invocaria o "submit" da form.

document.myform.submit();

 

Edited by Zex

Share this post


Link to post
Share on other sites
miguel_macedo
3 minutos atrás, Zex disse:

O melhor seria usar primeiro um botão "submit" só para testar os dados.


<button onclick="testar_dados()"> submit </button>

E, depois, se os dados estivessem corretos então o javascript invocaria o "submit" da form.


document.myform.submit();

 

 

Para ser sincero, não percebi, ainda sou iniciante! Consegue exemplificar com o código que coloquei acima ?

Share this post


Link to post
Share on other sites
Zex

Quando se usa button type="submit" nunca se deve retroceder.

Share this post


Link to post
Share on other sites
Zex

Para testar o número de telemóvel tem que se acrescentar

pattern="9[0-9]{8}"

Exemplo:

<input type="tel" pattern="9[0-9]{8}" value="">

Share this post


Link to post
Share on other sites
miguel_macedo
7 horas atrás, Zex disse:

Para testar o número de telemóvel tem que se acrescentar

pattern="9[0-9]{8}"

Exemplo:

<input type="tel" pattern="9[0-9]{8}" value="">

Não percebeste a minha pergunta.

Quando clico no botão reservar do formulário, os erros aparecem no site.! No entanto quando clico numa foto da galeria ( que tenho em baixo do formulário ) e retrocedo os erros parecem novamente. Como é que faço para que os erros só apareçam quando clico no botão da reserva ?

Share this post


Link to post
Share on other sites
Zex

Essa técnica já não se usa.

É melhor esclareceres as dúvidas com o teu professor.

 

Edited by Zex

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

×
×
  • Create New...

Important Information

By using this site you accept our Terms of Use and Privacy Policy. We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.