Ir para conteúdo
Samuel Costa2018

Resposta Automática de Email

Recommended Posts

Boa Tarde! Estou passando por problemas em relação a um sistema de PHP que utilizo. Esse sistema abre duas paginas de login uma para o acesso de administração e o outro de acesso a cliente, onde ele faz o cadastro e consegue acessar o sistema e cadastrar uma ordem de serviço. Como faço para que quando o cliente se cadastrar no sistema, automaticamente o próprio sistema recolhe os dados (Nome e Email) e envia uma resposta automática para o email (cadastrado) do cliente confirmando o cadastro dele. Sou leigo em relação a esse assunto, por isso preciso da ajuda de vocês. Desde já agradeço a atenção! (desculpe se for tópico errado)

 

Segue abaixo a linha de comando para vocês entenderem mais ou menos do que se trata. (Acredito que a linha de código descrita ,está no final de todas as linhas que estão abaixo porém deixei a linha completa pra vocês entenderem melhor do que se trata)

 

<?php if ( ! defined('BASEPATH')) exit('No direct script access allowed');

class Mine extends CI_Controller {

	
	public function __construct(){

		parent::__construct();
		$this->load->model('Conecte_model');

	}

	public function index(){

		$this->load->view('conecte/login');
		
	}

	public function sair(){
        $this->session->sess_destroy();
        redirect('mine');
    }

    public function login(){

        $this->load->library('form_validation');
        $this->form_validation->set_rules('email','Email','valid_email|required|trim');
        $this->form_validation->set_rules('documento','Documento','required|trim');
        $ajax = $this->input->get('ajax');
        if ($this->form_validation->run() == false) {
            
            if($ajax == true){
                $json = array('result' => false);
                echo json_encode($json);
            }
            else{
                $this->session->set_flashdata('error','Os dados de acesso estão incorretos.');
                redirect('mine');
            }
        } 
        else {

            $email = $this->input->post('email');
            $documento = $this->input->post('documento');


            $this->db->where('email',$email);
            $this->db->where('documento',$documento);
            $this->db->limit(1);
            $cliente = $this->db->get('clientes')->row();

            if(count($cliente) > 0){
                $dados = array('nome' => $cliente->nomeCliente, 'cliente_id' => $cliente->idClientes,'conectado' => TRUE);
                $this->session->set_userdata($dados);

                if($ajax == true){
                    $json = array('result' => true);
                    echo json_encode($json);
                }
                else{
                    redirect(site_url().'/mine');
                }               
            }
            else{
                
                
                if($ajax == true){
                    $json = array('result' => false);
                    echo json_encode($json);
                }
                else{
                    $this->session->set_flashdata('error','Os dados de acesso estão incorretos.');
                    redirect(site_url().'/mine');
                }
            }
            
        }
        
    }

	public function painel(){
		
        
		if(!session_id() || !$this->session->userdata('conectado') ){
        	redirect('mine');
        }

        $data['menuPainel'] = 'painel';
		$data['compras'] = $this->Conecte_model->getLastCompras($this->session->userdata('cliente_id'));
		$data['os'] = $this->Conecte_model->getLastOs($this->session->userdata('cliente_id'));
		$data['output'] = 'conecte/painel';
		$this->load->view('conecte/template',$data);

	}

	public function conta(){
		
		if(!session_id() || !$this->session->userdata('conectado') ){
        	redirect('mine');
        }

        $data['menuConta'] = 'conta';
        $data['result'] = $this->Conecte_model->getDados();
       
        $data['output'] = 'conecte/conta';
        $this->load->view('conecte/template',$data);
	}


