Ir para conteúdo
Fórum Script Brasil
  • 0

AJUDA COM UPDATE


Everton Tenik

Pergunta

Então, não estou conseguindo alterar dados no meu banco via php, da o seguinte erro Desculpe! Erro no servidor.SQLSTATE[HY093]: Invalid parameter number: number of bound variables does not match number of tokens.

Form de Envio das alterações:

<?php
    session_start();
    include 'verifica.php';
    
    $servername = "localhost";
    $username = "admin";
    $password = "admin";
    $dbname = "darkfall";

    $usuario['capa'] = 'https://68.media.tumblr.com/838c894524088bb7da56a4bf4d0b02b1/tumblr_inline_ni4oi4VINS1sbavn0.png';
?>

<?php

 try {
        $conn = new PDO("mysql:host=$servername;dbname=$dbname", $username, $password);
        // set the PDO error mode to exception
        $conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
        // forma 1
        $stmt = $conn->prepare("SELECT * FROM cadastra_usuarios WHERE idusuarios=:id;");
        $stmt->bindParam(':id', $_GET['idusuarios']);
        $stmt->execute();
        $result = $stmt->fetch();
    }
catch(PDOException $e)
    {
    echo "Opss... Erro no servidor: " . $e->getMessage();
    }
?>
        <form action="edit.php" method="POST" id="div">
            <p>Nome:</p><input type="text" name="nome" value="<?php echo $result['nome']; ?>">
            <p>Senha:</p><input type="password" name="senha" value="<?php echo $result['senha']; ?>">
            <p>Email:</p><input type="text" name="email" value="<?php echo $result['email']; ?>">
            <input type="submit" value="Alterar">
        </form>

 

Script de Alterar :

<?php
    //echo 'Olá '. $_POST['nome'].'<br///
   // echo 'Seu username é '. $_POST['user'].'<br>';//
    //echo 'Seu email é '. $_POST['email'].'<br>';//

$servername = "localhost";
$username = "admin";
$password = "admin";
$dbname = "darkfall";

try {
    $conn = new PDO("mysql:host=$servername;dbname=$dbname", $username, $password);
    // set the PDO error mode to exception
    $conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);

    // prepare sql and bind parameters
    $stmt = $conn->prepare("UPDATE cadastra_usuarios SET nome=:nome, senha=:senha, email=:email WHERE idusuarios=:id 
    VALUES (:nome, :senha, :email)");
    $stmt->bindParam(':nome', $_POST['nome']);
    $stmt->bindParam(':senha', $_POST['senha']);
    $stmt->bindParam(':email', $_POST['email']);
    
    $stmt->execute();

    echo "Alterado com sucesso!";
    }
catch(PDOException $e)
    {
    echo "Desculpe! Erro no servidor." . $e->getMessage();
    }
$conn = null;
?>

Link para o comentário
Compartilhar em outros sites

0 respostass a esta questão

Posts Recomendados

Até agora não há respostas para essa pergunta

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,3k
    • Posts
      652,4k
×
×
  • Criar Novo...