Ir para conteúdo
Gildvan Arley

Erro bool(false) no UPDATE

Recommended Posts

<?php
session_start();
include "conexao.php";
$id = filter_input(INPUT_POST, 'id', FILTER_SANITIZE_NUMBER_INT); // ID do usuario - Não vai ser modificado
$nome = filter_input(INPUT_POST, 'nome', FILTER_SANITIZE_STRING); // Nome do usuario
$vip = filter_input(INPUT_POST, 'vip', FILTER_SANITIZE_STRING); // Numero de 1 a 4
$status = filter_input(INPUT_POST, 'status', FILTER_SANITIZE_STRING); // Numero 1 ou 2
$data = filter_input(INPUT_POST, 'data', FILTER_SANITIZE_STRING); // Data do cadastro - Não vai ser modificado
$datavip = filter_input(INPUT_POST, 'datavip', FILTER_SANITIZE_STRING); // Data do do fim do kit do musuario
//var_dump($id, $nome, $vip, $status, $data, $datavip); 

//echo "ID: $id <br>";
//echo "Nome: $nome <br>";
//echo "Vip: $vip <br>";
//echo "Status do Vip: $status <br>";
//echo "Data do cadastro: $data <br>";
//echo "Data do fim do vip: $datavip <br>";

$result_usuario = "UPDATE usuarios SET nome ='$nome', vip='$vip', status ='$status',data ='$data',datavip ='$datavip' WHERE id_user ='$id'";
$resultado_usuario = mysqli_query($link , $result_usuario);
//var_dump($result_usuario); // esta dando isso bool(false)

//if(mysqli_affected_rows($link )){
//$_SESSION['msg'] = "<p style='color:green;'>Usuário editado com sucesso</p>";
//header("Location: ?p=adminfuria");
//}else{
//$_SESSION['msg'] = "<p style='color:red;'>Usuário não foi editado com sucesso</p>";
//header("Location: ?p=editaru.php?id=$id");
//}

esta me gerando esse erro bool(false) na pagina proc_edit_usuario.php

o var_dump($result_usuario); lista tudo direitinho como mandei la na pagina editaru.php 
mais não passa do $resultado_usuario no var_dump($resultado_usuario); da o ERRO bool(false)

 

Compartilhar este post


Link para o post
Compartilhar em outros sites

http://php.net/manual/en/mysqli.query.php

Citar

Returns FALSE on failure. For successful SELECT, SHOW, DESCRIBE or EXPLAIN queries mysqli_query() will return a mysqli_result object. For other successful queries mysqli_query() will return TRUE.

 

Retorna FALSE em caso de falha. Teste diretamente no banco de dados se a sua query funciona.

 

Outro ponto é que seu código está vulnerável. Utilize prepared statementes

 

Compartilhar este post


Link para o post
Compartilhar em outros sites

Obrigado, O erro estava nessa linha

$result_usuario = "UPDATE usuarios SET nome ='$nome', vip='$vip', status ='$status',data ='$data',datavip ='$datavip' WHERE id_user ='$id'";

troquei por essa 

$result_usuario = "UPDATE `usuarios` SET `id_user`= $id,`nome`= '$nome',`vip`= $vip,`status`=$status,`data`= $data,`diasvip`=$datavip WHERE id_user =$id";

 

Compartilhar este post


Link para o post
Compartilhar em outros sites

só estou tendo um problema com o registro da data essa linha aqui 

`data`= $data,`diasvip`=$datavip

ANTES DO UPEDATE

$data e a do cadastro dele - 30/11/-2017

$datavip  e a do vip  dele - 00/00/-0000 nulo

DEPOIS DO UPDATE

$data e a do cadastro dele - 13/04/-2018

$datavip  e a do vip  dele -  13/05/-2018

mais quando dou o UPEDATE ai vai tudo assim pra o banco de dados 30/11/-0001

Compartilhar este post


Link para o post
Compartilhar em outros sites

Crie uma conta ou entre para comentar

