estou lendo um livro e estudando OOP, tenho fazer alguns exercicios e tem dado certo, mas as vezes eu tenho fazer de outro jeito e não funciona. Um exemplo é esse:
- Estou usando a biblioteca do php5 PDO o código abaixo funciona e retorna os registros corretamente:
O resultado funciona perfeitamente:
5_Geral
12_Saias
26_manga
13_Vestidos
11_Calças cumpridas
30_Paletós
Mas eu estou usando uma classe em um arquivo chamado Categoria.class.php abaixo o codigo dela:
<?php
class categoria{
public $id;
public $descricao;
public $opr;
var $enviar;
var $rs;
function __construct() {
try
{
// Conexao com banco Postgres
$conn = new PDO('pgsql:dbname=bd_atelie; user=postgres; password=pglocal; host=localhost; port=5432');
}
catch ( PDOException $e )
{
// Caso ocorra uma exceção, exibe na tela
echo $e->getMessage();
}
}
function setDescricao($descricao){
$this->descricao = $descricao;
}
function listar(){
$sql = "select * from tbl_categoria";
$result = $conn->query($sql);
}
function getDescricao(){
$sql = "SELECT * FROM tbl_categoria";
$resultado = pg_query($sql);
//echo "$coluna[cat_descricao]<br>";
while ($coluna = pg_fetch_array($resultado)){
echo "$coluna[cat_descricao]<br>";
}
}
function inserir(){
$sql = "SELECT iae_categoria($this->id,'$this->descricao','$this->opr')";
pg_query($sql) or die ("não foi possível inserir dados");
echo ($sql);
print "<script type = 'text/javascript'> location.href = 'principal.php?link=2'</script>";
}
}
?>
Meu problema é que quanto estancio o objeto no meu arquivo de teste teste3.php da a mensagem de erro:
Fatal error: Call to a member function Fetch() on a non-object in C:\xampp\htdocs\mfashion\admin\teste3.php on line 6
No arquivo teste3.php estanciei desta forma, porque este resultado irão aparecer numa lista feita em html:
<?php
include '../classes/Categoria.class.php';
$categoria = new categoria();
while($row = $result->Fetch(PDO::FETCH_OBJ)){
echo $row->cat_codigo . '_' .
$row->cat_descricao . "<br>\n";
}
?>
Desculpem o código grande, mas poderiam me ajudar neste problema que estou agarrado desde o final da semana passada?
Pergunta
nsouza
Colegas,
estou lendo um livro e estudando OOP, tenho fazer alguns exercicios e tem dado certo, mas as vezes eu tenho fazer de outro jeito e não funciona. Um exemplo é esse:
- Estou usando a biblioteca do php5 PDO o código abaixo funciona e retorna os registros corretamente:
O resultado funciona perfeitamente: 5_Geral 12_Saias 26_manga 13_Vestidos 11_Calças cumpridas 30_Paletós Mas eu estou usando uma classe em um arquivo chamado Categoria.class.php abaixo o codigo dela: Meu problema é que quanto estancio o objeto no meu arquivo de teste teste3.php da a mensagem de erro: Fatal error: Call to a member function Fetch() on a non-object in C:\xampp\htdocs\mfashion\admin\teste3.php on line 6 No arquivo teste3.php estanciei desta forma, porque este resultado irão aparecer numa lista feita em html:Desculpem o código grande, mas poderiam me ajudar neste problema que estou agarrado desde o final da semana passada?
Obrigado desde já!
Link para o comentário
Compartilhar em outros sites
2 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.