← Javascript

[Duvida] JQuery + PHP

Lida 16463 vezes

Offline

Aserty 
Membro
Mensagens 10 Gostos 0
Troféus totais: 17
Trófeus: (Ver todos)
Super Combination Combination Topic Starter Level 3 Level 2 Level 1 10 Posts First Post Karma Avatar

@Pedro Magalhães: Já tinha tentado assim e também nao funcionou.

Antes de mais muito obrigado pelas respostas :)

Vou então seguir o conselho e fazer em php. Depois dou noticias ;)

Já agora outro problema que estou a ter é que ao carregar no submit vai para o index. Porque será?
Offline

Jota 
Editor
Mensagens 773 Gostos 0
Feedback +1

Troféus totais: 27
Trófeus: (Ver todos)
Super Combination Combination Topic Starter 10 Poll Votes Poll Voter Level 5 Level 4 Level 3 Level 2 Level 1

Hmm..

Ignora-me se o que queres mesmo e misturares PHP com javascript.

Mas para o exemplo que das, nao percebo porque nao fazes a validacao do email usando javascript. E so depois submeteres a forma.

Código: [Seleccione]
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.8.1/jquery.min.js" type="text/javascript"></script>
<script type="text/javascript">
$(document).ready (function() {
$("#registerFail").hide();

    $("form").submit(function() {
      var email = $('input[name="registerEmail"]').val();

      if (email == '') {
        $("#registerFail").show();
        return false;
      } else {
        $("#registerFail").hide();
        return true;
      }
    });
});
</script>
 
<?php
if (isset($_POST['registerButton'])) {
$registerEmail $_POST['registerEmail'];
  echo 
'A forma foi submitida com um email';
}
?>

</head>
 
<body>
<div id="mainLoginRegister">
<div id="mainRegister" class="box">
 
    <form action="<?php $_SERVER['PHP_SELF']; ?>" method="post">
        <p id="createAccountText" class="titleBig">Create your account</p>
            <br />
            <center><hr width="300" /><br />
            <div id="registerFail" class="box" >
            <p id="invalidEmail" class="invalidLoginData">Email already registered or not valid</p>
            </div>
            </center>
        <p>Please, introduce your e-mail to create an account</p>
            <br />
            <center>
    <table border="0">
        <tr>
            <td>E-Mail:</td>
          </tr>
                <tr>
                <td><input id="" type="text" name="registerEmail" class="field" size="40" /></td>
                </tr>
                <tr>
                <td>&nbsp;</td>
                </tr>
            <tr>
            <td><input id="" type="submit" value="Register" name="registerButton" class="search-submit" /></td>
            </tr>
        </table>
            </center>
        </form>
    </div>
</div>
</body>
</html>
Offline

filipetm 
Membro
Mensagens 31 Gostos 0
Troféus totais: 20
Trófeus: (Ver todos)
Super Combination Combination Topic Starter Poll Voter Level 4 Level 3 Level 2 Level 1 10 Posts First Post

Já agora outro problema que estou a ter é que ao carregar no submit vai para o index. Porque será?

Falta-te apenas o echo no atributo action do form.

Código: [Seleccione]
<form action="<?php $_SERVER['PHP_SELF']; ?>" method="post">
Deveria ser:

Código: [Seleccione]
<form action="<?php echo $_SERVER['PHP_SELF']; ?>" method="post">
O que está a acontecer é que nada está a ser imprimido e portanto fica "", daí ele fazer post para a página inicial.
Offline

Aserty 
Membro
Mensagens 10 Gostos 0
Troféus totais: 17
Trófeus: (Ver todos)
Super Combination Combination Topic Starter Level 3 Level 2 Level 1 10 Posts First Post Karma Avatar

Era mesmo isso que me estava a faltar, obrigado!

Agora surgiu noutro problema que é o seguinte, eu tenho uma div onde carrego as páginas quando escolho uma opção do menu, por exemplo, se carregar no botão 'home' a página home vai aparecer nessa div, se carregar no botão 'contatos' vai aparecer a página contatos nessa div e por aí fora.

Acontece que quando eu carrego no submit do form em que faço o echo $_SERVER['PHP_SELF'], ele vai carregar só essa página no browser em vez de na div. O que me falta?
Offline

filipetm 
Membro
Mensagens 31 Gostos 0
Troféus totais: 20
Trófeus: (Ver todos)
Super Combination Combination Topic Starter Poll Voter Level 4 Level 3 Level 2 Level 1 10 Posts First Post

Era mesmo isso que me estava a faltar, obrigado!

Agora surgiu noutro problema que é o seguinte, eu tenho uma div onde carrego as páginas quando escolho uma opção do menu, por exemplo, se carregar no botão 'home' a página home vai aparecer nessa div, se carregar no botão 'contatos' vai aparecer a página contatos nessa div e por aí fora.

Acontece que quando eu carrego no submit do form em que faço o echo $_SERVER['PHP_SELF'], ele vai carregar só essa página no browser em vez de na div. O que me falta?

Como é que estás a carregar as páginas nessa div quando o utilizador escolhe uma opção do menu? Tens um link para home.php, contactos.php ou já tens estas páginas todas carregadas e escondes/mostras divs usando jQuery?

Se tiveres isto público manda o URL que assim é mais fácil de te ajudar.