Jump to content

Search the Community

Showing results for tags 'poo'.



More search options

  • Search By Tags

    Type tags separated by commas.
  • Search By Author

Content Type


Calendars

  • Comunidade iMasters

Forums

  • Q&A Desenvolvimento
    • Perguntas e respostas rápidas
  • Desenvolvimento e Banco de Dados
    • HTML e CSS
    • Java
    • Javascript
    • .NET
    • PHP
    • Python
    • Ruby
    • Mobile
    • Ambientes de Desenvolvimento
    • Arquitetura e Métodos Ágeis
    • Banco de Dados
    • DevOps
    • Desenvolvimento de Games
    • E-Commerce e Pagamentos Online
    • SEO e Otimizações
    • WordPress
    • Algoritmos & Outras Tecnologias
  • Design e Produto
    • Fotografia
    • Photoshop
    • Design de interfaces e UX
    • Edição/Produção de Vídeos
    • Marketing Online
    • Desenho, Ilustração e 3D
  • Entretenimento e uso pessoal
    • Geral
    • Segurança & Malwares
    • Gadgets e wearable
    • Softwares e Apps
    • Entretenimento

Find results in...

Find results that contain...


Date Created

  • Start

    End


Last Updated

  • Start

    End


Filter by number of...

Joined

  • Start

    End


Group


Google+


Hangouts


Skype


Twitter


deviantART


Github


Flickr


LinkedIn


Pinterest


Facebook


Site Pessoal


Localização


Interesses