    public function editarDados($id = null){

        if(!session_id() || !$this->session->userdata('conectado')){
            redirect('mine');
        }

        $data['menuConta'] = 'conta';

        $this->load->library('form_validation');
        $data['custom_error'] = '';

        if ($this->form_validation->run('clientes') == false) {
            $this->data['custom_error'] = (validation_errors() ? '<div class="form_error">' . validation_errors() . '</div>' : false);
        } else {
            $data = array(
                'nomeCliente' => $this->input->post('nomeCliente'),
                'documento' => $this->input->post('documento'),
                'telefone' => $this->input->post('telefone'),
                'celular' => $this->input->post('celular'),
                'email' => $this->input->post('email'),
                'rua' => $this->input->post('rua'),
                'numero' => $this->input->post('numero'),
                'bairro' => $this->input->post('bairro'),
                'cidade' => $this->input->post('cidade'),
                'estado' => $this->input->post('estado'),
                'cep' => $this->input->post('cep')
            );

            if ($this->Conecte_model->edit('clientes', $data, 'idClientes', $this->input->post('idClientes')) == TRUE) {
                $this->session->set_flashdata('success','Dados editados com sucesso!');
                redirect(base_url() . 'index.php/mine/conta');
            } else {
                
            }
        }

        $data['result'] = $this->Conecte_model->getDados();
       
        $data['output'] = 'conecte/editar_dados';
        $this->load->view('conecte/template',$data);
    }

	public function compras(){
		
		if(!session_id() || !$this->session->userdata('conectado')){
        	redirect('mine');
        }

        $data['menuVendas'] = 'vendas';
		$this->load->library('pagination');
        
        
        $config['base_url'] = base_url().'index.php/mine/compras/';
        $config['total_rows'] = $this->Conecte_model->count('vendas',$this->session->userdata('cliente_id'));
        $config['per_page'] = 10;
        $config['next_link'] = 'Próxima';
        $config['prev_link'] = 'Anterior';
        $config['full_tag_open'] = '<div class="pagination alternate"><ul>';
        $config['full_tag_close'] = '</ul></div>';
        $config['num_tag_open'] = '<li>';
        $config['num_tag_close'] = '</li>';
        $config['cur_tag_open'] = '<li><a style="color: #2D335B"><b>';
        $config['cur_tag_close'] = '</b></a></li>';
        $config['prev_tag_open'] = '<li>';
        $config['prev_tag_close'] = '</li>';
        $config['next_tag_open'] = '<li>';
        $config['next_tag_close'] = '</li>';
        $config['first_link'] = 'Primeira';
        $config['last_link'] = 'Última';
        $config['first_tag_open'] = '<li>';
        $config['first_tag_close'] = '</li>';
        $config['last_tag_open'] = '<li>';
        $config['last_tag_close'] = '</li>';
        	
        $this->pagination->initialize($config); 	

		$data['results'] = $this->Conecte_model->getCompras('vendas','*','',$config['per_page'],$this->uri->segment(3),'','',$this->session->userdata('cliente_id'));
       
	    $data['output'] = 'conecte/compras';
       	$this->load->view('conecte/template',$data);

	}

	public function os(){
		
		if(!session_id() || !$this->session->userdata('conectado')){
        	redirect('mine');
        }

        $data['menuOs'] = 'os';
		$this->load->library('pagination');
        
        
        $config['base_url'] = base_url().'index.php/mine/os/';
        $config['total_rows'] = $this->Conecte_model->count('os',$this->session->userdata('cliente_id'));
        $config['per_page'] = 10;
        $config['next_link'] = 'Próxima';
        $config['prev_link'] = 'Anterior';
        $config['full_tag_open'] = '<div class="pagination alternate"><ul>';
        $config['full_tag_close'] = '</ul></div>';
        $config['num_tag_open'] = '<li>';
        $config['num_tag_close'] = '</li>';
        $config['cur_tag_open'] = '<li><a style="color: #2D335B"><b>';
        $config['cur_tag_close'] = '</b></a></li>';
        $config['prev_tag_open'] = '<li>';
        $config['prev_tag_close'] = '</li>';
        $config['next_tag_open'] = '<li>';
        $config['next_tag_close'] = '</li>';
        $config['first_link'] = 'Primeira';
        $config['last_link'] = 'Última';
        $config['first_tag_open'] = '<li>';
        $config['first_tag_close'] = '</li>';
        $config['last_tag_open'] = '<li>';
        $config['last_tag_close'] = '</li>';
        	
        $this->pagination->initialize($config); 	

		$data['results'] = $this->Conecte_model->getOs('os','*','',$config['per_page'],$this->uri->segment(3),'','',$this->session->userdata('cliente_id'));
       
	    $data['output'] = 'conecte/os';
       	$this->load->view('conecte/template',$data);
	}

