Ir para conteúdo

POWERED BY:

Arquivado

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

junaooaks

class cadastro de cliente

Recommended Posts

ola pessoal estou iniciando no conceito oop, ja li um monte de artigo ja baixei um muncado de class

comprei dois livro pra mim ajudar, so que ate agora nao consegui fazer um cadastro de cliente oop com pdo

 

poderia me ajudar :(

vo colocar as class que consegui fazer e que peguei na internet

 

//class de conexao com o banco de dados

<?PHP


class Conexao {

  private $con = NULL;
  /*SE QUISERMOS UTILIZAR OUTRO BANCO DE DADOS DEVEMOS APENAS MUDAR ESTE ATRIBUTO*/
  private $dbType = "mysql";
  private $host   = "localhost";
  private $user   = "teste";
  private $pass   = "teste";
  private $db     = "teste";

  private $persistencia = false;

  private $x;

  /*PODE SER TROCADO POR __construct do PHP5 sem problemas*/
  public function __construct($persistencia = false){
    if($persistencia != false) { $this->persistencia = true; }

	$this->x="asfd";

  }

  public function getConnection(){
    try{

		$this->con = new PDO($this->dbType.":host=".$this->host.";dbname=".$this->db,$this->user,$this->pass);

    /*
		ESTA PROPRIEDADE INDICA COMO O PDO VAI RETORNAR OS
		ERROS SQL NO MODO PDO::ERRMODE_WARNING O RETORNO DO
		ERRO É IGUAL AO QUE VEMOS SEM A UTILIZAÇÃO DO PDO
	*/
		$this->con->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_WARNING);
		return $this->con;

    }catch(PDOException $ex){
		echo "ERRO:".$ex->getMessage();
    }
  }

  public function Close(){
    if($this->con != NULL){
      $this->con = NULL;
    }
  }
}

?>

//class com os metodos get e set

class cliente {

    private $id_cliente;
    private $nome;
    private $endereco;
    private $bairro;
    private $cidade;
    private $cep;
    private $cpfCnpj;
    private $telefone;
    private $celular;
    private $email;
    private $estado;

    public function setIdCliente($id_cliente) {
        $this->id_cliente = $id_cliente;
    }

    public function getIdCliente() {
        return $this->id_cliente;
    }

    public function setNome($nome){
        $this->nome = $nome;
    }

    public function getNome(){
        return $this->nome;
    }

    public function setEndereco ($endereco){
        $this->endereco = $endereco;
    }

    public function getEndereco (){
        return $this->endereco;
    }

    public function setBairro ($bairro){
        $this->bairro = $bairro;
    }

    public function getBairro (){
        return $this->bairro;
    }

    public function setCidade($cidade){
        $this->cidade = $cidade;
    }

    public function getCidade(){
        return $this->cidade;
    }

    public function setCep($cep){
        $this->cep = $cep;
    }

    public function getCep(){
        return $this->cep;
    }

    public function setCpfCnpj($cpfCnpj){
        $this->cpfCnpj = $cpfCnpj;
    }

    public function getCpfCnpj(){
        return $this->cpfCnpj;
    }

    public function setTelefone ($telefone) {
        $this->telefone = $telefone;
    }

    public function getTelefone(){
        return $this->telefone;
    }

    public function setCelular($celular){
        $this->celular = $celular;
    }

    public function getCelular(){
        return $this->celular;
    }

    public function setEmail($email){
        $this->email = $email;
    }

    public function getEmail(){
        return $this->email = $email;
    }

    public function setEstado($estado){
        $this->estado = $estado;
    }

    public function getEstado(){
        return $this->estado = $estado;
    }

}
?>

//formulario html

<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>SISGEW Mikrotik</title>
<style type="text/css">	@import url("../../css/form.css"); </style>
<?php
//includes
include ("../../mysql/conexao.php");
include ("../../bean/cliente.php");
?>
</head>

<body>

<form id="form1" name="form1" method="post" action="">
<table border="0" cellspacing="0" cellpadding="1">
  <tr>
    <td><input name="novo" type="image" id="novo" src="../../botao/novo.gif"/></td>
    <td><input name="alterar" type="image" id="alterar" src="../../botao/alterar.gif"/></td>
    <td><input name="deletar" type="image" id="deletar" src="../../botao/delete.gif"/></td>
    <td><input name="busca" type="image" id="busca" src="../../botao/buscar.gif"/></td>
    <td><input name="fechar" type="image" id="fechar"  onClick="window.close()" src="../../botao/fechar.gif"/></td>
  </tr>
  <tr>
    <td> </td>
    <td> </td>
    <td> </td>
    <td> </td>
    <td> </td>
  </tr>
