Resolvendo o erro "Tentando obter propriedade de não-objeto" no PHP
Ao trabalhar com PHP, você pode encontrar o erro "Tentando para obter propriedade de não-objeto." Este erro normalmente ocorre ao tentar acessar propriedades de um objeto que não foi inicializado corretamente ou é nulo.
No caso do código fornecido, o problema está na busca dos dados do menu lateral do banco de dados. A função mysql_fetch_object() retorna um único objeto, não um array de objetos. Como resultado, iterar pela variável $sidemenus na página de visualização acionará o erro.
Para resolver esse problema, modifique o código na página de controle para:
$results = mysql_query("SELECT * FROM sidemenu WHERE `menu_id`='".$menu."' ORDER BY `id` ASC LIMIT 1", $con); $sidemenus = array(); while ($sidemenu = mysql_fetch_object($results)) { $sidemenus[] = $sidemenu; }
Este código converte o único objeto retornado por mysql_fetch_object() em um array de objetos. A página de visualização pode então percorrer o array sem encontrar o erro de propriedade.
Outra alternativa é usar o PDO, que fornece uma interface mais moderna e segura para interações com o banco de dados. O método PDOStatement::fetchAll(PDO::FETCH_OBJ) pode ser usado para buscar um array de objetos de uma consulta ao banco de dados.
Isenção de responsabilidade: Todos os recursos fornecidos são parcialmente provenientes da Internet. Se houver qualquer violação de seus direitos autorais ou outros direitos e interesses, explique os motivos detalhados e forneça prova de direitos autorais ou direitos e interesses e envie-a para o e-mail: [email protected]. Nós cuidaremos disso para você o mais rápido possível.
Copyright© 2022 湘ICP备2022001581号-3