Jump to content

Rodrigo5468

Members
  • Content count

    156
  • Joined

  • Last visited

Community Reputation

0 Comum

1 Follower

About Rodrigo5468

Recent Profile Visitors

453 profile views
  1. Rodrigo5468

    Validação em PDO OOP

    Olá! Fiz algumas alterações no código, e decidir remover o validaCadastro.php, não sei se agir de maneira correta, mas vamos lá. Register.php <?php require_once (__DIR__."\Crud.php"); final class Registers extends Crud { protected $table = "accounts"; private $erros; private $username; private $email; private $password; public function erros() { return $this->erros; } /*MÉTODOS SET*/ public function setUsername($username) { if(!isset($username)) { $this->erros[] = "Ops! não temos a string para prosseguir."; return true; }elseif(empty($username)) { $this->erros[] = "O campo usuário não pode ser vázio."; return true; }elseif(strlen($username) < 3) { $this->erros[] = "É necessário no mínimo 3 (três) caracteres no usuário."; return true; }elseif(strlen($username) > 15) { $this->erros[] = "O máximo é de 15 (quinze) caracteres no usuário."; return true; }elseif(!preg_match('/^([a-zA-Z0-9]+)$/i', $username)) { $this->erros[] = "O nome de usuário só pode conter letras e números. (sem espaços e sem caracteres epeciais)"; return true; }else { $this->username = $username; } } public function setEmail($email) { $this->email = $email; } public function setPassword($password) { if(!empty($password)) { $options = [ "cost" => 11, ]; $this->password = password_hash($password, PASSWORD_BCRYPT, $options); if(password_verify($password, $this->password)) { return true; } } return false; } /*FUNÇÕES*/ public function insert() { $sql = "INSERT INTO $this->table (username, email, password) VALUES (:username, :email, :password)"; $stmt = Database::prepare($sql); $stmt->bindParam(":username", $this->username); $stmt->bindParam(":email", $this->email); $stmt->bindParam(":password", $this->password); return $stmt->execute(); } public function update($id) { $sql = "UPDATE $this->table SET username = :username, email = :email, password = :password WHERE id = :id"; $stmt = Database::prepare($sql); $stmt->bindParam(":username", $this->username); $stmt->bindParam(":email", $this->email); $stmt->bindParam(":password", $this->password); $stmt->bindParam(":id", $id); return $stmt->execute(); } } index.php <?php $register = new Registers(); if(isset($_POST["cadastrar"])) { $username = $_POST["username"]; $email = $_POST["email"]; $password = $_POST["password"]; if($register->setUsername(isset($username) ? $username : null)) { echo $register->erros(); }else { $var_dump = var_dump($username); echo $var_dump; } $register->setEmail($email); $register->setPassword($password); if($register->insert()) { return "Usuário cadastrado com sucesso."; } } ?> Só que o código não está funcionando como deveria, poderia me dizer, o quê tem de errado?
  2. Rodrigo5468

    Validação em PDO OOP

    Opa, mano tá dando certo, mas peço que tenha mais um pouco de paciência comigo. <?php class ValidaCadastro { private $dados; private $erros = []; public function __construct(array $dados) { $this->validaUsername($dados['username']); } public function erros() { return $this->erros; } public function validaUsername() { if(empty($username)) { $this->erros[] = "O campo usuário não pode ser vázio."; }elseif(ctype_space($username)) { $this->erros[] = "Não pode usar apenas espaços no campo de usuário."; }elseif(strlen($username) < 3) { $this->erros[] = "É necessário no mínimo 3 (três) caracteres no usuário."; }elseif(strlen($username) > 15) { $this->erros[] = "O máximo é de 15 (quinze) caracteres no usuário."; }elseif(preg_match("/^[a-zA-Z0-9]*$/", $username == 0)) { $this->erros[] = "O nome de usuário só pode conter letras e números. (sem espaços e sem caracteres epeciais)"; }elseif($username !== 0) { $this->erros[] = "O nome de usuário já está cadastrado em nossos bancos de dados."; } } } Fiz as alterações, mas está dando erro, já tentei alterar para $this->dados = $username; Entre diversas outras maneiras, mas não foi. Obrigado por tudo!
  3. Rodrigo5468

    Validação em PDO OOP

    Olá! Fiz o quê você me pediu, aliás, tentei fazer, mas acho que não deu muito certo. ValidaCadastro.php <?php require_once (__DIR__."\Registers.php"); class ValidaCadastro extends Registers { private $dados; private $erros = []; public function __construct($dados) { $this->validaUsername($this->username); } public function erros() { return $this->erros; } public function validaUsername() { if(empty($_POST["username"])) { $this->erros[] = "O campo usuário não pode ser vázio."; }elseif(ctype_space($_POST["username"])) { $this->erros[] = "Não pode usar apenas espaços no campo de usuário."; }elseif(strlen($_POST["username"] < 3)) { $this->erros[] = "É necessário no mínimo 3 (três) caracteres no usuário."; }elseif(strlen($_POST["username"] > 15)) { $this->erros[] = "O máximo é de 15 (quinze) caracteres no usuário."; }elseif(preg_match("/^[a-zA-Z0-9]*$/", $_POST["username"] == 0)) { $this->erros[] = "O nome de usuário só pode conter letras e números. (sem espaços e sem caracteres epeciais)"; }elseif($stmt->num_rows !== 0) { $this->erros[] = "O nome de usuário já está cadastrado em nossos bancos de dados."; } } } E no index.php <?php $validaCadastro = new ValidaCadastro($_POST["cadastrar"]); if($erros = $validaCadastro->erros()) { foreach ($erros as $erro) { echo $erro; } return; } $register = new Registers(); if(isset($_POST["cadastrar"])) { $username = $_POST["username"]; $email = $_POST["email"]; $password = $_POST["password"]; $register->setUsername($username); $register->setEmail($email); $register->setPassword($password); if($register->insert()) { return "Usuário cadastrado com sucesso."; } } ?> O quê eu tenho que fazer exatamente, poderia me dá mais detalhes por favor. OBRIGADOOO!!!
  4. Rodrigo5468

    Validação em PDO OOP

    Boa tarde a todos. Estou desenvolvendo um sistema de registro para fins de estudos, mas tenho algumas dúvidas e dificuldades até. Estou usando "programação orientada a objetos", e quero validar alguns campos do meu registro, se puderem me auxiliar, será de grande ajuda. Meu Diretório: Projeto1/ ├── backend/ │ ├── classes/ │ │ ├── Register.php ├── index.php Em Register.php tenho o seguinte código para fazer a validação, mas acredito que estou fazendo algo de errado. public function setUsername($username) { $sql = "SELECT * FROM $this->table WHERE username = :username"; $stmt = Database::prepare($sql); $stmt->execute(array('username' => $_POST["username"])); if(empty($_POST["username"])) { return "O campo usuário não pode ser vázio."; }elseif(ctype_space($_POST["username"])) { return "Não pode usar apenas espaços no campo de usuário."; }elseif(strlen($_POST["username"] < 3)) { return "É necessário no mínimo 3 (três) caracteres no usuário."; }elseif(strlen($_POST["username"] > 15)) { return "O máximo é de 15 (quinze) caracteres no usuário."; }elseif(preg_match("/^[a-zA-Z0-9]*$/", $_POST["username"] == 0)) { return "O nome de usuário só pode conter letras e números. (sem espaços e sem caracteres epeciais)"; }elseif($stmt->num_rows !== 0) { return "O nome de usuário já está cadastrado em nossos bancos de dados."; }else { $this->username = $username; } } E no index.php tenho o seguinte código, acredito que está certo, mas eu gostaria de mostrar as mensagens de erros que estão no Register.php, como que posso fazer isso? $register = new Registers(); if(isset($_POST["cadastrar"])) { $username = $_POST["username"]; $email = $_POST["email"]; $password = $_POST["password"]; $register->setUsername($username); $register->setEmail($email); $register->setPassword($password); if($register->insert()) { return "Usuário cadastrado com sucesso."; } } Obrigado pela atenção!
  5. Rodrigo5468

    Canvas com PHP

    Melhor dizendo, eu quero fazer assim: Ao abrir tal página irá aparecer a imagem do mapa, e quando autenticar como administrador ele poderá marcar pontos no mapa "polygon". Inserindo alguns dados, como, nome da empresa, logotipo, descrição, cor, etc, queria puder definir isso. E quando clicar em salvar, salvar no banco de dados ou gerar um .json. Espero suas ajudas.
  6. Rodrigo5468

    Canvas com PHP

    Gostaria de saber como eu posso fazer um script, quero que o script funcione mais ou menos assim. Vou colocar a imagem salva do google maps, após autenticar no sistema o administrador poderá criar pontos naquela imagem, criando uma área sob o mapa. Como que eu posso fazer isso e guardar os dados?
  7. Rodrigo5468

    Fechar e Abrir Compra

    Boa tarde. Tá, vamos lá, deixe-me ver se eu entendi. Devo criar uma tabela no meu banco dados ou uma coluna em uma tabela já existe, para verificar se o valor é fechado ou aberto? Outra dúvida que surgiu no meio do caminho. Quando duas ou mais pessoas acessem a página de compra com 499 pedidos sendo enviados, eles conseguem comprar, suponhamos que apenas duas pessoas acessem essa página com 499 pedidos e, eles resolvem comprar um produto. Teremos então 501 pedidos. Como posso consertar isso? Meu muito obrigado fica desde já.
  8. Rodrigo5468

    Fechar e Abrir Compra

    Não entendo muito disso, e aparentemente é meio complexo. Não tem uma maneira mais fácil não? Estou estudando o semáforo. Mas se existir outras maneiras, por favor, me informe.
  9. Rodrigo5468

    Fechar e Abrir Compra

    Boa tarde a todos. $q = SQLQuery("SELECT count(*) as total FROM apps2 WHERE Status='1'"); $pedidos = SQLQuery("SELECT count(*) as total FROM pedidos2 WHERE Status='2'"); $mostrar = $pedidos->fetch_assoc()["total"]; Eu quero fazer uma aplicação com PHP assim. Quando tiver 500 pedidos ninguém mais poderá comprar enquanto os pedidos não forem zerados. Eu fiz assim: <?php if($mostrar >= 500) { echo $erro; }else { //CODE } Então, teoricamente quando um pedido for enviado e a lista de pedidos2 forem para 499 alguém poderá comprar outro produto até chegar em 500. Mas eu não quero isso, eu quero que quando o pedidos2 chegar em 500 fecha a compra e, só libera quando todos os pedidos forem enviados. Como posso fazer isso? Obrigado!
  10. Rodrigo5468

    Verificar campos em tabelas diferente

    Acho que você não entendeu muito bem... Deixe-me explicar melhor. Eu tenho uma tabela que mostra todos os pedidos da tabela pedidos. Tá, até aí tudo bem está funcionando. Mas nessa mesma tabela eu preciso voltar lá na tabela contas e comparar se o usuario do pedidos é igual da conta, se for igual eu vou mostrar na minha tabela o tipo da conta que ele é, entendeu? Como que eu posso fazer isso com o PHP?
  11. Rodrigo5468

    Verificar campos em tabelas diferente

    Boa tarde a todos. Eu tenho duas tabelas no meu banco de dados. Uma chama contas e a outra chama pedidos. Nessas tabalas eu tenho dois campos chamado usuario, eu quero selecionar as duas tabelas e verificar se o usuario é igual a tabela contas e pedidos. Se for igual eu quero pegar e contar quantas linhas tem no campo tipo que está na tabela contas. Como que eu posso fazer isso? Montei a Query, mas eu não sei fazer isso no PHP. SELECT * FROM contas, pedidos WHERE contas.tipo = pedidos.tipo Agradeço desde já pela ajuda.
  12. Rodrigo5468

    Variável HTML

    Beleza! Suponhamos que tenho todas as variáveis prontas. <?php $url = "http://meu-site.com.br"; $title = "Meu Site"; $pastacss = "http://meu-site.com.br/css"; $pastajs = "http://meu-site.com.br/js"; ?> Certo né? Aí na tag do html <head> eu quero usar essa variável da pasta css. Vamos usa-lá. <!-- Usa Assim --> <link href="../css/meu-css.css" rel="stylesheet"/> <!-- Com PHP --> <link href="<?php $pastacss;?>/meu-css.css" rel="stylesheet"/> Só que em vez de usar <?php $pastacss;?> eu quero usar assim. <link href="{pastacss}/meu-css.css" rel="stylesheet"/> Como posso fazer isso? Desde já, obrigado mais uma vez.
  13. Rodrigo5468

    Variável HTML

    Olá. <link href="{T_THEME_PATH}/plupload.css?assets_version={T_ASSETS_VERSION}" rel="stylesheet"> Eu queria saber como posso fazer essas variáveis com php e poder chamar elas no html. Tipo um diretório padrão. {T_THEME_PATH} - http://seu-site.com.br/ {T_ASSETS_VERSION} - tro Aí o link fica assim no arquivo <link href="{T_THEME_PATH}/plupload.css?assets_version={T_ASSETS_VERSION}" rel="stylesheet"> Mas é assim http://seu-site.com.br/plupload.css?assets_version=two Desde já agradeço.
  14. Rodrigo5468

    Transformando Texto em Imagem

    Realmente... Troquei para image/png e image/gif mas não obtive resultado. Se puder me ajudar a chegar ao meu objetivo fico agradecido, e me falar onde devo corrigir e o quê corrigir. Muito obrigado.
  15. Rodrigo5468

    Transformando Texto em Imagem

    Olá a todos! Eu tenho um código que adiciona um texto em uma imagem, ok, está funcionando normalmente. Mas eu quero fazer o seguinte. Quero criar um formulário com um campo input, desse jeito: <form action="" method="get"> <input name="nome" type="text" placeholder="Texto a ser Gerado" size="100"/> <input type="submit" value="Criar Imagem"/> </form> Aqui é um código PHP que insere um texto em uma imagem. <?php //Define o header como sendo de imagem header("Content-type: image/jpeg"); //Cria a imagem a partir de uma imagem jpeg $i = imagecreatefromjpeg("modelo.jpg"); // Definições $preto = imagecolorallocate($i, 0,0,0); #Cor do texto; "cor preta" $texto = "Exemplo"; #Texto a ser escrito $fonte = "trebuc.ttf"; #Fonte que será utilizada //Escreve na imagem imagettftext($i, 32, 0, 160,360, $preto, $fonte, $texto); //Gera a imagem na tela imagejpeg($i); //Destroi a imagem para liberar memória imagedestroy($i); ?> Só que eu não quero isso, irei explicar detalhadamente o que desejo fazer. Quero esse formulário que deixei de exemplo, e quero que após escrever algo nele e clicar em Criar Imagem é gerada uma imagem com o fundo transparente com o texto inserido. Quais são as alterações que devo fazer no código? Onde e como? Muito obrigado a todos pela atenção.
×

Important Information

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