Beispiel #1
0
<?php

class Produto
{
    public $nome = "Fogao";
    private $descricao = "XYZ";
    protected $preco = 150.4;
    public function getDescricao()
    {
        return $this->descricao;
    }
}
class Livro extends Produto
{
    public $isbn;
    public function teste()
    {
        return $this->preco;
    }
}
class DVD extends Produto
{
    public $titulo;
}
/* CODIGO FORA DAS CLASSES */
$livro = new Livro();
echo $livro->teste();
 $quantValida = isset($edicao) && preg_match("/^\\d+\$/", $edicao);
 $dataValida = isset($data) && preg_match("/^\\d{4}-\\d{2}-\\d{2}\$/", $data);
 $fornecValido = isset($fornecedor) && mb_strlen($fornecedor, 'UTF-8') >= 3 && mb_strlen($fornecedor, 'UTF-8') <= 200;
 // se todos os dados estão válidos, o livro é cadastrado
 if ($nomeValido && $edicaoValido && $autorValido && $editoraValida && $precoValido && $quantValida && $dataValida && $fornecValido) {
     // lemos as credenciais do banco de dados
     $dados = file_get_contents($_SERVER["DOCUMENT_ROOT"] . "/../config.json");
     $dados = json_decode($dados, true);
     foreach ($dados as $chave => $valor) {
         $dados[$chave] = str_rot13($valor);
     }
     $host = $dados["host"];
     $usuario = $dados["nome_usuario"];
     $senhaBD = $dados["senha"];
     require_once "entidades/Livro.php";
     $novo = new Livro();
     $novo->setNome($nome);
     $novo->setEdicao($edicao);
     $novo->setAutor($autor);
     $novo->setEditora($editora);
     $novo->setPreco($preco);
     $novo->setQuantidade($quantidade);
     $novo->setDataPublicacao($data);
     $novo->setFornecedor($fornecedor);
     $sucesso = $novo->cadastrar($host, "homeopatias", $usuario, $senhaBD);
     if (!$sucesso) {
         $mensagem = "Erro";
     }
 } else {
     if (!$nomeValido) {
         $mensagem = "Nome inválido!";
 public function actionSearch($q = null)
 {
     $model = new Livro();
     $model->unsetAttributes();
     // clear any default values
     if (isset($_GET['Livro'])) {
         $model->attributes = $_GET['Livro'];
     }
     if ($q != null) {
         $model->titulo = $q;
     }
     $criteria = new CDbCriteria();
     $criteria->addSearchCondition('t.titulo', $model->titulo, true, 'OR', 'ILIKE');
     $criteria->addSearchCondition('t.autor', $model->titulo, true, 'OR', 'ILIKE');
     $criteria->addSearchCondition('t.isbn', $model->titulo, true, 'OR', 'ILIKE');
     $criteria->addSearchCondition('t.nro_patrimonio', $model->titulo, true, 'OR', 'ILIKE');
     $criteria->order = 't.titulo, t.autor ASC';
     $dataProvider = new CActiveDataProvider('Livro', array('criteria' => $criteria, 'pagination' => array('pageSize' => 10)));
     $this->render('search', array('dataProvider' => $dataProvider, 'model' => $model));
 }
 public function inserir(Livro $livro)
 {
     //Objetivo deste metodo é inserir um objeto no banco, fazendo-o ter persistencia.
     //utilizaremos a abstracao do SQL da classe TsqlInstruction
     //1. Foreach dos atributos . PRa cada existencia de atributo é um valor a ser adicionado.
     $instrucao = new TSqlInsert();
     $instrucao->setEntity("livro");
     if ($livro->getId() != null) {
         $instrucao->setRowData("id", $livro->getId());
     }
     if ($livro->getTitulo() != null) {
         $instrucao->setRowData("titulo", $livro->getTitulo());
     }
     if ($livro->getAutor() != null) {
         $instrucao->setRowData("autor", $livro->getAutor());
     }
     if ($livro->getData() != null) {
         $instrucao->setRowData("data", $livro->getData());
     }
     if ($livro->getHora() != null) {
         $instrucao->setRowData("hora", $livro->getHora());
     }
     if ($livro->getUsuario() != null) {
         $instrucao->setRowData("usuario", $livro->getUsuario());
     }
     if ($livro->getDescricao() != null) {
         $instrucao->setRowData("descricao", $livro->getDescricao());
     }
     if ($livro->getLink0() != null) {
         $instrucao->setRowData("link0", $livro->getLink0());
     }
     if ($livro->getLink1() != null) {
         $instrucao->setRowData("link1", $livro->getLink1());
     }
     if ($livro->getLink2() != null) {
         $instrucao->setRowData("link2", $livro->getLink2());
     }
     if ($livro->getVisibilidade() != null) {
         $instrucao->setRowData("visibilidade", $livro->getVisibilidade());
     }
     if ($livro->getCaminhofoto() != null) {
         $instrucao->setRowData("caminhofoto", $livro->getCaminhofoto());
     }
     if ($livro->getFdsifhsodfjos() != null) {
         $instrucao->setRowData("fdsifhsodfjos", $livro->getFdsifhsodfjos());
     }
     echo $instrucao->getInstruction();
     if ($this->Conexao->query($instrucao->getInstruction())) {
         return true;
     } else {
         return false;
     }
 }
 /**
  * Método que retorna os conteúdos do livro informado com o seu andamento
  * @param Livro $livro O livro alvo da busca
  * @param Disciplina $disciplina A disciplina referente ao conteúdo
  * @throws Exception
  */
 public function deLivroComAcompanhamento(Livro $livro, Disciplina $disciplina)
 {
     $select = new Select();
     return $this->tg->selectObj($select->distinct("sequencial_topico")->columns("*, apostilas.acompanhamento.status " . "as topico_status, " . "data_aula as topico_data_aula ")->join("apostilas.capitulo", array("pk_capitulo" => "fk_capitulo"))->join("public.materia_vin", array("pk_materia_vin" => "fk_materia_vin"))->join("public.materia", array("pk_materia" => "fk_materia"))->join("public.materia_mae", array("pk_materia_mae" => "fk_materia_mae"))->join("public.area", array("pk_area" => "fk_area"))->join("apostilas.acompanhamento", array("fk_conteudo" => "pk_conteudo"))->where("fk_livro={$livro->getId()} " . "and pk_materia={$disciplina->getId()} " . "and (status=" . Topico::STATUS_EM_ANDAMENTO . " " . "or status=" . Topico::STATUS_CONCLUIDO . ") " . "and id=(select max(id) from apostilas.acompanhamento " . "where fk_conteudo=pk_conteudo and status!=" . Topico::STATUS_REVISADO . ") " . "and extract(year from data_aula)={$this->anoLetivo}")->order("sequencial_topico"));
 }
Beispiel #6
0
<div class="form">
<?php 
Yii::app()->clientScript->registerScriptFile(Yii::app()->request->baseUrl . '/js/formatter.js');
Yii::app()->clientScript->registerScript('formata_valor', "\n\t\t\t\n\t\t\t\$(document).ready( \n\t\t\t function(){\n\t\t\t \$('#Livro_isbn').focus();\n\t\t\t c = document.getElementById('Livro_valor');\n\t\t\t \tformataValor(c);\n\t\t\t }\n\t\t\t\n\t\t\t);\n\t\t\t\n\t\t\t");
$livros = Livro::toArray();
?>

<?php 
$form = $this->beginWidget('CActiveForm', array('id' => 'livro-form', 'enableAjaxValidation' => false));
?>

	<p class="note">Campos com <span class="required">*</span> são obrigatórios.</p>

	<?php 
echo $form->errorSummary($model);
?>
	<div id="erro"></div>
	<div class="input">
	<?php 
$onchange = '';
if ($model->isNewRecord) {
    $onchange = "beginSearch(this.value); return false;";
}
?>
		<?php 
echo $form->labelEx($model, 'isbn');
?>
		<?php 
echo $form->textField($model, 'isbn', array('onchange' => $onchange, 'size' => 30));
?>
		<?php 
 public function paginacaoLivro($pagClick, $total_reg_por_pagina)
 {
     /*$busca = "SELECT * FROM produtos";
       
       $inicio = $pc - 1; 
       $inicio = $inicio * $total_reg;
       $limite = mysql_query("$busca LIMIT $inicio,$total_reg"); 
       
       
        $produtos = array();
        while ($prod  = mysql_fetch_array($limite))
         {
          $produto = new Produto();
          $produto->setCodigo($prod['COD_PRODUTO']);
          $produto->setNome($prod['NOME_PRODUTO']);
          $produto->setValor($prod['PRECOVENDA_PRODUTO']);
          $produtos[]=$produto;
         }
        return $produtos;*/
     $inicio = ${$pagClick} - 1;
     $inicio = $inicio * $total_reg_por_pagina;
     $sql = "SELECT * FROM livro";
     $result = $this->getConn()->Query("{$sql} LIMIT {$inicio},{$total_reg_por_pagina}");
     //return $result;
     $livros = array();
     while ($row = $result->fetchObject($this->getClass())) {
         $livro = new Livro();
         $livro->setCodLivro($row->COD_LIVRO);
         $livro->setNomeLivro($row->NOME_LIVRO);
         $livro->setIsbnLivro($row->ISBN_LIVRO);
         $livro->setEditoraLivro($row->EDITORA_LIVRO);
         $livro->setTotalPaginas($row->TOTAL_PAGINAS);
         $livros[] = $livro;
     }
     return $livros;
 }
Beispiel #8
0
 public static function toArray()
 {
     $arrEditoras = array();
     $arrAutores = array();
     $arrCidades = array();
     //Coloca os nomes
     $livros = Livro::model()->findAll();
     foreach ($livros as $livro) {
         if (!in_array($livro->autor, $arrAutores)) {
             $arrAutores[] = $livro->autor;
         }
         if (!in_array($livro->editora, $arrEditoras)) {
             $arrEditoras[] = $livro->editora;
         }
         if (!in_array($livro->cidade_publicacao, $arrCidades)) {
             $arrCidades[] = $livro->cidade_publicacao;
         }
     }
     $arr = array('autores' => $arrAutores, 'editoras' => $arrEditoras, 'cidades' => $arrCidades);
     return $arr;
 }
 public function show($acao)
 {
     switch ($acao) {
         case 'autenticar':
             break;
         case 'inserir':
             //Aqui faz as validações necessárias e requisita o método da classe DAO responsável por cadastrar o usuário.
             $this->carregarModelView();
             // Se for autenticar, então deverão ser informados login e senha.
             //Primeiro instanciamos um objeto da classe Bean, para setar os valores informados no formulário
             $livro = new Livro();
             $autor = new AutorLivro();
             // Agora setamos para a Bean os valores informados,pois serão validados na camada DAO, que
             //irá verificar a consistencia dos dados em um Banco de Dados: MySQL, XML, ou qualquer outra base de dados; e depois retornar para a controller o resultado.
             $livro->setNomeLivro($_REQUEST['nomelivro']);
             $livro->setIsbnLivro($_REQUEST['isbnlivro']);
             $livro->setTotalPaginas($_REQUEST['totalpaginas']);
             $livro->setEditoraLivro($_REQUEST['editoralivro']);
             $autor->setCodigoAutor($_REQUEST['autores']);
             $livro->setAutorLivro($autor);
             try {
                 TTransaction::open('my_cruditb');
                 // Obtém a transação ativa
                 $conn = TTransaction::get();
                 $livroDao = new LivroDao($conn);
                 $resultado = $livroDao->inserir($livro);
                 $livros = $livroDao->listar();
                 //$totalLivros = $livroDao->getTotalLivros();
                 TTransaction::close();
                 $livroView = new LivroView();
                 $livroView->respostaCadastro($resultado);
                 $livroView->montarGridLivros($livros);
             } catch (Exception $e) {
                 $e->getMessage();
                 TTransaction::rollback();
             }
             break;
         case 'listar':
             $this->carregarModelView();
             try {
                 TTransaction::open('my_cruditb');
                 // Obtém a transação ativa
                 $conn = TTransaction::get();
                 $livroDao = new LivroDao($conn);
                 $livros = $livroDao->listar();
                 TTransaction::close();
                 $livroView = new LivroView();
                 $livroView->montarGridLivros($livros);
             } catch (Exception $e) {
                 $e->getMessage();
                 TTransaction::rollback();
             }
             break;
         case 'excluir':
             //Aqui faz as validações necessárias e requisita o método da classe DAO responsável por excluir o usuário.
             break;
         case 'loadFrmGridLivros':
             $livroView = new LivroView();
             $livroView->carregarFrmGridLivros();
             break;
         default:
             return null;
             //Por padrão, esse switch não retorna nada.
     }
 }
<?php

include_once '../configs/configurations.inc.php';
Seguranca::estaConectado();
$tabLivro = new Livro();
if ($_SERVER['REQUEST_METHOD'] == 'POST' && isset($_POST['id'])) {
    $id = $_POST['id'];
    if ($tabLivro->atualizar($id, $_POST)) {
        echo "<h2> Registro Salvo </h2>";
    } else {
        echo "<h2> Erro ao salvar </h2> ";
    }
} else {
    $id = $_GET['id'];
}
echo '<a href="index.php"> Voltar </a>';
$registro = $tabLivro->listartPorChave($id);
//RETIRANDO ID do array
//PQ ID não eh editavel
// PORRA $registro eh um objeto! =S N DEU CERTO
//$registro = array_slice($registro, 1);
//print_r($registro);
echo '
	<form action="editarCategoria.php" method="post" >';
foreach ($registro as $campo => $valor) {
    echo $tabLivro->legendas[$campo] . ': ' . '<input type="text" name="' . $campo . '"' . 'value="' . $valor . '" /></br>' . "\n";
}
echo '<button type="submit">Salvar</button> </form>';
Beispiel #11
0
 public function createObjectFromData($row)
 {
     //Cria um novo objeto piso com os dados da consulta
     $livro = new Livro();
     $livro->setISBN($row->ISBN);
     $livro->setTitle($row->title);
     $livro->setDescription($row->description);
     $livro->setPrice($row->price);
     $livro->setPublisher($row->publisher);
     $livro->setPubdate($row->pubdate);
     $livro->setEdition($row->edition);
     $livro->setPages($row->pages);
     $livro->setCategoryName($row->CategoryName);
     $livro->setStrFName($row->nameF);
     $livro->setStrLName($row->nameL);
     return $livro;
 }
Beispiel #12
0
 $quantValida = isset($edicao) && preg_match("/^\\d+\$/", $edicao);
 $dataValida = isset($data) && preg_match("/^\\d{4}-\\d{2}-\\d{2}\$/", $data);
 $fornecValido = isset($fornecedor) && mb_strlen($fornecedor, 'UTF-8') >= 3 && mb_strlen($fornecedor, 'UTF-8') <= 200;
 // se todos os dados estão válidos, o coordenador é editado
 if ($idValido && $nomeValido && $edicaoValido && $autorValido && $editoraValida && $precoValido && $quantValida && $dataValida && $fornecValido) {
     // lemos as credenciais do banco de dados
     $dados = file_get_contents($_SERVER["DOCUMENT_ROOT"] . "/../config.json");
     $dados = json_decode($dados, true);
     foreach ($dados as $chave => $valor) {
         $dados[$chave] = str_rot13($valor);
     }
     $host = $dados["host"];
     $usuario = $dados["nome_usuario"];
     $senhaBD = $dados["senha"];
     require_once "../../entidades/Livro.php";
     $atualizar = new Livro();
     $atualizar->setIdLivro($id);
     $atualizar->setNome($nome);
     $atualizar->setEdicao($edicao);
     $atualizar->setAutor($autor);
     $atualizar->setEditora($editora);
     $atualizar->setPreco($preco);
     $atualizar->setQuantidade($quantidade);
     $atualizar->setDataPublicacao($data);
     $atualizar->setFornecedor($fornecedor);
     $sucesso = $atualizar->atualizar($host, "homeopatias", $usuario, $senhaBD);
     if ($sucesso) {
         $mensagem = "";
     } else {
         $mensagem = "Erro na edição de livro";
     }
 public function actionAddLivro()
 {
     $model = new Livro();
     // uncomment the following code to enable ajax-based validation
     /*
     if(isset($_POST['ajax']) && $_POST['ajax']==='livro-_form_livro-form')
     {
         echo CActiveForm::validate($model);
         Yii::app()->end();
     }
     */
     if (isset($_POST['Livro'])) {
         $model->attributes = $_POST['Livro'];
         if ($model->validate()) {
             // form inputs are valid, do something here
             return;
         }
     }
     $this->render('_form_livro', array('model' => $model));
 }
<?php

include '../configs/configurations.inc.php';
Seguranca::estaConectado();
//require_once(SMARTY_DIR . 'Smarty.class.php');
session_start();
/*
 * TTODOS os locais/scripts que eu for acessar um Objeto
 * eu preciso instancia-lo, neste caso $carrinhoXYZ esta 
 * pegando as variaveis da sessao, isto 'e definido no Carrinho.class
 */
$carrinhoXYZ = new Carrinho();
$tabLivro = new Livro();
//$smarty = new Smarty();
$table = <<<FIM
<table border='1' align='center'>
  <tr>
    <td colspan='4'><h3 align='center'>CARRINHO DE COMPRAS</h3></td>
  </tr>
  <tr>
    <td>Quantidade</td><td>Produto</td><td>Nome</td><td>Descricao</td><td>Preco</td><td>Acao</td>
  </tr>
FIM;
#echo $table;
foreach ($_SESSION['produtos'] as $pid => $qtde) {
    if ($pid != '') {
        $camposDoLivro = $tabLivro->listartPorChave($pid);
        echo 'Quantidade: ' . $qtde . ' Titulo: ' . $camposDoLivro->titulo . ' Preço: ' . $camposDoLivro->preco . "<br/>";
        //echo $camposDoLivro->titulo . "<br/>";
        //echo 'Quantidade:' . $qtde . ' ' . "<br/>";
        //echo $
<?php

include_once '../configs/configurations.inc.php';
Seguranca::estaConectado();
Template::gerarCabecalhoSite();
$tabLivro = new Livro();
$livros = $tabLivro->listar();
//$livroscatid = $tabLivro->listarPorCatID(1);
//Template::gerarSite(listarLivros.php);
//Template::gerar
//$campos = array('id','isbn','autor','titulo');
echo Template::gerarTabela($tabLivro, $livros);
echo Template::gerarMenuAdmin();
//echo Template::gerarTabela($tabLivro,$livros,$campos);
//echo Template::gerarTabela($tabLivro,$livroscatid,$campos);
//print_r($livros);
//print_r($livroscatid->fetchObject());
echo Template::gerarRodape();