	public function visualizarOs($id = null){
		
		if(!session_id() || !$this->session->userdata('conectado')){
        	redirect('mine');
        }

        $data['menuOs'] = 'os';
		$this->data['custom_error'] = '';
        $this->load->model('mapos_model');
        $this->load->model('os_model');
        $data['result'] = $this->os_model->getById($this->uri->segment(3));
        $data['produtos'] = $this->os_model->getProdutos($this->uri->segment(3));
        $data['servicos'] = $this->os_model->getServicos($this->uri->segment(3));
        $data['emitente'] = $this->mapos_model->getEmitente();

        if($data['result']->idClientes != $this->session->userdata('cliente_id')){
            $this->session->set_flashdata('error', 'Esta OS não pertence ao cliente logado.');
            redirect('mine/painel');
        }

        $data['output'] = 'conecte/visualizar_os';
        $this->load->view('conecte/template', $data);

    }
    
    public function imprimirOs($id = null){
        
        if(!session_id() || !$this->session->userdata('conectado')){
            redirect('mine');
        }

        $data['menuOs'] = 'os';
        $this->data['custom_error'] = '';
        $this->load->model('mapos_model');
        $this->load->model('os_model');
        $data['result'] = $this->os_model->getById($this->uri->segment(3));
        $data['produtos'] = $this->os_model->getProdutos($this->uri->segment(3));
        $data['servicos'] = $this->os_model->getServicos($this->uri->segment(3));
        $data['emitente'] = $this->mapos_model->getEmitente();

        if($data['result']->idClientes != $this->session->userdata('cliente_id')){
            $this->session->set_flashdata('error', 'Esta OS não pertence ao cliente logado.');
            redirect('mine/painel');
        }

        $this->load->view('conecte/imprimirOs', $data);

    }

	public function visualizarCompra($id = null){
		
		if(!session_id() || !$this->session->userdata('conectado') ){
        	redirect('mine');
        }

        $data['menuVendas'] = 'vendas';
		$data['custom_error'] = '';
        $this->load->model('mapos_model');
        $this->load->model('vendas_model');
        $data['result'] = $this->vendas_model->getById($this->uri->segment(3));
        $data['produtos'] = $this->vendas_model->getProdutos($this->uri->segment(3));
        $data['emitente'] = $this->mapos_model->getEmitente();

        if($data['result']->clientes_id != $this->session->userdata('cliente_id')){
            $this->session->set_flashdata('error', 'Esta OS não pertence ao cliente logado.');
            redirect('mine/painel');
        }


        $data['output'] = 'conecte/visualizar_compra';
        $this->load->view('conecte/template', $data);
    }
    
    public function imprimirCompra($id = null){
		
		if(!session_id() || !$this->session->userdata('conectado') ){
        	redirect('mine');
        }

        $data['menuVendas'] = 'vendas';
		$data['custom_error'] = '';
        $this->load->model('mapos_model');
        $this->load->model('vendas_model');
        $data['result'] = $this->vendas_model->getById($this->uri->segment(3));
        $data['produtos'] = $this->vendas_model->getProdutos($this->uri->segment(3));
        $data['emitente'] = $this->mapos_model->getEmitente();

        if($data['result']->clientes_id != $this->session->userdata('cliente_id')){
            $this->session->set_flashdata('error', 'Esta OS não pertence ao cliente logado.');
            redirect('mine/painel');
        }


        $this->load->view('conecte/imprimirVenda', $data);
	}


    public function minha_ordem_de_servico($y = null, $when = null){

        if(($y != null) && (is_numeric($y) )){

            // Do not forget this number -> 44023
            // function sending => y = (7653 * ID) + 44023
            // function recieving => x = (y - 44023) / 7653

            // Example ID = 2 | y = 59329

            $y = intval($y);
            $id = ($y - 44023) / 7653;


            $data['menuOs'] = 'os';
            $this->data['custom_error'] = '';
            $this->load->model('mapos_model');
            $this->load->model('os_model');
            $data['result'] = $this->os_model->getById($id);
            if($data['result'] == null){
                // Resposta em caso de não encontrar a ordem de serviço
                //$this->load->view('conecte/login');

            }
            else{

                $data['produtos'] = $this->os_model->getProdutos($id);
                $data['servicos'] = $this->os_model->getServicos($id);
                $data['emitente'] = $this->mapos_model->getEmitente();

                $this->load->view('conecte/minha_os', $data);

            }


        }

        else{
            // Resposta em caso de não encontrar a ordem de serviço
            //$this->load->view('conecte/');
        }

    }


