Jump to content

Helison Santos

Members
  • Content count

    50
  • Joined

  • Last visited

Community Reputation

0 Comum

1 Follower

About Helison Santos

  1. Tudo bem pessoal? Estou desenvolvendo um sistema onde precisarei pontuar o usuário que preencher todos os dados do seu cadastro ou seja o usuário que completar o preenchimento completa da sua tabela no banco. Minha dúvida é se existe alguma função no mysql que conte os campos vazios ou tenho que criar algo no PHP? Para fazer a matemática dos campos. Supondo que tenho 10 campos e o peso de cada campo é um. Desde já obrigado.
  2. Helison Santos

    Include relativo ao GET

    E por esse caminho que estou tentando ir. Mais ou menos como é como Wordpress atualmente, com os template pages, chamando apenas o content de acordo com page type passado.
  3. Helison Santos

    Include relativo ao GET

    Boa tarde, pessoal. Tudo bem? Estou com um necessidade e não estou conseguindo chegar a um solução, o cenário é o seguinte. Tenho esse micro-sistema, que 5 páginas dele tem o mesmo layout porém com dados diferentes e tabelas diferentes. Primeiro tentei um função buscando os resultados através de um função com Switch, onde cada conteúdo simbolizava um número; Mais ou menos assim: function status_compra($content){ switch ($content) { case '1': $page = $this->pagina1(); break; case '2': $page = $this->pagina2(); break; case '3': $page = $this->pagina3(); break; case '4': $page = $this->pagina4(); break; } return $page; } Nas funções foram colocadas seus respectivos conteúdos, porém isso se tornou um trabalho bem complicado pois a coisa tendeu a se tornar meio desorganizada. Quando tentei fazer includes dentro das funções para deixa-las mais limpas, não deu muito certo; Existe uma forma de fazer isso? Estou muito longe?
  4. Helison Santos

    SUM() e subritração de valores numa mesma tabela

    "SELECT user_id, (SELECT SUM(extrato_pontos) AS Saldo_Positivo FROM afiliados_extratos WHERE extrato_tipo = 'C' GROUP BY user_id) - (SELECT SUM(extrato_pontos) AS Saldo_Negativo FROM afiliados_extratos WHERE extrato_tipo = 'D' GROUP BY user_id) AS Saldo_Final FROM afiliados_extratos" Tentei assim também mais não deu muito certo :/
  5. Olá pessoal, estou tentando fazer a seguinte consulta. "SELECT user_id, (SELECT SUM(extrato_pontos) AS Saldo_Positivo FROM afiliados_extratos WHERE extrato_tipo = 'C') - (SELECT SUM(extrato_pontos) AS Saldo_Negativo FROM afiliados_extratos WHERE extrato_tipo = 'D') AS Saldo_Final FROM afiliados_extratos" Da seguinte tabela: CREATE TABLE `afiliados_extratos` ( `extrato_id` int(11) NOT NULL auto_increment, `user_id` int(11) default NULL, `sistema_user_id` int(11) default NULL, `extrato_valor` double(10,2) default NULL, `extrato_pontos` double(10,2) default NULL, `extrato_data` datetime default NULL, `extrato_tipo` varchar(255) default NULL COMMENT 'Crédito ou Debito?', `extrato_descricao` varchar(255) default NULL, `extrato_cupom_fiscal` varchar(255) default NULL, `extrato_vendedor` varchar(255) default NULL, `extrato_cliente` varchar(255) default NULL, PRIMARY KEY (`extrato_id`) ) ENGINE=InnoDB DEFAULT CHARSET=latin1; O que estou querendo retornar? O saldo positivo do afiliado - saldo negativo, para depois colocar em ordem de maior pontuação, tipo uma lista top 10 com mais pontos. E isso não esta dando muito certo da forma que estou tentando fazer. Alguém pode me orientar nesta questão?
  6. Helison Santos

    Verificando dados no banco

    Obrigado pelo retorno, então eu percebi o erro de digitação depois, mas as outras dicas são pertinentes e e ja add em meu código, funcionando perfeitamente. Ainda estou trabalhando em uma forma de retornar qual documento está faltando, o problema é que antes nem todos eram obrigatórios, por exemplo o utilizador poderia enviar tanto uma CHN quanto CPF+RG ou até os 3, o que eu fiz até agora, é que quando a CNH é enviada desabilito o envio dos outros dois e virce-versa. Queria um resultado meio assim: $sel_doc_2 = $this->seleciona("SELECT * FROM pipeline_documentos WHERE segurado_id='".$segurado_id."' AND documento_label='segurado'"); $contar_segurado = mysql_num_rows($sel_doc_2); #Para quando nenhum documento for enviado; if($contar_segurado < '1'){ $erro[] = 'CNH, CPF e/ou RG'; }else{ #Para quando somente o CPF ter sido enviado, que neste caso se torna obrigatório. if(...){ $erro[] = 'Faltando o RG'; } } #OU FORA? #Para quando somente o CPF ter sido enviado, que neste caso se torna obrigatório. if(...){ $erro[] = 'Faltando o RG'; } Esta função de verificar os erros implica no avanço do utilizador no sistema, sem os documentos ele fica impedido de finalizar a negociação.
  7. Helison Santos

    Verificando dados no banco

    Olá pessoal tudo bem? Estou necessitando de uma força com um código aqui, vou tentar ser o mais claro possível. É o seguinte, tem esta tabela em meu banco de dados: DROP TABLE IF EXISTS `pipeline_documentos`; CREATE TABLE `pipeline_documentos` ( `documento_id` int(11) NOT NULL auto_increment, `documento_nome` varchar(255) default NULL, `documento_nome_original` varchar(255) default NULL, `documento_type` varchar(255) default NULL, `documento_tamanho` varchar(255) default NULL, `documento_especie` varchar(255) default NULL, `documento_label` varchar(255) default NULL, `documento_data` varchar(255) default NULL, `user_id` int(11) default NULL, `segurado_id` int(11) default NULL, `negocio_id` int(11) default NULL, `objeto_id` int(11) default NULL, PRIMARY KEY (`documento_id`) ) ENGINE=InnoDB DEFAULT CHARSET=latin1; A função dela será armazenar documentos enviados no sistema, o que vai separa um documento do outro são as colunas "documento_especie" e "documento_especie", e seus ID relacionados (segurado_id,negocio_id,objeto_id), em media serão de 5 a 7 documentos enviados, variam por causa da CNH e/ou CPF e RG que podem ou não serem enviados juntos ou apenas um deles. Então o que preciso é verificar se um documento já foi enviado ou não e retornar um erro para não deixar o usuário avançar caso algum documento não exista no sistema. Comecei a rascunha alguma coisa, porém não senti muita segurança nisso: function verifica_documentos($segurado_id,$negocio_id,$objeto_id,$retonar=false){ #Documenro Objeto #Declaração de Ofereta #Proposta Assinada #CNH #CPF e RG #$documentos = array('Documenro Objeto','Declaração de Ofereta','Proposta Assinada','CNH','CPF','RG'); $erro = Array(); $erros = '0'; $sel_doc_1 = $this->seleciona("SELECT * FROM pipeline_documentos WHERE negocio_id='".$negocio_id."' AND documento_label='negocio'"); $contar_negocio = mysql_num_rows($sel_doc_1); if($contar_negocio < '2'){ $erro[] = 'Declaração de Ofereta e/ou Proposta Assinada'; $erros++; } $sel_doc_2 = $this->seleciona("SELECT * FROM pipeline_documentos WHERE segurado_id='".$segurado_id."' AND documento_label='segurado'"); $contar_segurado = mysql_num_rows($sel_doc_2); if($contar_segurado < '1'){ $erro[] = 'CNH, CPF e/ou RG'; $erros++; } $sel_doc_3 = $this->seleciona("SELECT * FROM pipeline_documentos WHERE negocio_id='".$negocio_id."' AND objeto_id='".$objeto_id."' AND documento_label='objeto'"); $contar_objeto = mysql_num_rows($sel_doc_3); if($contar_objeto == '0'){ $erro[] = 'Documenro Objeto Segurado'; $erros++; } if($retonar == 'lista_erros'){ $sql = implode( ' ),( ',$erro ); return '('.$sql.')'; }else if($retorna = 'numero_erros'){ return $erros; } } Existe uma forma mais simplificada? Onde possa chegar ao mesmo resultado ou a um melhor resultado? Desde já agradeço a colaboração de todos que se prontificarem a ajudar.
  8. Helison Santos

    Notas de Help para sistemas

    Depois de muito tempo vou responder, alteração seria feita pelo programador em questão. Web e Mobile, Php 5.3+, Usando Jquery e Jquery UI. Nesse meio tempo estava pensando em bolar algo no banco mesmo, tipo eu cadastro uma lista de helps, e vou buscando ele onde preciso, mais ou menos assim: $minhaClass->get_ajuda($id_ajuda); ?> E o resto fica por conta de Css+Jquery
  9. Helison Santos

    Notas de Help para sistemas

    Olá, pessoal. Estou desenvolvendo um sistema, no qual será usado por uma media de 40 a 50 pessoas diariamente. Uma questão que sempre discutimos com amigos é a questão do usuário não saber o que fazer em um sistema que ele não conhece obviamente, para remediar isso existem os tópicos de ajuda, que já vi varias aplicações diferentes que vão desde tooltips até a postagens em blogs, minhãs dúvidas são as seguintes: 1. É viável fazer isso usando banco de dados? Ou apenas um tooltip abrindo sobre a dúvida como o texto vindo do próprio código? 2. Qual o nome da aplicação que parece um passo a passo, quando somos novos em um sistema? 3. Quais as sugestões para fazer uma aplicação como a descrita?
  10. Boa noite, pessoal. Estou com uma dúvida sobre a possibilidade de fazer a verificação de um tabela via PHP, é a seguinte situação, tenho uma tabela de cadastro que será preenchida em dois momentos, uma inserindo apenas e-mail e nome, e posteriormente após o login do usuário o mesmo deverá completas seus dados com mais 3 campos. Queria saber se existe como verificar se existe campos vazios na linha da tabela de um ID especifico? Helison Santos
  11. Helison Santos

    Formulário dinâmico salvo no banco

    Na verdade era outra coisa, um função que estava usando na página acima desse forme, estava causando algum erro incomum no sistema. A função era a seguinte: function anti_injection($texto){ $texto = preg_replace("/(TRUNCATE|FROM|UPDATE|SELECT|INSERT|DELETE|WHERE|DROP TABLE|SHOW TABLE|ALTER TABLE|\*|--)/","",$texto); $texto = preg_replace("/(TRUNCATE|FROM|UPDATE|SELECT|INSERT|DELETE|WHERE|DROP TABLE|SHOW TABLE|ALTER TABLE|\*|--)/","",$texto); $texto = str_replace("/(truncate|from|update|select|insert|delete|where|drop table|show table|alter table|\*|--)/","",$texto); $texto = str_replace("/(truncate|from|update|select|insert|delete|where|drop table|show table|alter table|\*|--)/","",$texto); $_POST = preg_replace("/(truncate|from|update|select|insert|delete|where|drop table|show table|alter table|\*|--)/","",$_POST); $_GET = preg_replace("/(truncate|from|update|select|insert|delete|where|drop table|show table|alter table|\*|--)/","",$_GET); $_COOKIE = preg_replace("/(truncate|from|update|select|insert|delete|where|drop table|show table|alter table|\*|--)/","",$_COOKIE); $_POST = preg_replace("/(FROM|ALTER TABLE|SELECT|INSERT|DELETE|UPDATE|WHERE|DROP TABLE|TRUNCATE|DATABASE|CREATE|RESET|SHOW TABLES|#|\*|--|\\\\)/i","",$_POST); $_GET = preg_replace("/(FROM|ALTER TABLE|SELECT|INSERT|DELETE|UPDATE|WHERE|DROP TABLE|TRUNCATE|DATABASE|CREATE|RESET|SHOW TABLES|#|\*|--|\\\\)/i","",$_GET); $_COOKIE = preg_replace("/(FROM|ALTER TABLE|SELECT|INSERT|DELETE|UPDATE|WHERE|DROP TABLE|TRUNCATE|DATABASE|CREATE|RESET|SHOW TABLES|#|\*|--|\\\\)/i","",$_COOKIE); $texto = str_replace("^","",$texto); $texto = str_replace(" ","",$texto); $texto = str_replace(" ","",$texto); $texto = str_replace(" ","",$texto); $texto = str_replace(" ","",$texto); $texto = strip_tags($texto); $texto = addslashes($texto); $texto = mysql_real_escape_string($texto); return $texto;// remove palavras que contenham sintaxe sql }
  12. Helison Santos

    Formulário dinâmico salvo no banco

    O problema estava na utilização das tags <label> estavam gerando este comportamento estranho, porem não deixa de fazer sentido. Foi apenas substituir por <div> que correu tudo bem.
  13. Helison Santos

    Formulário dinâmico salvo no banco

    Além disso tem apenas o form com method POST, o que esta acontecendo é que de alguma forma não está reconhecendo a variável $resposta mesmo que eu mude o nome dela ela não armazena os dados passados pelo $_POST['resposta'] e assim quando dou print_r ela retorna apenas a palavra Array: $resposta = $_POST['resposta']; Porem quando retiro ela, e dou o print_r apenas em: echo "<pre>"; print_r($resposta); exit; Dai retorna: Array ( [0] => Campo A [1] => Campo B [2] => Campo C [3] => Campo D [4] => Campo E ) torna:
  14. Helison Santos

    Formulário dinâmico salvo no banco

    Criei uma parte aqui porem estou tendo um problema, que creio que seja simples a questão. HTML <label for="resposta_1" class="floatleft"> <b>Resposta 1:</b> <input type="text" name="resposta[]" size="40" /> </label> <label for="resposta_2"> <b>Resposta 2:</b> <input type="text" name="resposta[]" size="40" /> </label> <label for="resposta_2" class="floatleft"> <b>Resposta 3:</b> <input type="text" name="resposta[]" size="40" /> </label> <label for="resposta_4"> <b>Resposta 4:</b> <input type="text" name="resposta[]" size="40" /> </label> <label for="resposta_5"> <b>Resposta 5:</b> <input type="text" name="resposta[]" size="40" /> </label> PHP resposta = $_POST['resposta']; echo "<pre>"; print_r($resposta); exit; E sempre esta retornando a palavra "Array", porem quando coloco: $resposta[] = $_POST['resposta']; Retorna isso: Array ( [0] => Campo A [1] => Campo B [2] => Campo C [3] => Campo D [4] => Campo E [5] => Array ) Porque esse 5º elemento, e quando dou print_r apenas da variável sem [] retorna apenas um a palavra Array?
  15. Helison Santos

    Formulário dinâmico salvo no banco

    Olá, pessoal. Estou procurando por exemplos e soluções que me ajudem a criar a seguinte questão. Preciso criar formulários em um sistema, para gerar uma especie e Survey (questionário), onde os campos deveram ser criados pelo usuário, quase como no Google Forms, porem de uma forma mais simples, sem muita firula. Os campos necessários serão, radios, checkbox, texts e textareas. Procurei on-line, e só me retorna resultados de inserção de dados no banco. Desde já agradeço pela ajuda.
×

Important Information

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