Found 37 results

  1. monek

    Como interagir entre objetos?

    Vi uma seria de videos sobre POO e estou tentando fazer alguma coisa para testar meus conhecimentos, percebi que estou com muita dificuldade para criar interação entre objetos... Fiz essa classe player que cria um player E uma função bem porca de pvp pra criar 2 players e fazer PVP entre eles <html> <head><title>Test POO</title></head> <body> <?php require_once 'player.php'; $j[1] = new Player("Bubble", 4); $j[2] = new Player("Knurd Yep", 1); var_dump($j[1]); echo '<br>'; var_dump($j[2]); echo '<br>'; echo '<br>'; PvP($j[1], $j[2]); ?> </body> </html> <?php class Player { private $name; private $level; private $vocation; public function __construct($n, $v) { $this->setName($n); $this->setVocation($v); $this->setLevel(8); } // interação entre players function getAtk($j) { $atk = $j->getVocation() * $j->getLevel() return $atk; } function PvP($jA, $jB) { if(getAtk($jA) > getAtk($jB)) { echo 'Player' .$jA->getName(). 'matou' .$jB->getName().'!'; } else { echo 'Player' .$jB->getName(). 'matou' .$jA->getName().'!'; } } // getters e setters padrões function getName() { return $this->name; } function setName($nome) { $this->name = $nome; } function getLevel() { return $this->name; } function setLevel($l) { $this->level = $l; } function getVocation() { return $this->vocation; } function setVocation($v) { $this->vocation = $v; } } O que eu to fazendo de errado?
  2. Janni e Gui

    PHP com POO

    Estou precisando fazer um projeto para a faculdade a partir de um codigo pronto que o professor passou que faça basicamente upload, listagem e exclusao de fotos. Até aí tudo bem, eu já consegui fazer, o problema é que a classe diretorio tem que ficar orientada a objetos, e eu nao estou conseguindo raciocinar para fazer isso. abaixo segue os codigos da Index, CadastrarArquivo, ExcluirArquivo e a classe diretorio, que é a qual solicito ajuda no codigo para tornar-se POO. Agradeço a ajuda. //INDEX <?php // utilizar este arquivo ao invés de index.html // pois com o PHP vai ser possível tornar a lista de arquivos // uma lista dinâmica, ou seja, com base no que existe na pasta // e é preciso formatar o formulário para que esteja // enviando seus dados de forma correta para o script cadastrar_arquivo.php // ** lembre-se do método, do action e do enctype ?> <!DOCTYPE html> <html lang="en"> <head> <meta charset="utf-8"> <meta http-equiv="X-UA-Compatible" content="IE=edge"> <meta name="viewport" content="width=device-width, initial-scale=1"> <meta name="description" content=""> <meta name="author" content=""> <title>MAPA</title> <!-- Bootstrap Core CSS --> <link href="../vendor/bootstrap/css/bootstrap.min.css" rel="stylesheet"> <!-- MetisMenu CSS --> <link href="../vendor/metisMenu/metisMenu.min.css" rel="stylesheet"> <!-- Custom CSS --> <link href="../dist/css/sb-admin-2.css" rel="stylesheet"> <!-- Custom Fonts --> <link href="../vendor/font-awesome/css/font-awesome.min.css" rel="stylesheet" type="text/css"> <!-- HTML5 Shim and Respond.js IE8 support of HTML5 elements and media queries --> <!-- WARNING: Respond.js doesn't work if you view the page via file:// --> <!--[if lt IE 9]> <script src="https://oss.maxcdn.com/libs/html5shiv/3.7.0/html5shiv.js"></script> <script src="https://oss.maxcdn.com/libs/respond.js/1.4.2/respond.min.js"></script> <![endif]--> </head> <body> <div id="wrapper"> <!-- Navigation --> <nav class="navbar navbar-default navbar-static-top" role="navigation" style="margin-bottom: 0"> <div class="navbar-header"> <a class="navbar-brand" href="index.html">MAPA - EAD UniCesumar</a> </div> <!-- /.navbar-header --> </nav> <div id="page-wrapper" style="margin-left:0px"> <div class="row"> <div class="col-md-6 col-md-offset-3"> <h1 class="page-header">Projeto Mapa Unicesumar</h1> </div> <!-- /.col-lg-12 --> </div> <!-- /.row --> <div class="row"> <div class="col-md-6 col-md-offset-3"> <div class="panel panel-default"> <div class="panel-heading" > Digite o nome do arquivo e anexe o documento... </div> <?php if (isset($_GET['error'])) {?> <div class="panel-heading" style="background-color: #cccccc;"> Preencha o formulário corretamente! </div> <?php }?> <div class="panel-body"> <div class="row"> <div class="col-lg-12"> <form role="form" name="upload" action="cadastrar_arquivo.php" method="post" enctype="multipart/form-data"> <div class="form-group"> <label>Nome do Arquivo</label> <input name="nome" class="form-control"> <p class="help-block">Digite o nome que o arquivo será salvo...</p> </div> <div class="form-group"> <label>Anexar Arquivo</label> <input name="imagem" type="file"> </div> <button type="submit" class="btn btn-active">Enviar Arquivo</button> </form> </div> <!-- /.col-lg-12 (nested) --> </div> <!-- /.row (nested) --> </div> <!-- /.panel-body --> </div> <!-- /.panel --> </div> <!-- /.col-lg-12 --> </div> <!-- /.row --> <div class="row"> <div class="col-md-6 col-md-offset-3"> <div class="panel panel-default"> <div class="panel-heading"> Relatório de Arquivos </div> <!-- /.panel-heading --> <div class="panel-body"> <div class="table-responsive"> <table class="table table-striped table-bordered table-hover"> <thead> <tr> <th>#</th> <th>Arquivo</th> <th>Excluir?</th> </tr> </thead> <tbody> <?php $dir = '../uploads'; $files1 = scandir($dir); $i=0; foreach ($files1 as $file){ if(strlen($file)>3) { $i++; ?> <tr> <td><?php echo $i ?></td> <td><?php echo $file ?><img src="<?php echo $dir.'/'.$file ?>" title="<?php echo $file ?>" style="width: 15%;"/></td> <td><a href="excluir_arquivo.php?excluir=<?php echo$file?>">Excluir</a></td> </tr> <!-- <tr> <td><?php echo $i ?></td> <td><img src="<?php echo $dir.'/'.$file ?>" title="<?php echo $file ?>" style="width: 15%;"/></td> <td><a href="excluir_arquivo.php?excluir=<?php echo$file?>">Excluir</a></td> </tr>--> <?php } } ?> </tbody> </table> </div> <!-- /.table-responsive --> </div> <!-- /.panel-body --> </div> </div> </div> </div> <!-- /#page-wrapper --> </div> <!-- /#wrapper --> <!-- jQuery --> <script src="../vendor/jquery/jquery.min.js"></script> <!-- Bootstrap Core JavaScript --> <script src="../vendor/bootstrap/js/bootstrap.min.js"></script> <!-- Metis Menu Plugin JavaScript --> <script src="../vendor/metisMenu/metisMenu.min.js"></script> <!-- Custom Theme JavaScript --> <script src="../dist/js/sb-admin-2.js"></script> </body> </html> -------------------------------------------------------------------- //cadastrar arquivo <?php // script que recebe os dados do formulário // trata os dados // recebe o upload // recebe o nome do arquivo // move o arquivo para a pasta uploads // salvando com o nome informado pelo input // depois redireciona para a lista de arquivos novamente $error = ''; if (isset($_POST['nome']) && $_POST['nome']!='' && isset($_FILES['imagem'])) { $name = $_FILES["imagem"]["name"]; $ext = end((explode(".", $name))); # extra () to prevent notice $uploaddir = '../uploads/'; $uploadfile = $uploaddir . $_POST['nome'].'.'.$ext; if (move_uploaded_file($_FILES['imagem']['tmp_name'], $uploadfile)) { echo "Arquivo válido e enviado com sucesso.\n"; } }else { $error = "error"; } header('Location: '.'index.php?'.$error); ?> -------------------------------------------------------------------- //Excluir arquivo <?php $delete = $_GET['excluir']; unlink('../uploads/'.$delete); header('Location: '.'index.php'); ?> -------------------------------------------------------------------- //diretorio <?php interface DiretorioInterface { public function recuperarListaArquivos();//{} public function excluirArquivo($nome_arquivo);//{} public function cadastrarArquivo($arquivo);//{} /** * se precisra pode construir mais métodos * ou até mesmo dar manutenção nesta interface */ } class Diretorio implements DiretorioInterface { } ?>
  3. Mateus Silva

    Admin com MVC

    Olá, seguinte galera, estava pensando em como organizar um site em MVC, onde armazenar os arquivos de admin do mesmo! Eu tenho um sistema que eu mesmo criei em MVC que é bem útil pra mim pois a base do site de quase todos os meus clientes é a mesma, assim eu só reestilizo e pronto. Porém surgiu a necessidade de criar um gerenciador de conteudo, eu estava pensando em onde colocar esse sistema, pensei em cria-lo como um controller, eu uso a seguinte estrutura: - app - plugins - usuarios • UsuariosController.php • UsuariosModel.php • NovoView.php • ListarView.php • EditarView.php Pensei em fazer, como eu disse, como um controller: - app - plugins - admin • AdminController.php • AdminModel.php • AdminView.php - usuarios • NovoView.php • EditarView.php - posts • NovoView.php • EditarView.php Pensei nisso mas não sei se é certo e se seria funcional, enfim, me deem uma luz da melhor forma de fazer isso!
  4. Olá, é o seguinte: Eu tenho um cliente que me pediu um sistema onde ele tem a lista de emails do newsletter e ele quer enviar um email para todos de uma só vez, meio que como funciona com e-mail marketing, até aí tudo ok, mil maravilhas, o problema é: e se ele mudar de página, fechar a aba ou o navegador ? Obviamente o script para de rodar. A ideia é que o navegador não fique esperando uma resposta para continuar, simplesmente ele dá o comando e dá uma mensagem ao usuário de que os e-mails estão sendo enviados, o servidor vai executar, enviar e-mail por e-mail e posteriormente vai gerar um log (até ai ok). Ou seja, o que eu preciso é que o script de envio dos emails rode no background do servidor, que o servidor seja responsável por enviar os emails e não o usuário propriamente dito, sendo assim o usuário pode trocar de página, fechar o navegador, desligar o computador, que o sistema vai enviar email por email e quando o usuário entrar novamente, caso já tenha sido finalizado, o sistema mostra pra ele quais foram enviados e se algum teve problema. Na empresa onde trabalho temos um sistema parecido com esse, como o sistema faz comunicação com várias API's ao mesmo tempo, se tivesse que ficar esperando uma resposta ia demorar muito, então, foi feito exatamente o que eu disse a cima, o usuário não vê o script rodando, ele só recebe uma mensagem genérica, essa parte do sistema não fui eu quem fez, então não consegui entender muito bem, eu sei que foi usado o comando exec() e acho que rola algum comando no terminal do linux. Ficou grande a explicação mas acho que deu pra entender, conseguem me ajudar com uma ideia pra solucionar isso ?
  5. Pessoal, fiz uma enquete para saber quantas pessoas utilizam os princípios de código limpo. Você pode acessar a enquete por meio deste link: http://bit.ly/enquete-codigo-limpo A pesquisa leva, literalmente, menos de 1 minuto! :)
  6. jardeldint

    Alteração no MAPOs

    Olá pessoal! Acredito que alguns daqui do grupo conhece o sistema de Ordens de Serviço MAPOS, que foi desenvolvido em CodeIgniter. Estou fazendo uma alteração nele, para que quando o usuário for receber uma parte de um pagamento do cliente, o restante apareça no cadastro de cliente. Por exemplo: O Cliente X tinha um débito de R$ 500,00. Más no dia Y ele pagou R$ 100,00, restando então R$ 400,00. No Models do Financeiro, fiz essa alteração abaixo na linha do "function edit": <?php if ( ! defined('BASEPATH')) exit('No direct script access allowed'); class Financeiro_model extends CI_Model { function __construct() { parent::__construct(); } function get($table,$fields,$where='',$perpage=0,$start=0,$one=false,$array='array'){ $this->db->select($fields); $this->db->from($table); $this->db->order_by('data_vencimento', 'asc'); $this->db->limit($perpage,$start); if($where){ $this->db->where($where); } $query = $this->db->get(); $result = !$one ? $query->result() : $query->row(); return $result; } function getById($id){ $this->db->where('idClientes',$id); $this->db->limit(1); return $this->db->get('clientes')->row(); } function add($table,$data){ $this->db->insert($table, $data); if ($this->db->affected_rows() == '1') { return TRUE; } return FALSE; } function edit($table,$data,$fieldID,$ID){ $this->db->select('clientes.saldoDevedor, lancamentos.clientes_id, lancamentos.valor, lancamentos.idLancamentos'); $this->db->from('lancamentos,clientes'); $this->db->where($fieldID,$ID); $this->db->update($table, $data); if ($this->db->affected_rows() >= 0) { return TRUE; } return FALSE; } function delete($table,$fieldID,$ID){ $this->db->where($fieldID,$ID); $this->db->delete($table); if ($this->db->affected_rows() == '1') { return TRUE; } return FALSE; } function count($table) { return $this->db->count_all($table); } } E no Views do lançamento criei esse campo, dentro do Modal de Editar Lançamento: <div class="span4" style="margin-left: 0"> <label for="valor-pagar">Valor a Receber/Pagar</label> <input type="text" name="tipoPagar" value="" /> <input type="hidden" id="Pagar" name="idPagar" value="" /> </div> E no Controlers na função Editar, alterei com essas informações: Eu so inseri esses comandos que vocês odem olhar no codigo abaixo: public function editar(){ if(!$this->permission-> checkPermission($this->session->userdata('permissao'),'eLancamento')){ $this->session->set_flashdata('error','Você não tem permissão para editar lançamentos.'); redirect(base_url()); } $this->load->library('form_validation'); $this->data['custom_error'] = ''; $urlAtual = $this->input->post('urlAtual'); $this->form_validation->set_rules('descricao', '', 'trim|required|xss_clean'); $this->form_validation->set_rules('fornecedor', '', 'trim|required|xss_clean'); $this->form_validation->set_rules('valor', '', 'trim|required|xss_clean'); $this->form_validation->set_rules('vencimento', '', 'trim|required|xss_clean'); $this->form_validation->set_rules('pagamento', '', 'trim|xss_clean'); if ($this->form_validation->run() == false) { $this->data['custom_error'] = (validation_errors() ? '<div class="form_error">' . validation_errors() . '</div>' : false); } else { $vencimento = $this->input->post('vencimento'); $pagamento = $this->input->post('pagamento'); try { $vencimento = explode('/', $vencimento); $vencimento = $vencimento[2].'-'.$vencimento[1].'-'.$vencimento[0]; $pagamento = explode('/', $pagamento); $pagamento = $pagamento[2].'-'.$pagamento[1].'-'.$pagamento[0]; } catch (Exception $e) { $vencimento = date('Y/m/d'); } $capturaValorTotal = $this->input->post('valor'); $capturaValorPagar = $this->input->post('valor-pagar'); $valorDevido = $capturaValorTotal - $capturaValorPagar; $inserindoBanco = "INSERT INTO `clientes` set `saldoDevedor`='".$valorDevido."'"; $executandoQuery = mysql_query($inserindoBanco); $data = array( 'descricao' => $this->input->post('descricao'), 'valor' => $this->input->post('valor'), 'valor-pagar' => $this->input->post('valor-pagar'), 'data_vencimento' => $vencimento, 'data_pagamento' => $pagamento, 'baixado' => $this->input->post('pago'), 'cliente_fornecedor' => $this->input->post('fornecedor'), 'forma_pgto' => $this->input->post('formaPgto'), 'numCheque' => $this->input->post('numCheque'), 'numCartao' => $this->input->post('numCartao'), 'valCartao' => $this->input->post('valCartao'), 'tipo' => $this->input->post('tipo') ); if ($this->financeiro_model->edit('lancamentos',$data,'idLancamentos',$this->input->post('id')) == TRUE) { $this->session->set_flashdata('success','lançamento editado com sucesso!'); redirect($urlAtual); } else { $this->session->set_flashdata('error','Ocorreu um erro ao tentar editar lançamento!'); redirect($urlAtual); } } $this->session->set_flashdata('error','Ocorreu um erro ao tentar editar lançamento.'); redirect($urlAtual); $data = array( 'descricao' => $this->input->post('descricao'), 'valor' => $this->input->post('valor'), 'data_vencimento' => $this->input->post('vencimento'), 'data_pagamento' => $this->input->post('pagamento'), 'baixado' => $this->input->post('pago'), 'cliente_fornecedor' => set_value('fornecedor'), 'forma_pgto' => $this->input->post('formaPgto'), 'tipo' => $this->input->post('tipo') ); print_r($data); } public function editar(){ if(!$this->permission->checkPermission($this->session->userdata('permissao'),'eLancamento')){ $this->session->set_flashdata('error','Você não tem permissão para editar lançamentos.'); redirect(base_url()); } $this->load->library('form_validation'); $this->data['custom_error'] = ''; $urlAtual = $this->input->post('urlAtual'); $this->form_validation->set_rules('descricao', '', 'trim|required|xss_clean'); $this->form_validation->set_rules('fornecedor', '', 'trim|required|xss_clean'); $this->form_validation->set_rules('valor', '', 'trim|required|xss_clean'); $this->form_validation->set_rules('vencimento', '', 'trim|required|xss_clean'); $this->form_validation->set_rules('pagamento', '', 'trim|xss_clean'); if ($this->form_validation->run() == false) { $this->data['custom_error'] = (validation_errors() ? '<div class="form_error">' . validation_errors() . '</div>' : false); } else { $vencimento = $this->input->post('vencimento'); $pagamento = $this->input->post('pagamento'); try { $vencimento = explode('/', $vencimento); $vencimento = $vencimento[2].'-'.$vencimento[1].'-'.$vencimento[0]; $pagamento = explode('/', $pagamento); $pagamento = $pagamento[2].'-'.$pagamento[1].'-'.$pagamento[0]; } catch (Exception $e) { $vencimento = date('Y/m/d'); } $capturaValorTotal = $this->input->post('valor'); $capturaValorPagar = $this->input->post('valor-pagar'); $valorDevido = $capturaValorTotal - $capturaValorPagar; $inserindoBanco = "INSERT INTO `clientes` set `saldoDevedor`='".$valorDevido."'"; $executandoQuery = mysql_query($inserindoBanco); $data = array( 'descricao' => $this->input->post('descricao'), 'valor' => $this->input->post('valor'), 'valor-pagar' => $this->input->post('valor-pagar'), 'data_vencimento' => $vencimento, 'data_pagamento' => $pagamento, 'baixado' => $this->input->post('pago'), 'cliente_fornecedor' => $this->input->post('fornecedor'), 'forma_pgto' => $this->input->post('formaPgto'), 'numCheque' => $this->input->post('numCheque'), 'numCartao' => $this->input->post('numCartao'), 'valCartao' => $this->input->post('valCartao'), 'tipo' => $this->input->post('tipo') ); if ($this->financeiro_model->edit('lancamentos',$data,'idLancamentos',$this->input->post('id')) == TRUE) { $this->session->set_flashdata('success','lançamento editado com sucesso!'); redirect($urlAtual); } else { $this->session->set_flashdata('error','Ocorreu um erro ao tentar editar lançamento!'); redirect($urlAtual); } } $this->session->set_flashdata('error','Ocorreu um erro ao tentar editar lançamento.'); redirect($urlAtual); $data = array( 'descricao' => $this->input->post('descricao'), 'valor' => $this->input->post('valor'), 'data_vencimento' => $this->input->post('vencimento'), 'data_pagamento' => $this->input->post('pagamento'), 'baixado' => $this->input->post('pago'), 'cliente_fornecedor' => set_value('fornecedor'), 'forma_pgto' => $this->input->post('formaPgto'), 'tipo' => $this->input->post('tipo') ); print_r($data); } O que eu não estou entendendo é onde esta ou onde estão os meus erros, pois não grava nada no Banco de Dados, sendo q eu criei na tablea clienes o campo saldoDevedor. E ainda por cima, quando faço o teste, utilizando o debito de cliente já existente, informo o valor que foi pago, e diz que foi alterando com sucesso, más na realidade nada acontece. Fico no aguardo se alguém puder me ajudar!
  7. Slacerda

    Transformar PE em POO C++

    Galera, boa tarde. Estou precisando transformar o código abaixo que está em PE (Programação Estruturada) para POO (Programação Orientada a objeto). Ou seja, temos que criar uma classe (um arquivo .h, usar o destrutor e construtotor, set e get) e chamar no #include. em Paralelo, temos que substituir o insert sort por um método bubble sorte. SERÁ QUE ALGUÉM PODE ME AJUDAR ? Segue o código em C++ que deve ser transformado para POO. #include #include #include using namespace std ; void buildArray( char [ ] , int ) ; void sortArray( char [ ] , int ) ; void printArray( const char [ ] , int ) ; int main( ) { const int aSize = 20 ; char a[ aSize ] ; buildArray( a , aSize ) ; sortArray( a , aSize ) ; printArray( a , aSize ) ; return 0 ; } void buildArray( char b[ ] , int bSize ) { srand( time( 0 ) ) ; for ( int i = 0 ; i < bSize ; ++i ) b[ i ] = (char)(rand( ) % 95 + 33) ; } void sortArray( char b[ ] , int bSize ) { for ( int j = 1 ; j < bSize ; ++j ) { int ins = b[ j ] ; int mov = j ; while ( ( mov > 0 ) && ( b[ mov - 1 ] > ins ) ) { b[ mov ] = b[ mov - 1 ]; mov--; } b[ mov ] = ins ; } } void printArray( const char b[ ] , int bSize ) { cout
  8. noebezerra

    Problema com AJAX - PHP - Slim Framework

    Olá este é meu primeito tópico, então me desculpe se estiver no lugar incorreto. O projeto se trata de um sistema de enquete, com votação em 'estrelinhas' Tenho um problema no meu Ajax. Estou usando o Slim framework com Eloquent (sou iniciante) Projeto no github: https://github.com/noebezerra/survey-slim Eu tenho uma ajax $('.stars-default').click(function(e) { e.preventDefault(); $.ajax({ url: '../app/Controllers/Poll.php', type: 'GET', dataType: 'html', data: {valor: pointStar, qtdperguntas: qtdperguntas}, }) .done(function(data) { console.log(data); }) .fail(function() { console.log("error"); }) }); Ele me retorna um Array (pointStar) que é a quantidade de estrelas selecionadas para cada pergunta e a quantidade de perguntas que possui na enquete. Poll.php <?php namespace App\Controllers; use App\Models\PollAnswers; session_start(); /** * */ class Poll extends Controller { public function poll() { $qtdperguntas = $_GET['qtdperguntas']; $result = '['; for ($i=0; $i < $qtdperguntas; $i++) { if ($i < $qtdperguntas - 1) { $result .= '"'.$_GET['valor'][$i].'",'; } else { $result .= '"'.$_GET['valor'][$i].'"'; } } $result .= ']'; $userpoll = PollAnswers::where('id_user', '=', $_SESSION['user']); if (!$userpoll) { PollAnswers::create([ 'id_user' => $_SESSION['user'], 'answers' => $result ]); echo "insert"; } else { $userpoll->answers = $result; echo "update"; } } } ?> Controller.php <?php namespace App\Controllers; /** * */ class Controller { protected $container; public function __construct($container) { $this->container = $container; } public function __get($property) { if ($this->container->{$property}) { return $this->container->{$property}; } } } ?> PollAnswers.php <?php namespace App\Models; use Illuminate\Database\Eloquent\Model; /** * */ class PollAnswers extends Model { protected $table = 'poll_answers'; protected $fillable = array('id_user', 'id_poll_question', 'answers'); } ?> Quando o ajax chega lá na pagina dá o seguinte erro: Fatal error: Class 'Controller' not found in /var/www/html/survey-slim/app/Controllers/Poll.php on line 14, referer: http://localhost/survey-slim/public/ Parece que ele não reconhece minha classe. Alguém possui uma sugestão? Como o projeto está no github sinta-se avontade para contribuir =)
  9. Bom dia a todos, Tenho um projeto atualmente zero orientado a objeto. Estava dando uma lida e pesquisada pela net, muita gente diz que o PHP é muito "misto", praticamente todos projetos irá encontrar linguagem procedural a grosso modo como também linguagem orientada a objeto (juntas), principalmente se for algo pequeno que não utilize frameworks como zend, cake, etc. Também ciente que orientação a objeto é um paradigma para nosso código se tornar "algo real", já li até mesmo que não é necessário o código ser baseado em classes para ser orientado a objeto(nunca vi POO sem classes), achei estranho e comecei a duvidar do que estava lendo, onde também dizia que Orientação a Objeto é mais a parte de organização do nosso código e algumas medidas que são padrões para manter essa organização. OK, até ai tudo é teoria. DÚVIDAS QUE NÃO ME DEIXAM DORMIR: • MVC: É possível eu seguir a estrutura MVC em php para um código não orientado a objeto? É possível ter o MVC em algo mais procedural ou misto? • MIGRAÇÃO: Caso eu seja obrigado a refazer meu projeto orientado a objeto, o que eu preciso saber que irei encarar pela frente? É algo que leva tempo, mas existe alguma forma de tornar essa migração facilitada? • PDO / MySQLi: PDO é um método montado em cima do paradigma orientado a objeto, sendo assim posso dizer que PDO é orientado a objeto? Minhas manipulações sql/php com pdo são orientadas a objetos apenas por utilizá-lo? O mesmo para MySQLi. OBS: Boatos de que BOA PARTE da documentação do PHP é estrutural, isto é por si verdade ou não, tudo que existe em PHP estruturado/procedural também existe em PHP orientado a objeto? Eu consigo argumentar para uma banca examinadora de TFC que meu projeto não foi desenvolvido orientado a objeto por algum bom motivo (igual este da documentação se for verdade)? Eu realizei testes de software (funcional/unitário com badboy e análise estática com rips) incrivelmente consegui zerar as falhas de sql injection, session e banco e quase zerar os erros de cross-scripting. Não consegui resolver file manipulation e alguns cross-scripting que quando apliquei a correção com htmlentities deu alguns bug na página. Enfim, com os testes de software consigo "provar", ou melhor, argumentar que minha gambiarra é funcional !!! Porém agora estou preso no MVC/Orientação a Objeto. O que vocês podem me ajudar nesse conceito galera? Estou fudido e tenho que desenvolver orientado a objeto ou existe uma saída? rsrs
  10. MichelleAraujo

    Orientação a Objetos e Banco de Dados

    Olá pessoal, tudo bem? Gostaria de tirar uma dúvida com vocês que vem me "pertubando" a um tempo. Quando trabalhamos com tabelas, a orientação de muitos especialistas é criar um classe para manipular os dados armazenados. Minha dúvida é a seguinte: vamos dizer que tenho um banco de dados com mais de 20 tabelas. Dessas tabelas, algumas tem informações iguais entre si (o ID de uma outra tabela) e que em algumas tabelas somente vou fazer um select. Nesse caso, vou criar várias classes com apenas um método. Para cada classe, estou criando uma página que cria as interfaces. Por exemplo, se tenho a classe Carro.class.php eu vou ter uma página carros.php para chamar os métodos da classe Carro. Minha dúvida é a seguinte: dessa forma é o ideal? Não ficaria um sistema com muitas classes? Poderia, por exemplo, dentro da classe Carro colocar métodos que fazem um select em outras tabelas que tem como coluna ID_Carro? Vou esclarecer mais: Tenho as seguintes tabelas: *Carro, que tem as colunas ID_Carro, Nome, Quantidade. *Roda, que tem as colunas ID_roda, ID_carro (em que carro ela está), Nome, Aro *Volante, que tem as colunas ID_volante, ID_carro (em que carro ela está), Nome Na primeira, eu vou fazer CRUD mas nas duas últimas só irei fazer um select. É indicado eu fazer uma classe Roda e Volante e suas respectivas páginas rodas.php e volantes.php? Obrigada.
  11. Wagner Martins - SC

    Incluir um chebok dentro de um form com Poo

    Preciso colocar um form action nesse arquivo e um checkbox para o usuario selecionar os itens, como posso fazer isso com programação orientada a objeto? Segue o código onde ele adiociona colunas na listagem de clientes: $grid -> addColuna( array( 'name'=>'IdCli', 'title'=>'#', 'ordenavel'=>true, 'tamanho'=>50, 'ordem'=>1, 'filter'=>'numeric', 'align'=>'center' ) );
  12. wneo

    Framework php

    Bom dia!!! Pessoal, com relação a Frameworks PHP, como Zend, Cake, Wii e Laravel... O que vocês recomendam? Sei que considerações de Mellhor ou Pior são relativas a afetividade do desenvolvedor com o recurso. Então, quem puder dar um apoio aí, posta o framework predileto e porque considera o melhor. E quem quiser, posta aí uma crítica ao mesmo, mas diz um melhor e o porque. Valeu, abraço!
×

Important Information

Ao usar o fórum, você concorda com nossos Terms of Use.