    // Cadastro de OS pelo cliente
    public function adicionarOs(){

        $this->load->library('form_validation');

        $this->form_validation->set_rules('descricaoProduto', 'Descrição', 'required');
        $this->form_validation->set_rules('defeito', 'Defeito');
        $this->form_validation->set_rules('observacoes', 'Observações');


        if ($this->form_validation->run() == false) {
            $this->data['custom_error'] = (validation_errors() ? true : false);
        } else {

            $id = null;
            $usuario = $this->db->query('SELECT usuarios_id, count(*) as down FROM os GROUP BY usuarios_id ORDER BY down LIMIT 1')->row();
            if($usuario->usuarios_id == null){
                $this->db->where('situacao',1);
                $this->db->limit(1);
                $usuario = $this->db->get('usuarios')->row();

                if($usuario->idUsuarios == null){
                    $this->session->set_flashdata('error','Ocorreu um erro ao cadastrar a ordem de serviço, por favor contate o administrador do sistema.');
                    redirect('mine/os');
                }else{
                    $id = $usuario->idUsuarios;
                }
            }else{
                $id = $usuario->usuarios_id;
            }

            $data = array(
                'dataInicial' => date('Y-m-d'),
                'clientes_id' => $this->session->userdata('cliente_id'), //set_value('idCliente'),
                'usuarios_id' => $id, //set_value('idUsuario'),
                'dataFinal' => date('Y-m-d'),
                'descricaoProduto' => $this->input->post('descricaoProduto'),
                'defeito' => $this->input->post('defeito'),
                'status' => 'Aberto',
                'observacoes' => set_value('observacoes'),
                'faturado' => 0
            );

            if ( is_numeric($id = $this->Conecte_model->add('os', $data, true)) ) {
                $this->session->set_flashdata('success','OS adicionada com sucesso!');
                redirect('mine/detalhesOs/'.$id);

            } else {

                $this->data['custom_error'] = '<div class="form_error"><p>Ocorreu um erro.</p></div>';
            }
        }

        $data['output'] = 'conecte/adicionarOs';
        $this->load->view('conecte/template', $data);
    }

    public function detalhesOs($id = null){
        if(is_numeric($id) && $id != null){ 

            $this->load->model('mapos_model');
            $this->load->model('os_model');

            $this->data['result'] = $this->os_model->getById($id);
            $this->data['produtos'] = $this->os_model->getProdutos($id);
            $this->data['servicos'] = $this->os_model->getServicos($id);
            $this->data['anexos'] = $this->os_model->getAnexos($id);

            if($this->data['result']->idClientes != $this->session->userdata('cliente_id')){
                $this->session->set_flashdata('error', 'Esta OS não pertence ao cliente logado.');
                redirect('mine/painel');
            }
            
            $this->data['output'] = 'conecte/detalhes_os';
            $this->load->view('conecte/template', $this->data);
        }
        else{
            echo "teste";
        }
    }

    // método para clientes se cadastratem
    public function cadastrar()
    {

        $this->load->model('clientes_model','',TRUE);
        $this->load->library('form_validation');
        $this->data['custom_error'] = '';

        if ($this->form_validation->run('clientes') == false) {
            $this->data['custom_error'] = (validation_errors() ? '<div class="form_error">' . validation_errors() . '</div>' : false);
        } else {
            $data = array(
                'nomeCliente' => set_value('nomeCliente'),
                'documento' => set_value('documento'),
                'telefone' => set_value('telefone'),
                'celular' => $this->input->post('celular'),
                'email' => set_value('email'),
                'rua' => set_value('rua'),
                'numero' => set_value('numero'),
                'bairro' => set_value('bairro'),
                'cidade' => set_value('cidade'),
                'estado' => set_value('estado'),
                'cep' => set_value('cep'),
                'dataCadastro' => date('Y-m-d')
            );

            if ($this->clientes_model->add('clientes', $data) == TRUE) {
                $this->session->set_flashdata('success','Cliente adicionado com sucesso!');
                redirect(base_url() . 'index.php/mine');
            } else {
                $this->session->set_flashdata('success','Cliente adicionado com sucesso!');
            }
        }
        $data = '';
        $this->load->view('conecte/cadastrar', $data);   
    }

}

