Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Politano

[Resolvido] Problemas com stdClass

Recommended Posts

Boa Noite,

Eu tenho essa função criada no meu arquivo crud.php:

<?php
//FUNÇÃO DE PEGA ID NOTICIAS_EVENTO
function pegaIdNoticia($id){
	$pdo = conecta();
	try{
		$pegaid = $pdo->prepare("SELECT * FROM noticias_evento WHERE id = ?");
		$pegaid->bindValue(1,$id, PDO::PARAM_INT);
		$pegaid->execute();
		if($pegaid->rowCount() > 0):
			return $pegaid->fetch(PDO::FETCH_OBJ);
		else:
			return FALSE;
		endif;
	}catch(PDOException $e){
		echo $e->getMessage();
	}
}
?>

e no arquivo edit_noticia.php:

<?php
$dados = pegaIdNoticia($id);
var_dump($dados);
?>
<h2 class="linha">NOTÍCIAS</h2>
<div class="box">
  <div class="box-content nopadding">
    <div id="myForm" class="box-content top text-center w-100">
<div class="retorno"></div>
<script type="text/javascript">
    	$("#celular").mask("(99) 9 9999-9999");
    </script>
<form action="" name="form_editaradmgm" method="post" >
  <div class="form-group">
    <label for="Nick">Nick</label>
    <input type="text" name="nick" value="<?php echo $dados->nick_administrador; ?>" class="form-control" placeholder="Digite o Nick do Game" />
  </div>
  <div class="form-group">
    <label for="Nome">Nome</label>
    <input type="text" name="nome" value="<?php echo $dados->nome_administrador; ?>" class="form-control" placeholder="Digite o Nome" />
  </div>
  <div class="form-group">
    <label for="Celular">Celular</label>
    <input type="text" name="celular" class="form-control" id="celular" placeholder="Digite o Celular"  value="<?php echo $dados->celular_administrador; ?>" />
  </div>
  <div class="form-group">
    <label for="Email">Email</label>
    <input type="text" name="email" class="form-control" placeholder="Digite um Email"  value="<?php echo $dados->email_administrador; ?>" />
  </div>
  <div class="form-group">
    <label for="Funcao">Função</label>
    <input type="text" name="funcao" class="form-control" placeholder="Digite uma Funcao"  value="<?php echo $dados->funcao_administrador; ?>" />
  </div>
  <div class="form-group">
    <label for="Login">Login</label>
    <input type="text" name="login" class="form-control" placeholder="Digite um Login"  value="<?php echo $dados->login_administrador; ?>" />
  </div>
  <div class="form-group">
    <label for="Nivel">Nivel</label>
    <select name="nivel" class="form-control">
      <option value="<?php echo $dados->nivel_administrador; ?>">Escolha uma opção:
      <?php if (($dados->nivel_administrador) == 1): echo 'Administrador'; else: echo 'Game Master'; endif; ?>
      </option>
      <option value="<?php if (($dados->nivel_administrador) == 1): echo '2'; $nivell = '2'; else: echo '1'; $nivell = '1'; endif; ?>">
      <?php if ($nivell == 1): echo 'Administrador'; else: echo 'Game Master'; endif; ?>
      </option>
    </select>
  </div>
  <input type="hidden" name="id" value="<?php echo $dados->id; ?>" />
  <center>
    <img class="loader" style="display:none" src="images/loader.gif" />
  </center>
  <button name="submit" type="submit" class="btn btn-primary">Atualizar</button>
</form>
  </div>
</div>

<script src="http://code.jquery.com/jquery-1.10.1.min.js"></script>
<script type="text/javascript" src="js/noticia.js"></script>
<script type="text/javascript" src="js/maskedinput.min.js"></script>

o var_dump(dados); retorna todos os dados do mysql, mas quando tento chamar o $dados->nick_administrador ou qualquer outro campo da tabela ele exibe o erro: Notice: Undefined property: stdClass::$nick_administrador

Compartilhar este post


Link para o post
Compartilhar em outros sites

Você precisa validar o case da coluna. O MySQL não é case sensitive para colunas, tabelas, clausulas, funções e mais algumas coisas. Por outro lado, o PHP é.

 

