pass_joao Postado Setembro 9, 2016 Denunciar Share Postado Setembro 9, 2016 Ocorreu o seguinte erro: mysql_query() expects parameter 2 to be resource, object given in C:\xampp\htdocs\debate\portal\turma.php on line 36 Esse é a parte onde tento inserir no banco: $query = "INSERT INTO 'tbl_comentario' VALUES (NULL, '".$validade."', '".$titulo."', '".$texto."', '".$opcoes."')"; mysql_query($query,$DB_con); Aqui é onde faço a conexão com o banco: <?php error_reporting (E_ALL & ~ E_NOTICE & ~ E_DEPRECATED); $DB_HOST = 'localhost'; $DB_USER = 'root'; $DB_PASS = ''; $DB_NAME = 'debate'; try{ global $DB_con; $DB_con = new PDO("mysql:host={$DB_HOST};dbname={$DB_NAME}",$DB_USER,$DB_PASS); $DB_con->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION); } catch(PDOException $e){ echo $e->getMessage(); } ?> Não sei o que está dando de errado Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Beraldo Postado Setembro 9, 2016 Denunciar Share Postado Setembro 9, 2016 Você está misturando PDO e funções mysql_*. Use um ou outro. Recomendo PDO Tutorial passo-a-passo: http://rberaldo.com.br/pdo-mysql/ PS: funções mysql_* estão obsoletas desde o PHP 5.5 e já foram removidas no PHP 7. Prefira usar MySQLi ou PDO. Veja mais aqui: http://rberaldo.com.br/mysql-obsoleto-php/ Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 pass_joao Postado Setembro 10, 2016 Autor Denunciar Share Postado Setembro 10, 2016 Eu coloquei em PDO, mas não consigo exibir todos os dados do banco, só exibe o último inserido, o código para exibir é esse: $sql = "SELECT idcomentario, titulo, texto, grupo, validade FROM tbl_comentario where validade = 1 and grupo = 'contra' ORDER BY idcomentario DESC"; $result = $PDO->query( $sql ); $rows = $result->fetch( PDO::FETCH_ASSOC ); echo "<figure class='mdl-card__media contra'> <img src='images/a.png' alt='' /> </figure> <div class='mdl-card__title'> <h1 class='mdl-card__title-text'> ".$rows['titulo']."</h1> </div> <div class='mdl-card__supporting-text'> <p class='comentario'>".$rows['texto']."</p> </div> <div class='mdl-card__actions mdl-card--border'> <div class='mdl-layout-spacer'></div> <button class='mdl-button mdl-button--icon mdl-button--colored'><i class='material-icons'>favorite</i></button> <a href='../admin/editar.php?materia=$nome&opiniao=contra&id=$numero'><button class='mdl-button mdl-button--icon mdl-button--colored'><i class='material-icons'>mode_edit</i></button></a> </div>"; Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Beraldo Postado Setembro 10, 2016 Denunciar Share Postado Setembro 10, 2016 Se quiser exibir vários resultados, o método fetch() precisa ser chamado dentro de um loop. Outras alternativa é usar fetchAll(), que retorna um array. Mas também é necessário exibir dentro do loop Veja: http://php.net/manual/pt_BR/pdostatement.fetch.php http://php.net/manual/pt_BR/pdostatement.fetchall.php Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 pass_joao Postado Setembro 10, 2016 Autor Denunciar Share Postado Setembro 10, 2016 (editado) coloquei num loop mas fica dando um erro no prepare Fatal error: Call to a member function prepare() on nul $sql = "SELECT idcomentario, titulo, texto, grupo, validade FROM tbl_comentario where validade = 1 and grupo = 'contra' and idpostagem = :idpostagem BY idcomentario DESC"; $stmt = $pdo->prepare($sql); $stmt->bindParam(':idpostagem', $idpostagem, PDO::PARAM_INT); $stmt->execute(); $total = $stmt->rowCount(); while ($row = $stmt->fetchObject()) { echo "<li>{$row->titulo}</li> <figure class='mdl-card__media contra'> <img src='images/a.png' alt='' /> </figure> <div class='mdl-card__title'> <h1 class='mdl-card__title-text'> {$row->titulo}</h1> </div> <div class='mdl-card__supporting-text'> <p class='comentario'>{$row->texto}</p> </div> <div class='mdl-card__actions mdl-card--border'> <div class='mdl-layout-spacer'></div> <button class='mdl-button mdl-button--icon mdl-button--colored'><i class='material-icons'>favorite</i></button> <a href='../admin/editar.php?materia=$nome&opiniao=contra&id=$numero'><button class='mdl-button mdl-button--icon mdl-button--colored'><i class='material-icons'>mode_edit</i></button></a> </div>"; } Editado Setembro 10, 2016 por pass_joao Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Beraldo Postado Setembro 11, 2016 Denunciar Share Postado Setembro 11, 2016 é o mesmo erro que descrevo aqui: http://rberaldo.com.br/as-mensagens-de-erros-mais-comuns-do-php/#call_member_func Reveja como $pdo foi criado. Tem que ser uma instância da classe PDO Citar Link para o comentário Compartilhar em outros sites More sharing options...
Pergunta
pass_joao
Ocorreu o seguinte erro:
mysql_query() expects parameter 2 to be resource, object given in C:\xampp\htdocs\debate\portal\turma.php on line 36
Esse é a parte onde tento inserir no banco:
Aqui é onde faço a conexão com o banco:
Não sei o que está dando de errado
Link para o comentário
Compartilhar em outros sites
5 respostass a esta questão
Posts Recomendados
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.