</table>

  <table border="0" align="center" cellpadding="5" cellspacing="0">
    <tr>
        <td width="55">Nome:</td>
        <td><input name="nome" type="text" id="nome" size="80" /></td>
    </tr>
    <tr>
      <td>Endereço:</td>
      <td><input name="endereco" type="text" id="textfield2" size="80" /></td>
    </tr>
    <tr>
      <td>Email:</td>
      <td><input name="email" type="text" id="email" size="80" /></td>
    </tr>
    <tr>
      <td>Bairro:</td>
      <td><input type="text" name="bairro" id="textfield3" /></td>
    </tr>
    <tr>
      <td>Cidade:</td>
      <td><input type="text" name="cidade" id="textfield4" /></td>
    </tr>
    <tr>
      <td>Cep:</td>
      <td><input type="text" name="cep" id="textfield5" /></td>
    </tr>
    <tr>
      <td>estado:</td>
      <td><label for="estado"></label>
        <select name="estado" id="estado">
          <option value="AC">AC</option>
          <option value="AL">AL</option>
          <option value="AP">AP</option>
          <option value="AM">AM</option>
          <option value="BA">BA</option>
          <option value="CE">CE</option>
          <option value="DF">DF</option>
          <option value="ES">ES</option>
          <option value="GO">GO</option>
          <option value="MA">MA</option>
          <option value="MT">MT</option>
          <option value="MS">MS</option>
          <option value="MG">MG</option>
          <option value="PA">PA</option>
          <option value="PB">PB</option>
          <option value="PR">PR</option>
          <option value="PE">PE</option>
          <option value="PI">PI</option>
          <option value="RJ">RJ</option>
          <option value="RN">RN</option>
          <option value="RS">RS</option>
          <option value="RO">RO</option>
          <option value="RR">RR</option>
          <option value="SC">SC</option>
          <option value="SP">SP</option>
          <option value="SE">SE</option>
          <option value="TO">TO</option>
        
      </select></td>
    </tr>
    <tr>
      <td>Telefone:</td>
      <td><input type="text" name="telefone" id="textfield7" /></td>
    </tr>
    <tr>
      <td>Celular:</td>
      <td><input type="text" name="celular" id="textfield8" /></td>
    </tr>
    <tr>
      <td>Cpf/Cnpj:</td>
      <td><input type="text" name="cpfcnpj" id="textfield9" /></td>
    </tr>
    <tr>
      <td> </td>
      <td><input type="submit" name="button" id="button" value="Cadastrar" /></td>
    </tr>
    <tr>
      <td> </td>
      <td> </td>
    </tr>
  </table>
</form>
</body>
</html>

poderia me ajudar com base nestas class a fazer um INSERT na minha tabela

eu acho que tem que criar uma classe com as consulta alterações desta class ?

 

pessoal e so pra mim da uma força, ja estou a uma semana e nao consigo sair do lugar

 

pessoal seguindo um exemplo consegui fazer a class com o select so que nao consigo inserir arquivo no banco de dados

poderia me ajudar ? o que estou fazendo de errado.

 

class clienteSql extends Conexao {

    public $con;

    public function __construct() {
        $this->con = Conexao::getConnection();
    }

    //funcao para fazer select na tabela
    public function Insert($cliente) {
        $query = "INSERT INTO clientes (NomeCliente, Email, Numero, Cgc, Cpf, Endereco, Bairro, Cidade, Estado, Cep, Telefone1, Celular )
	                        VALUES (:nome, :email, :numero, :cnpj, :cpf, :endereco, :bairro, :cidade, :estado, :cep, :telefone, :celular)";
        try {
            $stmt = $this->con->prepare($query);
            $stmt->bindValue(':nome', $cliente->getNome());
            $stmt->bindValue(':email', $cliente->getEmail());
            $stmt->bindValue(':numero', $cliente->getNumero());
            $stmt->bindValue(':cnpj', $cliente->getCnpj());
            $stmt->bindValue(':cpf', $cliente->getCpf());
            $stmt->bindValue(':endereco', $cliente->getEndereco());
            $stmt->bindValue(':bairro', $cliente->getBairro());
            $stmt->bindValue(':cidade', $cliente->getCidade());
            $stmt->bindValue(':estado', $cliente->getEstado());
            $stmt->bindValue(':cep', $cliente->getCep());
            $stmt->bindValue(':telefone', $cliente->getTelefone());
            $stmt->bindValue(':celular', $cliente->getCelular());
            
            return $stmt->execute();
        } catch (PDOException $ex) {
            echo $ex->getMessage();
        }
    }

    public function Update($cliente) {
        $query = "UPDATE clientes SET NomeCliente=:nome, email=:email,
	          telefone=:telefone where id_cliente=:id_cliente";
        try {
            $stmt = $this->con->prepare($query);
            $stmt->bindValue(':nome', $user->getNome());
            $stmt->bindValue(':email', $user->getEmail());
            $stmt->bindValue(':telefone', $user->getTelefone());
            $stmt->bindValue(':id_cliente', $user->getIdCliente());
            $stmt->execute();
        } catch (PDOException $ex) {
            echo $ex->getMessage();
        }
    }
}

galera ainda nao consegui sai do lugar com oop

 

como faço para juntar as class e armazenar arquivo na tabela

 

pessoal tentando resolver o a minha situação

 

alterei o arquivo do formulario, e apareceu o seguinte erro:

Fatal error: Call to a member function getNome() on a non-object in /var/www/sisgew/mysql/clienteSql.php on line 22

alterei estas linhas no formulario

 

<?php

 

//includes

include ("../../mysql/clienteSql.php");

 

//new cria o objeto

$clienteSql = new clienteSql();

 

//para selecionar a funcion e adiciona ites nela

$insert = $clienteSql ->Insert($cliente);

 

?>

 

 

tem como alguem me ajudar

Compartilhar este post


Link para o post
Compartilhar em outros sites

na class do INSERT esta dando um erro

 

ERRO:could not find driver
Fatal error: Call to a member function prepare() on a non-object in /var/www/sisgew/mysql/clienteSql.php on line 32

e estas linhas

$stmt = $this->con->prepare("INSERT INTO clientes (NomeCliente, Email, Numero, Cgc, Cpf, Endereco, Bairro, Cidade, Estado, Cep, Telefone1, Celular )

VALUES (:nome, :email, :numero, :cnpj, :cpf, :endereco, :bairro, :cidade, :estado, :cep, :telefone, :celular)");

 

pessoal preciso de ajuda

lembrando que configurei no arquivo do php.ini a saida para PDO

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

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