O que você pode fazer é validar, usando var_dump, como está sendo retornada a propriedade.

 

Mostre-nos qual é o resultado do var_dump que você adicionou ao código.

Compartilhar este post


Link para o post
Compartilhar em outros sites
20 horas atrás, Gabriel Heming disse:

Você precisa validar o case da coluna. O MySQL não é case sensitive para colunas, tabelas, clausulas, funções e mais algumas coisas. Por outro lado, o PHP é.

 

O que você pode fazer é validar, usando var_dump, como está sendo retornada a propriedade.

 

Mostre-nos qual é o resultado do var_dump que você adicionou ao código.

Cara, muito obrigado seu comentário valeu muito, já resolvi

Compartilhar este post


Link para o post
Compartilhar em outros sites

  • Conteúdo Similar

    • Por violin101
      Caros amigos do grupo, saudações e um feliz 2025.
       
      Estou com uma pequena dúvida referente a Teclas de Atalho.

      Quando o Caps Lock está ativado o Comando da Tecla de Atalho não funciona.
      ou seja:
      se estiver para letra minúscula ====> funciona
      se estiver para letra maiúscula ====> não funciona
       
      Como consigo evitar essa falha, tanto para Letra Maiúscula quanto Minúscula ?

      o Código está assim:
      document.addEventListener( 'keydown', evt => { if (!evt.ctrlKey || evt.key !== 'r' ) return;// Não é Ctrl+r, portanto interrompemos o script evt.preventDefault(); });  
      Grato,
       
      Cesar
    • Por ILR master
      Fala galera, tudo certo?
       
      Seguinte: No servidor A estou tentando fazer uma consulta com o servidor B, mas está dando erro.
      Estou usando o mesmo código de conexão do servidor B que funciona perfeitamente, mas no servidor A, dá erro.
      Segue código:
       
      $host = 'servidor B';
      $user = 'user';
      $pass = '********';
      $db   = 'banco';
       
      // conexão e seleção do banco de dados
      $conexao = mysqlI_connect($host, $user, $pass, $db);
      mysqlI_set_charset($conexao,"utf8");
      //print "Conexão rodando e OK!"; 
      //mysqlI_close($conexao);
       
      Alguém pode me ajudar?
    • Por violin101
      Caros amigos, saudações.
       
      Por favor, poderiam me ajudar.

      Estou com a seguinte dúvida:
      --> como faço para para implementar o input código do produto, para quando o usuário digitar o ID o sistema espera de 1s a 2s, sem ter que pressionar a tecla ENTER.

      exemplo:
      código   ----   descrição
           1       -----   produto_A
       
      Grato,
       
      Cesar
    • Por violin101
      Caros amigos, saudações.
       
      Humildemente peço desculpa por postar uma dúvida que tenho.

      Preciso salvar no MySql, os seguinte Registro:

      1 - Principal
      ====> minha dúvida começa aqui
      ==========> como faço para o Sistema Contar Automaticamente o que estiver despois do 1.____?
      1.01 - Matriz
      1.01.0001 - Estoque
      1.01.0002 - Oficina
      etc

      2 - Secundário
      2.01 - Loja_1
      2.01.0001 - Caixa
      2.01.0002 - Recepção
      etc
       
      Resumindo seria como se fosse um Cadastro de PLANO de CONTAS CONTÁBEIL.

      Grato,


      Cesar









       
    • Por violin101
      Caros amigos, saudações.

      Por favor, me perdoa em recorrer a orientação dos amigos.

      Preciso fazer um Relatório onde o usuário pode Gerar uma Lista com prazo para vencimento de: 15 / 20/ 30 dias da data atual.

      Tem como montar uma SQL para o sistema fazer uma busca no MySql por período ou dias próximo ao vencimento ?

      Tentei fazer assim, mas o SQL me traz tudo:
      $query = "SELECT faturamento.*, DATE_ADD(faturamento.dataVencimento, INTERVAL 30 DAY), fornecedor.* FROM faturamento INNER JOIN fornecedor ON fornecedor.idfornecedor = faturamento.id_fornecedor WHERE faturamento.statusFatur = 1 ORDER BY faturamento.idFaturamento $ordenar ";  
      Grato,
       
      Cesar
       
       
       
       
×

Informação importante

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