Ir para conteúdo

POWERED BY:

Recommended Posts

Dentro dos estudos propostos sobre Orientação a Objetos com PHP, você caro (a) aluno (a) pôde ver e estudado sobre objetos, herança, encapsulamento, construtores e muito mais.

Após criar uma classe, você poderá derivar subclasses dela. Você poderá pegar uma classe semelhante àquela que você precisar escrever, estendê-la a uma subclasse e apenas modificar as partes que são diferentes. Você conseguirá isso usando a palavra-chave extends.

Baseado no estudo sobre herança e suas propriedades analise:

Em um ambiente de desenvolvimento, o Gerente de Projetos chega para o líder setor de desenvolvimento e entrega a ele uma ordem de serviço com a seguinte solicitação:

"Desenvolver uma classe Usuario em PHP, para uma loja de vendas de autopeças, que deverá possuir quatro propriedades, $nome, $idade, $senha e $cidade e desenvolver também, um método para salvar o usuário atual no banco de dados".

"Você deverá criar uma subclasse chamada Vendedor que deverá estender a classe principal, adicionando duas propriedades: $telefone, $email. Incluir um método que exiba as propriedades do objeto atual, usando a variável $this, que se refere aos valores atuais do objeto que está sendo acessado".

O gerente de projeto solicitou ainda, que fosse cadastrado um vendedor neste sistema com os seguintes requisitos:

"O novo vendedor que deverá ser cadastrado ele mora na cidade de São Paulo, se chama Marcos Paulo, tem 32 anos de idade, ele utiliza um email pessoal que é o marcospp@bloggs.com. O número de seu telefone residencial é 011 00345 6000 e a senha pessoal utilizada por ele é Mp?123".

Depois que foi desenvolvido o programa, o gerente de projetos solicitou ao analista de sistema, que analisasse o código do programa que o desenvolvedor havia criado e que o setor de testes havia testado, para um cliente de uma loja de autopeças.

Entregou também ao analista o código pronto para que fosse analisada para ver se estava de acordo com o que havia sido solicitado.

PHP 2.jpg

Compartilhar este post


Link para o post
Compartilhar em outros sites
astudy.php
--------------------------------------------------------------------