/* End of file conecte.php */
/* Location: ./application/controllers/conecte.php */

 

Editado por Samuel Costa2018
Deixar mais claro o que se trata

Compartilhar este post


Link para o post
Compartilhar em outros sites
21 horas atrás, Samuel Costa2018 disse:

[...]Sou leigo em relação a esse assunto, por isso preciso da ajuda de vocês[...]

 

A minha dúvida quanto a questão é: Você quer aprender ou quer o problema resolvido?

 

Dependendo da resposta, posso redirecionar aqui.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Quero um auxílio pois já tentei diversos códigos com essa função e não funcionou e já tou quase desistindo... se puder me dar alguma dica eu fico agradecido. (Leigo que eu falo é ter o básico do básico)

Compartilhar este post


Link para o post
Compartilhar em outros sites

Ao que parece,  você está utilizando o CodeIgniter. Ele possui a própria biblioteca de envio de e-mail: https://www.codeigniter.com/user_guide/libraries/email.html

 

Se é para enviar o e-mai após o login, adicione dentro deste IF:

if(count($cliente) > 0){
    $dados = array('nome' => $cliente->nomeCliente, 'cliente_id' => $cliente->idClientes,'conectado' => TRUE);
    $this->session->set_userdata($dados);

    if($ajax == true){
        $json = array('result' => true);
        echo json_encode($json);
    }
    else{
        redirect(site_url().'/mine');
    }               
}

Ele fica no método login.

Compartilhar este post


Link para o post
Compartilhar em outros sites

