Jump to content

[Resolvido] Ajuda com Update


Wise
 Share

Recommended Posts

Boas pessoal do P@P

Tenho uma dúvida que se fosse possível gostaria que me ajudassem a resolver.. Era com alguma urgência :s

Basicamente eu tenho um formulário onde esta a buscar os dados do utilizador que esta logado e tem os dados em inputs para poder editar e fazer um update ao sql..

So que não esta a funcionar e eu não sei mexer bem com o update :s

poderia dar-me uma ajuda??

Fica aqui o código:

<?
include('ligacao.php');
$q="
SELECT
users.id,
users.nome,
users.username,
users.email,
users.password,
users.morada,
users.cidade,
users.cdgpostal,
users.nif,
users.telf,
users.telem
FROM
users
WHERE users.id =  '$_SESSION[cli_id]'
";
$q=mysql_query($q);
    while($r=mysql_fetch_array($q)){
   echo "
<script type='text/javascript'>

  function checkForm(form)
  {
    if(form.password.value != '' && form.password.value == form.password2.value) {
      if(form.ppassword.value.length < 4) {
        alert('Error: Password must contain at least four characters!');
        form.password.focus();
        return false;
      }
      if(form.password.value == form.username.value) {
        alert('Error: Password must be different from Username!');
        form.password.focus();
        return false;
      }
      re = /[0-9]/;
      if(!re.test(form.password.value)) {
        alert('Error: password must contain at least one number (0-9)!');
        form.password.focus();
        return false;
      }
      re = /[a-z]/;
      if(!re.test(form.password.value)) {
        alert('Error: password must contain at least one lowercase letter (a-z)!');
        form.password.focus();
        return false;
      }
      re = /[A-Z]/;
      if(!re.test(form.password.value)) {
        alert('Error: password must contain at least one uppercase letter (A-Z)!');
        form.password.focus();
        return false;
      }
    } else {
      alert('Error: Please check that youve entered and confirmed your password!');
      form.password.focus();
      return false;
    }

    alert('You entered a valid password: ' + form.password.value);
    return true;
  }

</script>
<div class='header1'>Adesão ao Serviço de Venda de Filmes</div>
<form method='post' name='update' action='#' onSubmit='return (checkForm(this) && false);'>
<fieldset>
<table width=100%>
   <tr>
    <div class=header2 >Passo 1: Dados da Conta:</div>
    <td align=left colspan=2  class=labelcell><label for=login >Login:</label></td>
     <td colspan=2  class=fieldcell > <input type=text  name=username value=$r[2] id=username   tabindex=1  /></td>
   </tr>
   <tr>
    <td align=left colspan=2 class=labelcell>Password:</td>
    <td colspan=2 class=fieldcell><input name=password type=password value=$r[4] id=password tabindex=2 size=30></td>
   </tr>
   <tr>
     <td align=left colspan=2 class=labelcell>Repetir password:</td>
     <td colspan=2 class=fieldcell><input type=password name=password2 id=password2 tabindex=3 size=30></td>
   </tr>
   <tr>
     <td align=left colspan=2 class=labelcell><label for=email>Email</label></td>
     <td colspan=2 class=fieldcell> <input type=text value=$r[3] name=email id=email tabindex=4 /></td>
   </tr>
      </table>
   <br><br>
<table width=100%>
   <div class=header2>Passo 2: Dados Pessoais:</div>
   <tr>
     <td align=left colspan=2 class=labelcell><label for=nome>Nome Completo:</label></td>
     <td colspan=2 class=fieldcell> <input type=text value=$r[1] name=nome id=nome tabindex=5 /></td>
   </tr>
   <tr>
     <td align=left colspan=2 class=labelcell><label for=morada>Morada</label></td>
     <td colspan=2 class=fieldcell> <input type=text value=$r[5] name=morada id=morada tabindex=6 /></td>
   </tr>
   <tr>
     <td align=left colspan=2 class=labelcell><label for=cidade>Cidade</label></td>
     <td colspan=2 class=fieldcell> <input type=text value=$r[6] name=cidade id=cidade tabindex=7 /></td>
   </tr>
   <tr>
   <td align=left colspan=2 class=labelcell><label for=cdgpostal>Código-Postal:</label></td>
   <td colspan=2 class=fieldcell> <input type=text value=$r[7] name=cdgpostal id=cdgpostal tabindex=8 /></td>
   </tr>
   <tr>
    <td align=left colspan=2 class=labelcell><label for=nif>NIF:</label></td>
   <td colspan=2 class=fieldcell> <input type=text value=$r[8] name=nif id=nif tabindex=10 /></td>
   </tr>
   <tr>
    <td align=left colspan=2 class=labelcell><label for=telefone>Telefone:</label></td>
   <td colspan=2 class=fieldcell> <input type=text  value=$r[9] name=telefone id=telefone tabindex=11 /></td>
   </tr>
   <tr>
    <td align=left colspan=2 class=labelcell><label for=telemovel>Telemovel:</label></td>
   <td colspan=2 class=fieldcell> <input type=text value=$r[10] name=telemovel id=telemovel tabindex=11/></td>
   </tr>
   </table>
<table>
<td><input type=submit name=enviar id=enviar value=Enviar registo tabindex=10 class=button/><input type=reset name=limpar  id=limpar value=Limpar Dados tabindex=11 class=button/></td>
</table>
   </fieldset>
   </form>
    ";
   
   }