Você precisar ser um membro para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar Agora

  • Conteúdo Similar

    • Por MAKAVELIQUE
      Pessoal, imaginem a seguinte situação: o usuário A clica no botão enviar no mesmo instante que o usuário B, caso a ação do sql seja um comando update no mesmo campo, id=7 por exemplo e isso acontecer exatamente no mesmo instante, ocorre perca de dados? 
      <?php $update = "UPDATE br_gang SET i='$i', data= NOW() WHERE id='$id'"; $query = mysqli_query($update, $conn) or die (mysqli_error($conn)); if($update==true){ echo "<script>alert ('DADOS SALVOS COM SUCESSO, BOA SORTE!');</script>"; } ?> Se isso acontecer e ocorrer perca de dados, qual o procedimento possível para resolver o problema?
    • Por GabrielB3r
      Bom dia,
      estou tentando criar um sistema de empréstimo e devolução de documentos.
      Funciona da seguinte forma:
      A pessoa tem o opção de cadastrar novos documentos,os quais são inseridos da tabela "dossie_cadastrado", e ela pode cadastrar o empréstimo e a devolução do mesmo que ficam salvos na tabela "dossie_emprestimo".
      A parte de cadastro e empréstimo consegui fazer funcionar, meu problema é na hora de cadastrar a devolução. Preciso inserir a data atual no último cadastro de um determinado dossie na tabela "dossie_emprestimo".
       
      Tenho o seguinte código:
      if(isset($_POST["cod_cad"])){         $cod_cad = $_POST["cod_cad"];         }          if(isset($_GET["cod_cad"])){         $cod_cad = $_GET["cod_cad"];     } $cod_cad = strip_tags($_POST['cod_cad']); $select_upd= mysqli_query($conexao_bd,"SELECT id_emp, data_emp from dossie_emprestimo where cod_cad='$cod_cad' ORDER BY data_emp desc limit 1") ; $sql_update="UPDATE dossie_emprestimo SET data_dev=CURDATE() WHERE id_emp='$id_emp'"; mysqli_query($conexao_bd, $sql_update);  
      quando eu rodo esse código separado no phpmyadmin, funciona normalmente, mas quando coloco no meu código ele não encontra o id_emp.
      id_emp - id de empréstimo, chave primaria com auto incremento.
      data_emp - data que foi realizado o empréstimo.
      cod_cad - código de cadastro, é o código que esta relacionado a tabela de cadastro, é o id do documento. ex: toda vez que o documento "20" for emprestado esse código sera "20".
       
    • Por teteuvec
      Prezados boa noite,
       
      Estou tentando atualizar dados no BD. Porém ao aplicar o update não gera erro e nem atualiza no DB.
      Segue abaixo o script. Já testei a conexão com o DB e funciona perfeitamente como function.
       
      <?php session_start(); if ($_SESSION['validate_login'] != true) { header("Location: /index.php"); } ini_set( "display_errors", true ); error_reporting( E_ALL ); require_once('../phpfunctions.php'); header('Content-Type: text/html; charset=utf-8'); switch ($_POST['action']) { case '0': $recordset = mysqli_query(connect(tupa), "SELECT * FROM people_records WHERE cpf_cnpj = {$_POST['cpf_cnpj']} ORDER BY id DESC") or die(mysqli_error(connect(tupa))); $_row = mysqli_num_rows($recordset); if ($_row == 0) { mysqli_query(connect(tupa), "UPDATE people_records SET name = {$_POST['name']}, cpf_cnpj = {$_POST['cpf_cnpj']}, cellphone = {$_POST['cellphone']}, telephone = {$_POST['telephone']} WHERE id = {$_POST['id']}") or die (mysqli_error(connect(tupa))); } else { echo "<script language='JavaScript'>alert('Este registro já existe.')</script>"; } mysqli_free_result($recordset); echo "<script language='JavaScript'>location.href='../system.php';</script>"; break;  
       
    • Por brunobos21
      Olá, eu criei um formulario que salva os dados em um banco de dados mysql, e criei uma pagina de relatorio para mostrar todo mundo que se cadastra nesse banco, até ai tudo certo, só que eu tenho um campo "Status" que eu queria colocar um checkbox para o administrador poder marcar esse campo e mudar no mysql o valor do Status para 1 sempre que clicar no botão atualizar, e se o administrador desmarcar antes apertar o botão Atualizar, não mudar na tabela. Já pesquisei em tudo quer canto e não achei, se puderem me ajudar enviando algum modelo de código ou algum tópico aqui do forúm que ja fale sobre isso, agradeço. Aqui está meu código:
      <?php // definições de host, database, usuário e senha $host = "host"; $banco = "banco"; $user = "user"; $pass = "pass"; $tbl_name="tabela";   $nome = $_POST['nome']; $numero = $_POST['numero']; $email = $_POST['email']; $cidade = $_POST['cidade']; $whatsapp = $_POST['whatsapp']; $data = $_POST['data']; $status = $_POST['status'];   // conecta ao banco de dados $con = mysql_pconnect($host, $user, $pass) or trigger_error(mysql_error(),E_USER_ERROR); // seleciona a base de dados em que vamos trabalhar mysql_select_db($banco, $con); // cria a instrução SQL que vai selecionar os dados $query = sprintf("SELECT * FROM Pesquisas"); // executa a query $dados = mysql_query($query, $con) or die(mysql_error()); // transforma os dados em um array $linha = mysql_fetch_assoc($dados); // calcula quantos dados retornaram $total = mysql_num_rows($dados); ?> <!DOCTYPE html> <html lang="en"> <head>     <title>Relatorio</title>     <meta charset="latin1_swedish_ci">     <meta name="viewport" content="width=device-width, initial-scale=1"> <!--===============================================================================================-->       <link rel="icon" type="image/png" href="images/icons/favicon2.ico"/> <!--===============================================================================================-->     <link rel="stylesheet" type="text/css" href="vendor/bootstrap/css/bootstrap.min.css"> <!--===============================================================================================-->     <link rel="stylesheet" type="text/css" href="fonts/font-awesome-4.7.0/css/font-awesome.min.css"> <!--===============================================================================================-->     <link rel="stylesheet" type="text/css" href="vendor/animate/animate.css"> <!--===============================================================================================-->     <link rel="stylesheet" type="text/css" href="vendor/select2/select2.min.css"> <!--===============================================================================================-->     <link rel="stylesheet" type="text/css" href="vendor/perfect-scrollbar/perfect-scrollbar.css"> <!--===============================================================================================-->     <link rel="stylesheet" type="text/css" href="css/util.css">     <link rel="stylesheet" type="text/css" href="css/main.css"> <!--===============================================================================================--> <script src="vendor/jquery/jquery-3.2.1.min.js"></script> <script type="text/javascript"> //--> </script> </head> <body> <form action=" " method="post">     <div class="limiter">         <div class="container-table100">             <div class="wrap-table100">                 <div class="table100">                     <table>                         <thead>                             <tr class="table100-head">                                 <th class="column1">Nome</th>                                 <th class="column2">Numero</th>                                 <th class="column3">Cidade</th>                                 <th class="column4">E-mail</th>                                 <th class="column5">Whatsapp</th>                                 <th class="column6">Tipo</th>                                 <th class="column6">Data</th>                                 <th class="column6">Status</th>                             </tr>                         </thead>                           <?php                         // se o número de resultados for maior que zero, mostra os dados                         if($total > 0) {                     // inicia o loop que vai mostrar todos os dados                     do {                         ?>                         <tbody>                                 <tr>                                     <td class="column1"><?=$linha['nome']?></td>                                     <td class="column2"><?=$linha['numero']?></td>                                     <td class="column3"><?=$linha['cidade']?></td>                                     <td class="column4"><?=$linha['email']?></td>                                     <td class="column5"><?=$linha['whatsapp']?></td>                                     <td class="column6"><?=$linha['tipo']?></td>                                     <td class="column6"><?=$linha['data']?></td>                                     <td class="column6">                                     <input type=checkbox name="banco[]" value="1"><?=$linha['status']?>                                     </td>                                 </tr>                                </tbody>                         <?php                     // finaliza o loop que vai mostrar os dados                     }while($linha = mysql_fetch_assoc($dados));                         // fim do if                         }                         ?>                     </table>                     <div class="container-contact2-form-btn">                                 <div class="wrap-contact2-form-btn">                                     <div class="contact3-form-bgbtn"></div>                                     <button class="contact2-form-btn" type="submit" value="Enviar" name="enviar">                                         Atualizar                                     </button>                                 </div>                             </div>                 </div>             </div>         </div>     </div> </form>   <!--===============================================================================================-->       <script src="vendor/jquery/jquery-3.2.1.min.js"></script> <!--===============================================================================================-->     <script src="vendor/bootstrap/js/popper.js"></script>     <script src="vendor/bootstrap/js/bootstrap.min.js"></script> <!--===============================================================================================-->     <script src="vendor/select2/select2.min.js"></script> <!--===============================================================================================-->     <script src="js/main.js"></script> </body> </html> <?php // tira o resultado da busca da memória mysql_free_result($dados); ?>
    • Por unnie
      Se alguém estiver lendo, olá! Estou tentando fazer um CRUD e na parte de validação do e-mail, eu recebo um email tudo certinho, entretanto não estou conseguindo fazer o update de um campo do BD que corresponde ao id que informa se o e-mail está verificado ou não ...
       
      O código de verificação de e-mail está abaixo:
      <?php include "dbh.inc.php"; $token = $_GET['token']; $email = $_GET['email']; $idEmail = 1; $sql = "SELECT * FROM users WHERE emailUsers=? AND token=?"; $stmt = mysqli_stmt_init($conn); if(!mysqli_stmt_prepare($stmt, $sql)){ echo"".$email; header("Location: ../header.php?error=sqlerror"); exit(); } else{ mysqli_stmt_bind_param($stmt, "ss", $email, $token); mysqli_stmt_execute($stmt); $result = mysqli_stmt_get_result($stmt); if($row = mysqli_fetch_assoc($result)){ ############################################################################################## $sql = "UPDATE users SET emailConfirm='$idEmail' WHERE emailUsers='$email' AND token='$token'"; $stmt = mysqli_stmt_init($conn); mysqli_stmt_execute($stmt); echo "".$row['emailConfirm'].$row['emailUsers'].$row['token'].$row['']; ############################################################################################## } if(!mysqli_stmt_affected_rows()>0){ echo"Afetou Linhas"; } else{ echo"Nenhuma Linha Afetada"; } } no e-mail contém um link estilo:
       
      site.com/arquivo.php?email=$email&token=$token
      site.com/arquivo.php?email=oemaildousuario&token=tokendousuario
       
      quando peço que faça o 'echo' do token e e-mail, é imprimido na tela o email e token que estão no link corretamente como eu quero e quando peço 'echo' de outra informação do usuário que contem as informações equivalentes ao do token e email do link as informações são mostradas corretamente também, mas no momento que peço pelo UPDATE nada acontece no BD, o id de validação (emailConfirm) de e-mail continua em '0'  e não faz o update para 1...
       
      alguém pode me ajudar???  Obrigada !
×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.