De que forma você adiciou? Mostre-nos o que fez até o momento.

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

  • Conteúdo Similar

    • Por Ivana_Silva
      Olá a todos que estão lendo!
       
      Preciso de uma função PHP que filtre 2 padrões de campos a partir do caractere barra(|), preservando a linha.
       
      Em uma caixa de texto vou colar valores assim:
      0001|qwerty
      0002|091234
      0003|09164867
      0004|ab12312
      ...
      A caixa de texto:
      <form id="form" name="form" method="post" action=""> <textarea name="lista" type="text" id="lista" cols="48" rows="5" size="600" /></textarea> <br /> <br /> <button type="submit">Separar</button> </form> <?php ?> Quando eu clicar no botão Separar, preciso que o código filtre e mostre apenas as linhas que, após barra " | " possuam números inteiros de 6 e 8 dígitos(sem letras, símbolos ou pontos).
       
      Exemplo:
      Dados colados na caixa de texto:
      0001|qwerty
      0002|091234
      0003|09164867
      0004|ab12312
       
      Dados filtrados após clicar no botão Separar:
      0002|091234
      0003|09164867
       
      Filtrou apenas os campos que após a barra "|" possuem 6 e 8 dígitos(Nem mais nem menos), não é pra filtrar campos com letras ou números e letras, se tiver letra após a barra já descarta... É pra Filtrar e mostrar apenas as linhas que possuem 6 e 8 dígitos após a barra.
      Agradecida se alguém puder ajudar!
       
    • Por Fábio.info7
      Olá pessoal, estou precisando de uma grande ajuda, tenho duas tabelas no postgres, são elas: PESSOA e a outra é  ENDERECOS, elas estão relacionadas, oq acontece é que no php eu preciso recuperar o valor do id através da função nextval('nome_da_sequnce'), e não estou sabendo fazer, preciso recuperar o ultimo id e depois realizar o insert nas tabelas relacionadas, poderiam me dar um exemplo de como implementar isso? abaixo deixo o meu codigo php, acredito que esteja errado pois não esta gravando no banco.
       
      Minhas tabelas do banco: CREATE TABLE public.pessoa ( codigo_aluno integer NOT NULL DEFAULT nextval('pessoa_codigo_aluno_seq'::regclass), cpf character varying(11) COLLATE pg_catalog."default" NOT NULL, nome character varying(30) COLLATE pg_catalog."default" NOT NULL, sexo character varying(30) COLLATE pg_catalog."default" NOT NULL, nascimentodata date NOT NULL, email character varying(50) COLLATE pg_catalog."default" NOT NULL, endereco integer, CONSTRAINT pessoa_pkey PRIMARY KEY (codigo_aluno), CONSTRAINT pessoa_endereco_fkey FOREIGN KEY (endereco) REFERENCES public.enderecos (codigo_endereco) ) CREATE TABLE public.enderecos ( codigo_endereco integer NOT NULL DEFAULT nextval('enderecos_codigo_endereco_seq'::regclass), logradouro character varying(200) COLLATE pg_catalog."default" NOT NULL, bairro character varying(80) COLLATE pg_catalog."default" NOT NULL, cidade character varying(100) COLLATE pg_catalog."default" NOT NULL, uf character varying(2) COLLATE pg_catalog."default" NOT NULL, cep character varying(20) COLLATE pg_catalog."default" NOT NULL, CONSTRAINT enderecos_pkey PRIMARY KEY (codigo_endereco) ) ****** ABAIXO O PHP *************************************** <?php try { require_once "conexao.php"; $dados = filter_input_array(INPUT_POST, FILTER_DEFAULT); $sql = "select nextval('pessoa_codigo_aluno_seq')"; $seq = $conn->prepare($sql); $id = $seq->execute(); $id = $seq->fetchAll(PDO::FETCH_ASSOC); $sql = "insert into pessoa (cpf, nome, sexo, nascimentodata, email, endereco ) values (:cpf, :nome, :sexo, :nascimentodata, :email, :fk_endereco )"; $inserir = $conn->prepare($sql); $inserir->bindParam(":cpf", $dados["cpf"]); $inserir->bindParam(":nome", $dados["nome"]); $inserir->bindParam(":sexo", $dados["sexo"]); $inserir->bindParam(":nascimentodata", $dados["nascimentodata"]); $inserir->bindParam(":email", $dados["email"]); $inserir->bindParam(":fk_endereco", $id['codigo_endereco']); $inserir->execute(); // Gravando dados de endereço $sql_end = "insert into enderecos (codigo_endereco, logradouro, bairro, cidade, uf, cep, pessoa )values(:codigo_endereco, :logradouro,:bairro,:cidade,:uf,:cep, :pessoa)"; $end = $conn->prepare($sql_end); $end->bindParam(":codigo_endereco", $id['codigo_endereco']); $end->bindParam(":logradouro", $dados["logradouro"]); $end->bindParam(":bairro", $dados["bairro"]); $end->bindParam(":cidade", $dados["cidade"]); $end->bindParam(":uf", $dados["uf"]); $end->bindParam(":cep", $dados["cep"]); $end->execute(); echo "Dados gravados com sucesso!"; } catch (Exception $e) { echo "Mensagem: " . $e->getMessage() . "<br/>"; echo "Linha do Erro: " . $e->getLine() . "<br/>"; } PRECISO CONSEGUIR INSERIR OS DADOS NAS DUAS TABELAS INSERINDO OS IDS RECUPERADOS PELO NEXTVAL()
    • Por Caio Mekacheski
      Beleza galera, nesse meu primeiro post, quero compartilhar esse video onde inicio um tutorial básico pra aprender a programar em c++, só que de maneira prática. Um programa simples que eu escrevi pra fazer o cálculo da metragem cúbica de peças de madeira que eu beneficio aqui na minha pequena marcenaria. Um programa simples que me ajuda a executar uma tarefa tediosa, e que apresenta um conhecimento básico na programação em c++. Então resolvi fazer dele um tutorial prático para iniciantes. Nesse primeiro video eu apresento um esboço inicial pra entender o que o programa vai fazer. Conforme for desenvolvendo o programa, vou apresentando novos conceitos gradativamente. Espero que gostem. 
       
      https://www.youtube.com/watch?v=Obr8Jrp7LGQ
    • Por Fábio.info7
      Possuo um formulário com os seguintes dados, nome, idade, cpf, sexo, logradouro, bairro, cidade, eu possuo 1 banco com as seguintes tabelas, TABELA PESSOA E TABELA ENDERECO, ao enviar o formulário eu preciso gravar os dados pessoais na tabela pessoa e os dados de endereço na tabela endereco, o banco é postgres, como fazer isso? Poderiam me dar um exemplo?
      Só uma observação: Estou usando PDO e com relação as tabelas, elas estão relacionadas entre si pela chave primária. 
       
      Acredito que a solução seja simples, mas sou iniciante em php, preciso dessa força para continuar meus estudos.
       
      nome, idade ,cpf, sexo Sege as tabelas do meu banco postgres: create table pessoa( codigo serial not null, nome varchar(30) not null, idade int not null, cpf varchar(11) not null, sexo varchar(20) not null ); CREATE TABLE public.enderecos ( codigo integer NOT NULL DEFAULT nextval('enderecos_codigo_seq'::regclass), logradouro character varying(80) COLLATE pg_catalog."default" NOT NULL, bairro character varying(80) COLLATE pg_catalog."default" NOT NULL, cidade character varying(80) COLLATE pg_catalog."default" NOT NULL, uf character varying(2) COLLATE pg_catalog."default", cep character varying(9) COLLATE pg_catalog."default", pessoa integer, CONSTRAINT codigo_end PRIMARY KEY (codigo), CONSTRAINT enderecos_pessoa_fkey FOREIGN KEY (pessoa) REFERENCES public.pessoa (codigo) MATCH SIMPLE ON UPDATE NO ACTION ON DELETE NO ACTION ) WITH ( OIDS = FALSE ) TABLESPACE pg_default; ALTER TABLE public.enderecos OWNER to postgres; AQUI MEU FORMULÁRIO: <form action="grava.php" method="post"> Nome: <input type="text" name="nome"><br> CPF:<input type="text" name="cpf"><br> Sexo: <input type="text" name="sexo"><br> Idade: <input type="text" name="idade"><br> Logradouro: <input type="text" name="logradouro"><br> Bairro: <input type="text" name="bairro"><br> Cidade: <input type="text" name="cidade"><br> Cep: <input type="text" name="cep"><br> <input type="submit" value="Cadastrar"> </form> ERQUIVO enviar.php: <?php try { require_once "conexao.php"; $dados = filter_input_array(INPUT_POST, FILTER_DEFAULT); // Gravando dados pessoais $sql = "insert into pessoa (cpf, nome, sexo, nascimentodata, email ) values (:cpf, :nome, :sexo, :nascimentodata, :email )"; $inserir = $conn->prepare($sql); $inserir->bindParam(":cpf", $dados["cpf"]); $inserir->bindParam(":nome", $dados["nome"]); $inserir->bindParam(":sexo", $dados["sexo"]); $inserir->bindParam(":nascimentodata", $dados["nascimentodata"]); $inserir->bindParam(":email", $dados["email"]); $inserir->execute(); // Gravando dados de endereço $sql_end = "insert into enderecos (logradouro, bairro, cidade, uf, cep )values(:logradouro,:bairro,:cidade,:uf,:cep)"; $end = $conn->prepare($sql_end); $end->bindParam(":logradouro", $dados["logradouro"]); $end->bindParam(":bairro", $dados["bairro"]); $end->bindParam(":cidade", $dados["cidade"]); $end->bindParam(":uf", $dados["uf"]); $end->bindParam(":cep", $dados["cep"]); $end->execute(); echo "Dados gravados com sucesso!"; } catch (Exception $e) { echo "Mensagem: " . $e->getMessage() . "<br/>"; echo "Linha do Erro: " . $e->getLine() . "<br/>"; }  
    • Por pewty
      hey, eu queria um código que quando o utilizador passa-se com o rato por cima da imagem fizesse um zoom in tal como aqui -> https://codepen.io/nxworld/pen/ZYNOBZ?editors=1100
      não sei porquê não consigo adicionar esse código para fazer com que funcione. ajuda seria bem vinda, obrigado :)
      código sobre as imagens atual:
      <div class="w3-row-padding w3-center w3-light-grey"> <div class="w3-third"> <p><b>5D</b></p> <figure><img src="5dseries/5dmkiv.png" alt="Random Name" style="width:50%;height:50%"></figure> <p><b><span>2,999.00 </span></b></p> </div> <div class="w3-third"> <p><b>1D</b></p> <figure><img src="1dseries/1dxmk3.png" alt="Random Name" style="width:50%;height:50%"></figure> <p><b><span>$5,499.00</b></p></span> </div> <div class="w3-third"> <p><b>6D</b></p> <figure><img src="6d/6d1.png" alt="Random Name" style="width:50%;height:50%"></figure> <p><b><span>$1,499.00</span></b></p> </div> </div>  
×

Informação importante

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