$username = $_POST['username'];
$password = $_POST['password'];
$email = $_POST['email'];
$nome = $_POST['nome'];
$morada = $_POST['morada'];
$cidade = $_POST['cidade'];
$cdgpostal = $_POST['cdgpostal'];
$nif = $_POST['nif'];
$telefone = $_POST['telefone'];
$telemovel =  $_POST['telemovel'];
$sql="UPDATE users
SET username=$username, password=$password, email=$email, nome=$nome, morada=$morada, cidade=$cidade, cdgpostal=$cdgpostal, nif=$nif, telefone=$telefone, telemovel=$telemovel
WHERE id=$r[id]";

//echo "$sql";
   $resultado2=mysql_query($sql);

Cumprimentos

Link to comment
Share on other sites

Olá

Tens ai algumas coisas mal, até duvido que funcione correctamente.

Quanto ao teu problema, se bem percebi, queres que quando os dados sejam inseridos o form actualize com os respectivos updates né?

Se for isso tens aqui um solução, mas olha que é só uma solução básica, porque me parece que tens ai muita coisa mal.

Abraço

// Isto só deve ser executado quando o utilizador carregar no submit
// e não quando entra na página, por isso é necessário verificar se o utilizador faz submit ao form.
if (isset($_POST['enviar'])){
$username  = $_POST['username'];
$password = $_POST['password'];
$email = $_POST['email'];
$nome = $_POST['nome'];
$morada = $_POST['morada'];
$cidade = $_POST['cidade'];
$cdgpostal = $_POST['cdgpostal'];
$nif = $_POST['nif'];
$telefone = $_POST['telefone'];
$telemovel =  $_POST['telemovel'];
$sql="UPDATE users SET username=$username, password=$password, email=$email, nome=$nome, morada=$morada, cidade=$cidade, cdgpostal=$cdgpostal, nif=$nif, telefone=$telefone, telemovel=$telemovel
WHERE id=$r[id]";

//echo "$sql";
$resultado2=mysql_query($sql);

// Isto aqui vai fazer refresh a página, mas é só uma técnica básica
// podes usar também a função do php header("Location: localizacao_da_pagina") mas assim deve funcionar bem
// e não te irá dar problemas com os headers
echo '<meta http-equiv="refresh" content="0;url=#" />';
}
Link to comment
Share on other sites

Bem isso não resolveu mas ajudou 🙂

Isto foi lá com as ''

aqui fica a solução:

if (isset($_POST['enviar'])){
        $username  = $_POST['username'];
        $password = $_POST['password'];
        $email = $_POST['email'];
        $nome = $_POST['nome'];
        $morada = $_POST['morada'];
        $cidade = $_POST['cidade'];
        $cdgpostal = $_POST['cdgpostal'];
        $nif = $_POST['nif'];
        $telefone = $_POST['telefone'];
        $telemovel =  $_POST['telemovel'];
        $sql="UPDATE users SET username='$username', password='$password', email='$email', nome='$nome', morada='$morada', cidade='$cidade', cdgpostal='$cdgpostal', nif='$nif', telf='$telefone', telem='$telemovel'
        WHERE id='$_SESSION[cli_id]'";

        echo "$sql";
        $resultado2=mysql_query($sql);

header ("Location:index.php?opcao=editaperfil");
}

Obrigado 😕

Link to comment
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
 Share

×
×
  • 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.