<?php
class Vendedor {
    private $dbConnect;
    private $queryNumRows;
	private $queryResult;
    private $vendedorId;
    private $vendedorNome;
    private $vendedorEmail;
    private $vendedorSenha;
    private $vendedorCidade;
    private $vendedorIdade;
    private $vendedorTelefone;
    public function __construct() {
        try {
			$this->dbConnect = new PDO("mysql:dbname=astudy;host=localhost", "root", "");
		} catch(PDOException $error) {
			echo "<strong>The connection failed: </strong>" . $error->getMessage();}}
    public function showTableVendedor(){
        echo "Essa é a estrutura da tabela astudy.tbvendedor no MySQL"
        ."<table>"
        ."<tr><td>vendedorId <td> int, pk, nn, ai"
        ."<tr><td>vendedorNome <td> varchar(45)"
        ."<tr><td>vendedorEmail <td> varchar(45)"
        ."<tr><td>vendedorSenha <td> varchar(60)"
        ."<tr><td>vendedorRemember <td> varchar(100)"
        ."<tr><td>vendedorCidade <td> varchar(20)"
        ."<tr><td>vendedorIdade <td> int"
        ."<tr><td>vendedorTelefone <td> varchar(45)</table><p>";}
    public function queryListAll() {
        $sql = "SELECT * FROM tbvendedor";
        $sql = $this->dbConnect->prepare($sql);
		$sql->execute();
        $this->queryNumRows = $sql->rowCount();
		$this->queryResult = $sql->fetchAll();	}
    public function querySelectById($vendedorId) {
        $sql = "SELECT * FROM tbvendedor WHERE vendedorId = ?";
        $sql = $this->dbConnect->prepare($sql);
        $sql->execute(array(vendedorId));
        if ($sql->rowCount() == 1) {
            $vendedor = $sql->fetch();
            $this->vendedorId = $vendedor['vendedorId'];
            $this->vendedorNome = $vendedor['vendedorNome'];
            $this->vendedorEmail = $vendedor['vendedorEmail'];
            $this->vendedorSenha = $vendedor['vendedorSenha']; 
            $this->vendedorCidade = $vendedor['vendedorCidade']; 
            $this->vendedorIdade= $vendedor['vendedorIdade'];
            $this->vendedorTelefone=$vendedor['vendedorTelefone'];}}
    public function queryInsert() {
        $sql = "INSERT INTO tbvendedor SET vendedorNome=?,vendedorEmail=?,vendedorSenha=?,
        vendedorCidade=?,vendedorIdade=?,vendedorTelefone=?";
        $sql = $this->dbConnect->prepare($sql);
        $sql->execute(array($this->vendedorNome, $this->vendedorEmail, $this->vendedorSenha,
            $this->vendedorCidade,$this->vendedorIdade,$this->vendedorTelefone)); 
        $sql="Select vendedorId from tbvendedor where vendedorNome=?" ;
        $sql = $this->dbConnect->prepare($sql);
        $sql->execute(array($this->vendedorNome));
        $vendedor=$sql->fetch();
        $this->vendedorId=$vendedor['vendedorId'];
        echo "O id do vendedor $this->vendedorNome é $this->vendedorId";}
    public function queryUpadte($vendedorId) {
        $sql = "UPDATE tbvendedor SET vendedorNome=?,vendedorEmail=?,vendedorSenha=?,
        vendedorCidade=?,vendedorIdade=?,vendedorTelefone=? WHERE vendedorId = ?";
        $sql = $this->dbConnect->prepare($sql);
        $sql->execute(array($this->vendedorNome,$this->vendedorEmail,$this->vendedorSenha,
        $this->vendedorCidade,$this->vendedorIdade,$this->vendedorTelefone,$this->$vendedorId));  }
    public function queryDelete($vendedorId) {
        $sql = "DELETE FROM tbvendedor WHERE vendedorId = ?";
		$sql = $this->dbConnect->prepare($sql);
		$sql->bindValue(1, $vendedorId);
		$sql->execute();}
    public function queryNumRows() {
		return $this->queryNumRows;	}
    public function queryResult() {
		return $this->queryResult;	}
    public function getVendedorId() {
        return $this->vendedorId;    }
    public function getVendedorNome() {
        return $this->vendedorNome;    }
    public function getVendedorEmail() {
        return $this->vendedorEmail;    }
    public function getVendedorSenha() {
        return $this->vendedorCidade;  }
    public function getVendedorIdade() {
        return $this->vendedorIdade;   }
    public function getVendedorTelefone() {
        return $this->vendedorTelefone;}
    public function setVendedorNome($vendedorNome) {
        $this->vendedorNome = $vendedorNome;    }
    public function setVendedorEmail($vendedorEmail) {
        $this->vendedorEmail = $vendedorEmail;    }
    public function setVendedorSenha($vendedorSenha) {
        $this->vendedorSenha = md5($vendedorSenha); }
    public function setVendedorCidade($vendedorCidade) {
        $this->vendedorCidade = $vendedorCidade; }
    public function setVendedorIdade($vendedorIdade){
        $this->vendedorIdade=$vendedorIdade; }
    public function setVendedorTelefone($vendedorTelefone){
        $this->vendedorTelefone=$vendedorTelefone;  }
    }
?>
astudy2.php
----------------------------------------------------------

<?php
require 'astudy.php';
$vendedor = new Vendedor();
$vendedor->showTableVendedor();
$vendedor->setVendedorNome("Marcos Paulo");
$vendedor->setVendedorCidade("São Paulo");
$vendedor->setVendedorIdade(32);
$vendedor->setVendedorEmail("marcospp@bloggs.com");
$vendedor->setVendedorTelefone("(011)00345-6000");
$vendedor->setVendedorSenha("Mp?123");
$vendedor->queryInsert();
Resultado
----------------------------------------------------------

Essa é a estrutura da tabela astudy.tbvendedor no MySQL
vendedorId	int, pk, nn, ai
vendedorNome	varchar(45)
vendedorEmail	varchar(45)
vendedorSenha	varchar(60)
vendedorRemember	varchar(100)
vendedorCidade	varchar(20)
vendedorIdade	int
vendedorTelefone	varchar(45)
O id do vendedor Marcos Paulo é 13


Consegui passar de ano?

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

×

Informação importante

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