Ir para conteúdo
Fórum Script Brasil

Carlos Rocha

Membros
  • Total de itens

    1.300
  • Registro em

  • Última visita

Tudo que Carlos Rocha postou

  1. Veja: <?php session_start(); header('Content-Type: text/html; charset=utf-8'); include("../global/funcoes_php/var.php"); include("../global/funcoes_php/conexao.php"); ?> <html> <head> <title><?php echo $title2; ?></title> <link href="../global/stilo.css" rel="stylesheet" type="text/css"> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/> <script type="text/javascript" src="global/Autentica_Cadastra_Cliente.js"></script> <script language="JavaScript" src="../global/funcoes_java_script/limpa_campo.js"></script> <script language="JavaScript" src="../global/funcoes_java_script/mascara.js"></script> <script language="JavaScript" src="../global/funcoes_java_script/buscahtmlarea.js"></script> <script language="JavaScript" src="../global/funcoes_java_script/buscacidade.js"></script> <script language="JavaScript" src="../global/funcoes_java_script/abre_fecha.js"></script> </head> <table width="1000" border="0" cellspacing="0" cellpadding="0" align="center"> <tr> <td colspan="2"><? include("global/topo.php"); ?></td> </tr> <tr valign="top"> <td width="15%"><?php include("global/menu.php"); ?></td> <td width="85%" valign="middle" bgcolor="#FFFFFF"><? include("cliente_cadastrar_conteudo.php"); ?></td> </tr> <tr> <td colspan="2"><?php include("global/base.php"); ?></td> </tr> </table> </body> </html>
  2. Era erro de recepção dos dados do form. Quando os dados chegam direto do form, não podemos recebê-lo como se já fosse uma variavle local ($variavel) e sim como uma variavel que esta chegando via get ou post. ($_GET["variavel_html"]; $_POST["variavel_html"];). Após essa correta interceptação, dai se usa a variavel localmente: $var_php = $_POST["variavel_html"]; Como ficou? Segue: <? //Inicio do envio dos dados if ($acao == "cadastra"){ if ($_POST["pessoa"]=="j") { $dcto=$_POST["cnpj"];; $dctotipo="cnpj"; $pessoatipo="rasaosocial"; $valorpessoatipo=$_POST["rasaosocial"]; } if ($_POST["pessoa"]=="f") { $dcto=$_POST["cpf"];; $dctotipo="cpf"; $pessoatipo="nome"; $valorpessoatipo=$_POST["nome"]; } $dcto = str_replace( ".", "", $dcto); $dcto = str_replace( "-", "", $dcto); $dcto = str_replace( ".", "", $dcto); $dcto = str_replace( "/", "", $dcto); $dcto = str_replace( "-", "", $dcto); $tel = str_replace("(", "", $tel); $tel = str_replace(")", "", $tel); $tel = str_replace("-", "", $tel); $tel = str_replace("/", "", $tel); $tel = str_replace(" ", "", $tel); $tel = str_replace(".", "", $tel); $cel = str_replace("(", "", $cel); $cel = str_replace(")", "", $cel); $cel = str_replace("-", "", $cel); $cel = str_replace("/", "", $cel); $cel = str_replace(" ", "", $cel); $cel = str_replace(".", "", $cel); $cep = str_replace("(", "", $cep); $cep = str_replace(")", "", $cep); $cep = str_replace("-", "", $cep); $cep = str_replace("-", "", $cep); $cep = str_replace("/", "", $cep); $cep = str_replace(" ", "", $cep); $cep = str_replace(".", "", $cep); $data = date('Y-m-d'); $busca = mysql_query("SELECT $dctotipo FROM clientes where $dctotipo='$dcto'"); $num_linhas= mysql_num_rows($busca); $busca2 = mysql_query("SELECT $pessoatipo FROM clientes where $pessoatipo='$valorpessoatipo'"); $num_linhas2= mysql_num_rows($busca2); if($num_linhas <> 0){ echo "Esse Usuário já esta cadastrado. Por favor, escolha outro!"; } else if($num_linhas2 <> 0){ echo "Esse cliente já esta cadastrado. Por favor, verifique!"; } else{ $sql = "INSERT INTO clientes ($dctotipo, senha, $pessoatipo, responsa, cep, endereco, numero, bairro, estado, cidade, tel, cel, bloqueio) VALUES('$dcto', '$senha', '$valorpessoatipo', '$responsa', '$cep', '$endereco', '$numero', '$bairro', '$estado', '$cidade', '$tel', '$cel','n')"; $consulta = mysql_query($sql); if($consulta){echo "<script>alert('Cadastro OK!'); document.location='cliente_cadastrar.php?acao=cadastro'</script>"; } else {echo "<script>alert('Não foi possivel realizar o cadastro. Por favor tente novamente!'); document.location='cliente_cadastrar.php?acao=cadastro'</script>"; } } } ?> <? if ($acao == "cadastro"){ ?> <form name="form" enctype="multipart/form-data" method="POST" action="?acao=cadastra" id="login_cliente"><P> <table width="90%" border="0" cellspacing="0" cellpadding="0"> <tr><td align="center" colspan="2"> <H2>Cadastro de clientes </H2></td></tr> <tr> <td width="150" valign="top"> <input type="radio" name="pessoa" id="pessoa" value="j" onclick="java script: abre('juridica'); abre('razao'); fecha('fisica'); fecha('nome_pessoa'); limpaCampo( 'cpf' ); limpaCampo( 'nome' );" /> <label>Pessoa Jur&iacute;dica</label><br> <input type="radio" name="pessoa" id="pessoa" value="f" onclick="java script: fecha('juridica'); fecha('razao'); abre('fisica'); abre('nome_pessoa'); limpaCampo( 'cnpj' ); limpaCampo( 'razaosocial' );" /> <label>Pessoa F&iacute;sica</label> </td> <td width="150" valign="top"> <div id="juridica" style="display:block;"> <table> <tr> <td colspan="2" ><label>CNPJ: <br /> <input type="text" name="cnpj" id="cnpj" class="bginput" maxlength="18" size="19" onkeypress="return mascara(event,this,'##.###.###/####-##');" value="" /></label><br /><br /> </td> </tr> </table> </div> <div id="fisica" style="display:none;"> <table> <tr> <td colspan="2"><label>CPF: <br /> <input type="text" name="cpf" id="cpf" class="bginput" maxlength="14" size="19" onkeypress="return mascara(event,this,'###.###.###-##');" value="" /></label><br /><br /> </td> </tr> </table> </div> <div id="razao" style="display:block;"> <table> <tr> <td colspan="2" ><label>Raz&atilde;o Social: <br /> <input type="text" name="razaosocial" id="razaosocial" class="bginput" maxlength="60" size="60" value="" /></label><br /><br /> </td> </tr> </table> </div> <div id="nome_pessoa" style="display:none;"> <table> <tr> <td colspan="2"><label>Nome: <br /> <input type="text" name="nome" id="nome" class="bginput" maxlength="60" size="60" value="" /></label><br /><br /> </td> </tr> </table> </div> </td> </tr> <tr> <td width="150">Senha:</td> <td ><input type="password" name="senha" value="" size=20 maxlength=4> <font color="#FF0000">Senha com 4 d&iacute;gitos</font></td> </tr> <tr> <td width="150">Respons&aacute;vel:</td> <td ><INPUT TYPE="text" NAME="responsa" VALUE="" SIZE=60 MAXLENGTH=60></td> </tr> <tr> <td width="150">CEP: </td> <td ><INPUT TYPE="text" NAME="cep" onkeypress="return mascara(event,this,'##.###-###');" VALUE="" SIZE=20 MAXLENGTH=10> </td> </tr> <tr> <td width="150">Endere&ccedil;o:</td> <td ><INPUT TYPE="text" NAME="endereco" VALUE="" SIZE=60 MAXLENGTH=60></td> </tr> <tr> <td width="150">N&uacute;mero:</td> <td ><INPUT TYPE="text" NAME="numero" VALUE="" SIZE=20 MAXLENGTH=10></td> </tr> <tr> <td width="150">Bairro:</td> <td ><INPUT TYPE="text" NAME="bairro" VALUE="" SIZE=60 MAXLENGTH=60></td> </tr> <tr> <td width="150">Estado:</td> <td > <select name="estado" onChange="DadosCidade(this.value);" size="1" style="width:200px"> <option value="#" selected>Selecione o Estado:</option> <option value="AC">AC</option> <option value="AL">AL</option> <option value="AM">AM</option> <option value="AP">AP</option> <option value="BA">BA</option> <option value="CE">CE</option> <option value="DF">DF</option> <option value="ES">ES</option> <option value="GO">GO</option> <option value="MA">MA</option> <option value="MG">MG</option> <option value="MS">MS</option> <option value="MT">MT</option> <option value="PA">PA</option> <option value="PB">PB</option> <option value="PE">PE</option> <option value="PI">PI</option> <option value="PR">PR</option> <option value="RJ">RJ</option> <option value="RN">RN</option> <option value="RO">RO</option> <option value="RR">RR</option> <option value="RS">RS</option> <option value="SC">SC</option> <option value="SE">SE</option> <option value="SP">SP</option> <option value="TO">TO</option> </select></td> </tr> <tr> <td width="150">Cidade:</td> <td > <select name="cidade" id="cidade" size="1" style="width:200px"> <option id="opcoescidade" value="#">Primeiro selecione o estado!</option> </select> </td> </tr> <tr> <td width="150">Telefone:</td> <td ><input type="text" name="tel" onkeypress="return mascara(event,this,'##.####.####');" value="" size=20 maxlength=12></td> </tr> <tr> <td width="150">Celular:</td> <td ><input type="text" name="cel" onkeypress="return mascara(event,this,'##.####.####');" value="" size=20 maxlength=12></td> </tr> <tr> <td colspan="2" align="center"> <input type="button" value="Cadastrar" onClick="CriticaLoginCliente()"> <input type="reset" value="Limpar Campos"> </td> </tr> </table> </FORM> <? } ?> Abraço a todos
  3. Pessoal. Estou com um problema extranho. Tenho o form abaixo (com mais campos claro): ... <tr> <td width="150">Senha:</td> <td ><input type="text" name="senha" value="" size=12 maxlength=6></td> </tr> <tr> <td width="150">Responsavel:</td> <td ><INPUT TYPE="text" NAME="responsavel" VALUE="" SIZE=60 MAXLENGTH=60></td> </tr> <tr> <td width="150">CEP: </td> <td ><INPUT TYPE="text" NAME="cep" VALUE="" SIZE=60 MAXLENGTH=60></td> </tr> ... Porem, eu coloco esses trez campos para exibir depois de enviados e da assim: senha: exibe normal resposnavel: exibe assim ???? ???? - Desse jeito senha: exibe normal O interessante é que, qualquer valor que coloco para responsavel da isso. No Mysql : Senha: varcha4 responsavel: varchar155 cep int8 O que será isso? Segue o código completo: <? //Inicio do envio dos dados if ($acao == "cadastra"){ print $cep; print $responsavel; print $numero; exit; if ($pessoa=="j") { $dcto=$cnpj; $dctotipo="cnpj"; $pessoatipo="rasaosocial"; $valorpessoatipo=$rasaosocial; } if ($pessoa=="f") { $dcto=$cpf; $dctotipo="cpf"; $pessoatipo="nome"; $valorpessoatipo=$nome; } $dcto = str_replace( ".", "", $dcto); $dcto = str_replace( "-", "", $dcto); $dcto = str_replace( ".", "", $dcto); $dcto = str_replace( "/", "", $dcto); $dcto = str_replace( "-", "", $dcto); $tel = str_replace("(", "", $tel); $tel = str_replace(")", "", $tel); $tel = str_replace("-", "", $tel); $tel = str_replace("/", "", $tel); $tel = str_replace(" ", "", $tel); $tel = str_replace(".", "", $tel); $cel = str_replace("(", "", $cel); $cel = str_replace(")", "", $cel); $cel = str_replace("-", "", $cel); $cel = str_replace("/", "", $cel); $cel = str_replace(" ", "", $cel); $cel = str_replace(".", "", $cel); $data = date('Y-m-d'); $busca = mysql_query("SELECT $dctotipo FROM clientes where $dctotipo='$dcto'"); $num_linhas= mysql_num_rows($busca); $busca2 = mysql_query("SELECT $pessoatipo FROM clientes where $pessoatipo='$valorpessoatipo'"); $num_linhas2= mysql_num_rows($busca2); if($num_linhas <> 0){ echo "Esse Usuário já esta cadastrado. Por favor, escolha outro!"; } else if($num_linhas2 <> 0){ echo "Esse cliente já esta cadastrado. Por favor, verifique!"; } else{ $sql = "INSERT INTO clientes ($dctotipo, senha, $pessoatipo, responsavel, cep, endereco, numero, bairro, cidade, estado, tel, cel, bloqueio) VALUES('$dcto', '$senha', '$valorpessoatipo', '$responsavel', '$cep', '$endereco', '$numero', '$bairro', '$cidade, '$estado', '$tel', '$cel','n')"; $consulta = mysql_query($sql); if($consulta){echo "<script>alert('Cadastro OK!'); document.location='cliente_cadastrar.php?acao=cadastro'</script>"; } else {echo "<script>alert('Não foi possivel realizar o cadastro. Por favor tente novamente!'); document.location='cliente_cadastrar.php?acao=cadastro'</script>"; } } } ?> <? if ($acao == "cadastro"){ ?> <form name="form" enctype="multipart/form-data" method="POST" action="?acao=cadastra" id="login_cliente"><P> <table width="90%" border="0" cellspacing="0" cellpadding="0"> <tr><td align="center" colspan="2"> <H2>Cadastro de clientes </H2></td></tr> <tr> <td width="150" valign="top"> <input type="radio" name="pessoa" id="pessoa" value="j" onclick="java script: abre('juridica'); abre('razao'); fecha('fisica'); fecha('nome_pessoa'); limpaCampo( 'cpf' ); limpaCampo( 'nome' );" /> <label>Pessoa Jur&iacute;dica</label><br> <input type="radio" name="pessoa" id="pessoa" value="f" onclick="java script: fecha('juridica'); fecha('razao'); abre('fisica'); abre('nome_pessoa'); limpaCampo( 'cnpj' ); limpaCampo( 'razaosocial' );" /> <label>Pessoa F&iacute;sica</label> </td> <td width="150" valign="top"> <div id="juridica" style="display:block;"> <table> <tr> <td colspan="2" ><label>CNPJ: <br /> <input type="text" name="cnpj" id="cnpj" class="bginput" maxlength="18" size="19" onkeypress="return mascara(event,this,'##.###.###/####-##');" value="" /></label><br /><br /> </td> </tr> </table> </div> <div id="fisica" style="display:none;"> <table> <tr> <td colspan="2"><label>CPF: <br /> <input type="text" name="cpf" id="cpf" class="bginput" maxlength="14" size="19" onkeypress="return mascara(event,this,'###.###.###-##');" value="" /></label><br /><br /> </td> </tr> </table> </div> <div id="razao" style="display:block;"> <table> <tr> <td colspan="2" ><label>Razao Social: <br /> <input type="text" name="razaosocial" id="razaosocial" class="bginput" maxlength="18" size="19" value="" /></label><br /><br /> </td> </tr> </table> </div> <div id="nome_pessoa" style="display:none;"> <table> <tr> <td colspan="2"><label>Nome: <br /> <input type="text" name="nome" id="nome" class="bginput" maxlength="14" size="19" value="" /></label><br /><br /> </td> </tr> </table> </div> </td> </tr> <tr> <td width="150">Senha:</td> <td ><input type="text" name="senha" value="" size=12 maxlength=6></td> </tr> <tr> <td width="150">Responsavel:</td> <td ><INPUT TYPE="text" NAME="responsavel" VALUE="" SIZE=60 MAXLENGTH=60></td> </tr> <tr> <td width="150">CEP: </td> <td ><INPUT TYPE="text" NAME="cep" VALUE="" SIZE=60 MAXLENGTH=60></td> </tr> <tr> <td width="150">Endere&ccedil;o:</td> <td ><INPUT TYPE="text" NAME="endereco" VALUE="" SIZE=60 MAXLENGTH=60></td> </tr> <tr> <td width="150">N&uacute;mero:</td> <td ><INPUT TYPE="text" NAME="numero" VALUE="" SIZE=14 MAXLENGTH=14></td> </tr> <tr> <td width="150">Bairro:</td> <td ><INPUT TYPE="text" NAME="bairro" VALUE="" SIZE=60 MAXLENGTH=60></td> </tr> <tr> <td width="150">Estado:</td> <td > <select name="estado" onChange="DadosCidade(this.value);" size="1" style="width:200px"> <option value="#" selected>Selecione o Estado:</option> <option value="AC">AC</option> <option value="AL">AL</option> <option value="AM">AM</option> <option value="AP">AP</option> <option value="BA">BA</option> <option value="CE">CE</option> <option value="DF">DF</option> <option value="ES">ES</option> <option value="GO">GO</option> <option value="MA">MA</option> <option value="MG">MG</option> <option value="MS">MS</option> <option value="MT">MT</option> <option value="PA">PA</option> <option value="PB">PB</option> <option value="PE">PE</option> <option value="PI">PI</option> <option value="PR">PR</option> <option value="RJ">RJ</option> <option value="RN">RN</option> <option value="RO">RO</option> <option value="RR">RR</option> <option value="RS">RS</option> <option value="SC">SC</option> <option value="SE">SE</option> <option value="SP">SP</option> <option value="TO">TO</option> </select></td> </tr> <tr> <td width="150">Cidade:</td> <td > <select name="cidade" id="cidade" size="1" style="width:200px"> <option id="opcoescidade" value="#">Primeiro selecione o estado!</option> </select> </td> </tr> <tr> <td width="150">Telefone:</td> <td ><input type="text" name="tel" onkeypress="mascaratudo(event,this,'## ####-####');BloqueiaLetras();" value="" size=12 maxlength=12></td> </tr> <tr> <td width="150">Celular:</td> <td ><input type="text" name="cel" onkeypress="mascaratudo(event,this,'## ####-####');BloqueiaLetras();" value="" size=12 maxlength=12></td> </tr> <tr> <td colspan="2" align="center"> <input type="button" value="Cadastrar" onClick="CriticaLoginCliente()"> <input type="reset" value="Limpar Campos"> </td> </tr> </table> </FORM> <? } ?>
  4. Ola pessoal. Tenho dois radio buttons com o mesmo name e tenho dois campos text, um CPF e outrto CNPJ. Esses, por sua vez, dentro de div's. Eu queria fazer uma função que, quando clikasse no radio button 1, limpasse o que estivesse no campo de texto CNPJ e , uando clikasse no radio button 2, limpasse o que estivesse no campo de texto CPF. Como seria isso? Tentei a função assim: // JavaScript Document function limpatexto(form, campo) { document.form.campo.value=""; } Chamando assim: <div id="juridica" style="display:block;"> <table> <tr> <td colspan="2" ><label>CNPJ: <br /> <input type="text" name="cnpj" id="cnpj" class="bginput" maxlength="18" size="19" onkeypress="return mascara(event,this,'##.###.###/####-##');" onclik="limpatexto(login_cliente, cpf)" value="" /></label><br /><br /> </td> </tr> </table> </div> <div id="fisica" style="display:none;"> <table> <tr> <td colspan="2"><label>CPF: <br /> <input type="text" name="cpf" id="cpf" class="bginput" maxlength="14" size="19" onkeypress="return mascara(event,this,'###.###.###-##');" value="" /></label><br /><br /> </td> </tr> </table> </div> Não funcionou
  5. Valeu pessoal. Como tava dificil, deixei a função de lado e fiz linha a linha mesmo. function CriticaLoginCliente() { if (document.login_cliente.pessoa[0].checked) { if (document.login_cliente.cnpj.value == "") { alert("Preencha CNPJ: campo obrigatório !"); document.login_cliente.cnpj.focus(); return (false); } if (document.login_cliente.cnpj.value.length < 18) { alert("CNPJ: Preencha Corretamente!"); document.login_cliente.cnpj.focus(); return (false); } if (document.login_cliente.cnpj.value == " . . / - ") { alert("Preencha CNPJ: Aproveite a mascara para preencher!"); document.login_cliente.cnpj.focus(); return (false); } } else if (document.login_cliente.pessoa[1].checked) { if (document.login_cliente.cpf.value == "") { alert("Preencha CPF: campo obrigatório !"); document.login_cliente.cpf.focus(); return (false); } if (document.login_cliente.cpf.value.length < 14) { alert("CPF: Preencha Corretamente!"); document.login_cliente.cpf.focus(); return (false); } if (document.login_cliente.cpf.value == " . . - ") { alert("Preencha CPF: Aproveite a mascara para preencher!"); document.login_cliente.cpf.focus(); return (false); } } else { alert("É necessário escolher uma opção."); if (document.getElementById('juridica').style.display == 'block') { document.login_cliente.pessoa[0].checked = true; document.login_cliente.pessoa[1].checked = false; document.login_cliente.cnpj.focus(); } else if (document.getElementById('fisica').style.display == 'block') { document.login_cliente.pessoa[0].checked = false; document.login_cliente.pessoa[1].checked = true; document.login_cliente.cpf.focus(); } return false; } if (document.login_cliente.senha.value == "") { alert("Preencha Senha: Campo obrigatório!!!"); document.login_cliente.senha.focus(); return (false); } document.login_cliente.submit(); }
  6. Porque, na função abaixo, os comandos document.login_cliente.pessoa[0].checked; return false; (Ultimas linhas) não estão sendo executados. estão passando direto? function validaradio(form,name_do_radiobutton) { preencheu = false; elementosForm = form.getElementsByTagName('input'); for (i=0;i<elementosForm.length;i++) { if(elementosForm[i].type == "radio" && elementosForm[i].name == name_do_radiobutton && elementosForm[i].checked) { preencheu = true; break; } } if (!preencheu) { alert("É necessário escolher uma opção."); document.login_cliente.pessoa[0].checked; return false; } } Onde esta o erro? Estou chamando a função assim: function CriticaLoginCliente() { validaradio(login_cliente,"pessoa"); ... Onde login_cliente é o nome do formulario e "pessoa" é o nome de dois radio buttons neste form.
  7. Bom, consegui chegar chegar no código abaixo porem, dentro da função, o return false não quer funcionar. Ele passa direto como se não existisse: // JavaScript Document function validaradio(form,name_do_radiobutton) { preencheu = false; elementosForm = form.getElementsByTagName('input'); for (i=0;i<elementosForm.length;i++) { if(elementosForm[i].type == "radio" && elementosForm[i].name == name_do_radiobutton && elementosForm[i].checked) { preencheu = true; break; } } if (!preencheu) { alert("É necessário escolher uma opção."); elementosForm[0].focus; return false; } } function CriticaLoginCliente() { validaradio(login_cliente,"pessoa"); if (document.login_cliente.pessoa[0].checked == true) { if (document.login_cliente.cnpj.value == " . . / - ") or (document.login_cliente.cnpj.value == "") {alert("Preencha CNPJ: Campo obrigatório!!!");document.login_cliente.cnpj.focus(); return (false);} if (document.login_cliente.cnpj.value.length < 18) {alert("CNPJ: Preencha Correto!!!");document.login_cliente.cnpj.focus(); return (false);} } if (document.login_cliente.pessoa[1].checked == true) { if (document.login_cliente.cpf.value == " . . - ") or (document.login_cliente.cpf.value == "") {alert("Preencha CPF: Campo obrigatório!!!");document.login_cliente.cpf.focus(); return (false);} if (document.login_cliente.cpf.value.length < 14) {alert("CPF: Preencha Correto!!!");document.login_cliente.cpf.focus(); return (false);} } if (document.login_cliente.senha.value == "") {alert("Preencha Senha: Campo obrigatório!!!");document.login_cliente.senha.focus(); return (false);} document.login_cliente.submit(); }
  8. Ola pessoal. To precisando de uma ajuda. Bom. No formulario tenho dois radio buttons com name e id="pessoa" uma com value="j" e outra com value="f". Tem tambem dois campos text. Um name="cpf" e outro name="cnpj". Estou querendo fazer uma validação de forma que, quando enviar o formulario, verificar qual radio button esta checado. Se for o value="j" então verificar se o campo CNPJ foi preenchido, se esta só com a mascara ou se tem menos que 18 carcters (incluindo a mascara) e Se for o value="f" então verificar se o campo CPF foi preenchido, se esta só com a mascara ou se tem menos que 14 carcters (incluindo a mascara) Apos esta validação. Verificar se alguma dessas coisas ocorrerem, verificar qual radio button estava marcada no momento do envio do formulario e setar o focus para seu respectivo text. Não estou conseguindo fazer isso. Preciso de ajuda. Grande Abraço! Segue os códigos que estou tentando. Form: <table> <td width="50%" valign="top"> <table> <tr><td colspan="2"> <? if ($errocli == "invalido") { echo ("<font color=red size=-1><b>Usuário Inválido ou senha não confere</b></font>"); } if ($errocli == "bloqueado") { echo ("<font color=red size=-1><b>Usuário Bloqueado</b></font>"); } ?> </td></tr> <form action="logar.php?acao=cliente" method="post" name="login_cliente"> <tr> <td colspan="2"><font color="#990000">Cliente</font></td></tr> <tr> <td valign="top" colspan="2"> <table width="300"> <tr> <td width="150" valign="top"> <input type="radio" name="pessoa" id="pessoa" value="j" checked="checked" onclick="java script: abre('juridica'); fecha('fisica');" /> <label>Pessoa Jur&iacute;dica</label><br> <input type="radio" name="pessoa" id="pessoa" value="f" onclick="java script: fecha('juridica'); abre('fisica');" /> <label>Pessoa F&iacute;sica</label> </td> <td width="150" valign="top"> <div id="juridica" style="display:block;"> <table> <tr> <td colspan="2" ><label>CNPJ: <br /> <input type="text" name="cnpj" class="bginput" maxlength="18" size="19" onkeypress="return mascara(event,this,'##.###.###/####-##');" value="" /></label><br /><br /> </td> </tr> </table> </div> <div id="fisica" style="display:none;"> <table> <tr> <td colspan="2"><label>CPF: <br /> <input type="text" name="cpf" class="bginput" maxlength="14" size="19" onkeypress="return mascara(event,this,'###.###.###-##');" value="" /></label><br /><br /> </td> </tr> </table> </div> </td> </tr> </table> </td> </tr> <tr> <td>Senha:</td> <td><INPUT TYPE="password" NAME="senha" VALUE="" SIZE=20 MAXLENGTH=40></td> </tr> <tr> <td colspan="2" align="center"> <input type="button" value="Entrar" onClick="CriticaLoginCliente()"> <input type="reset" value="Limpar"> </td> </tr> </form> </table> </td> </tr> </table> J.S. function CriticaLoginCliente() { if ((document.login_cliente.cnpj.value == "") && (document.login_cliente.cpf.value == "")) { /* if (document.getElementById(0)["pessoa"].checked = true) {alert("Preencha CNPJ: Campo obrigatório!!!");document.login_cliente.cnpj.focus(); return (false);} if (document.getElementById(1)["pessoa"].checked = true) {alert("Preencha CPF: Campo obrigatório!!!");document.login_cliente.cpf.focus(); return (false);} */ } if (document.login_cliente.cnpj.value.lenght < 18) {alert("Preencha CNPJ: Campo obrigatório!!!");document.login_cliente.cnpj.focus(); return (false);} if (document.login_cliente.cpf.value.lenght < 14) {alert("Preencha CPF: Campo obrigatório!!!");document.login_cliente.cpf.focus(); return (false);} if (document.login_cliente.cnpj.value == " . . / - ") {alert("Preencha CNPJ: Campo obrigatório!!!");document.login_cliente.cnpj.focus(); return (false);} if (document.login_cliente.cpf.value == " . . - ") {alert("Preencha CPF: Campo obrigatório!!!");document.login_cliente.cpf.focus(); return (false);} if (document.login_cliente.senha.value == "") {alert("Preencha Senha: Campo obrigatório!!!");document.login_cliente.senha.focus(); return (false);} document.login_cliente.submit(); }
  9. Carlos Rocha

    Boleto Bancário PHP

    Uma ideia: Primeiro o cliente ve o anuncio e clika em comprar. Nesse momento, é presentado as opçoes de pagamento. Porem, antes de aparecer as opçoes de pagamento, será necessario o cliente fazer um pequeno cadastro onde ele receberá, um usuario e senha. Feita essa parte, assim que a confirmaçao do pagamento chegar, ou por fax, email (scaneando) , ai voce entra no painel administrativo do teu site e d baixa no pagamento dele e manda o email com o linlk do arquivo que ele comproui para baixar. porem, para cada download, é possivel criar um sistema de senha no meio do link para que, após o download, essa senha se expire e não seja possivel mais um novo download.
  10. Carlos Rocha

    SD

    Olha. Esta parecendo que voce colocou um código, mas, alterou no editor de codigos para invés de Mail.php para Mailphp e ai o script não achou. Ve isso. Outra coisa é que talves o servidor esteja barrando case sensitive. em vez de Mail.php, la na pasta esta mail.php. Boa Sorte.
  11. oBSERVA ESSA LINHA: if(isset($this->acao) && $this->acao == 'sair'): NÃO SERIA ASSIM? if(isset($this->acao) && $this->acao == 'sair') { Boa Sorte.
  12. Carlos Rocha

    Redirect/refresh

    OBSERVE que esse apontamento só vai ocorrer, se e somente se (conforme o teu código - observe o else) a funçao mail não for bem sucedida. Talvez seje isso. Boa sorte.
  13. Uma forma seris voce clikar com o lado direito do mouse na pagina e ir em exibir codigo fonte e dar uma estudada nele. Ali me parece que só tem programaçao cliente-side oui seja html. então boa sorte.
  14. Ola pessoal. Consegui. Agora pesso a atenção do pessoal para uma possivel melhora de performance. Melhorar o tempo de resposta. Grato. segue a soluçao: <? function array_envia($array) { $tmp = serialize($array); $tmp = urlencode($tmp); return $tmp; } function array_recebe($url_array) { $tmp = stripslashes($url_array); $tmp = urldecode($tmp); $tmp = unserialize($tmp); return $tmp; } ?> <? $produtos=mysql_query(" SELECT id, nome FROM produtos "); $quantos_produtos=mysql_num_rows($produtos); if ($quantos_produtos==0){print "Num deu!";} else { ?> <form name="verpreco" id="verpreco" method="post" action="?acao=verpreco"> <input type="hidden" value="$quantos_produtos" name="quantos_produtos" /> <table width="500" border="1" align="center"> <tr> <td colspan="10" align="center" valign="middle">Pesquisa de pre&ccedil;os de fornecedores:</td> </tr> <tr><td colspan="10">Produto:</td></tr> <? $i=1; while (list($id, $nome) = mysql_fetch_row($produtos)) { ?> <td width="48" valign="top"> <input type="checkbox" name="produtoid[<?=$id;?>]" id="produtoid[<?=$id;?>]" value="<?=$id;?>" onclick="mostra('valordiv<?=$id;?>')"/><?=$nome;?><br> <div id="valordiv<?=$id;?>" name="valordiv<?=$id;?>" style="display:none"> Valor<?=$id;?>: <input type="text" size="10" onkeypress="BloqueiaLetras();" name="valor<?=$id;?>"> </div> </td> <? $produtos_checkbox[]="valordiv".$id; $produtos_valor[]="valor".$id; if( $i%10==0 ) {echo '</tr><tr>';} $i++; } $produtos_checkbox2=implode(";",$produtos_checkbox); $produtos_valor2=implode(";",$produtos_valor); ?> <tr> <td colspan="10" align="center" valign="middle"><input type="button" value="Pesquizar" onclick="verifica_quantidade_produto('<?=$produtos_valor2;?>')" /></td> </tr> </table> </form> <? } ?> <? if($acao=="verpreco") { print "-------------------------------------------------"; //aqui, verifico de já foi clikado na paginaçao e se a variavel iproduto(do link da paginação) veio. Se sim, decodifica, se não, prossegue o código. if ($idproduto) { $produtoid=urldecode($idproduto); $quantidade=array_recebe($_GET['quanti']); } else { $produtoid=$_POST['produtoid']; foreach( $produtoid AS $key => $value) { $var[]="pp.idProduto=".$value." or"; $campo = 'valor'.$value; $quantidade[$value]=$_POST[$campo]; } $produtoid=implode(' ',$var); $produtoid= substr($produtoid,0, -3); } //aqui,faço uma pesquisa pelos nomes dos produitos para exibir no cabeçalho da tabela $pesquisaprodutos=mysql_query(" select distinct(nome ) from produtos p inner join produtopreco pp on pp.idProduto=p.id where $produtoid "); while(list($nomesdeprodutos) = mysql_fetch_row($pesquisaprodutos)) { $varnome[]=$nomesdeprodutos." e "; } $nomes=implode(' ',$varnome); $produtonome= substr($nomes,0, -2); //aqui, começo a tabela print "<table align='center' width=400 bgcolor='#0080C0'>"; print "<tr ><td align=center colspan=3>Preços dos fornecedores para os produtos $produtonome</td></tr>"; //aqui começo a paginação. $sql = mysql_query(" select distinct(pp.idFornecedor), f.nome, sum(pp.preço) from produtopreco pp inner join fornecedores f on f.id=pp.idFornecedor where $produtoid group by pp.idFornecedor order by sum(pp.preço) "); $total = mysql_num_rows($sql); // Esta função irá retornar o total de linhas na tabela $lpp = 10; // Especifique quantos resultados você quer por página $paginas = ceil($total / $lpp); // Retorna o total de páginas if(!isset($pagina)) { $pagina = 0; } // Especifica uma valor para variavel pagina caso a mesma não esteja setada $inicio = $pagina * $lpp; // Retorna qual será a primeira linha a ser mostrada no MySQL $sql = mysql_query(" select distinct(pp.idFornecedor), f.nome from produtopreco pp inner join fornecedores f on f.id=pp.idFornecedor where $produtoid group by pp.idFornecedor order by sum(pp.preço) LIMIT $inicio, $lpp "); if ($total == "0") {?><tr><td colspan=8 align="center" valign="middle" bgcolor="#FFFFFF"><center><font color=red>=>N&atilde;o foi encontrado nenhum registro para a sua pesquisa</font></center></td></tr><?php } else { print "<tr BGCOLOR='#CCCCCC'>"; print " <td align=center>Produto</td> "; print " <td align=center>Preço Total</td> "; print " <td align=center>Fornecedor</td> "; print "</tr>"; while(list($idFornecedor, $nomefornecedor)=mysql_fetch_row($sql)){ $sql2=mysql_query(" select pp.idProduto, p.nome, pp.preço from produtopreco pp inner join produtos p on p.id=pp.idProduto inner join fornecedores f on f.id=pp.idFornecedor where pp.idFornecedor = $idFornecedor and ($produtoid) "); print "<tr BGCOLOR='#FFFFFF'>"; print " <td align=center>"; $precototal2=0; while (list($idPro, $nomeproduto,$preço)=mysql_fetch_row($sql2)) { $precototal=$quantidade[$idPro]*$preço; print $nomeproduto."<br> Preço unitário= R$ ".formata_moeda($preço)."<br> Quantidade=".$quantidade[$idPro]."<br> Preço Total= R$ ".formata_moeda($precototal)."<p>"; $precototal2+=$precototal; } print "</td>"; print " <td align=center>R$ ".formata_moeda($precototal2)." </td> "; print " <td align=center>$nomefornecedor </td> "; print "</tr>"; } } if($pagina > 0) { $menos = $pagina - 1; $url = "$PHP_SELF?acao=verpreco&pagina=$menos&quanti=".array_envia($quantidade)."&idproduto=".urlencode($produtoid); echo "<a href=".$url.">Anterior</a>"; // Vai para a página anterior } for($i=0;$i<$paginas;$i++) { // Gera um loop com o link para as páginas $url = "$PHP_SELF?acao=verpreco&pagina=$i&quanti=".array_envia($quantidade)."$&idproduto=".urlencode($produtoid); echo " | <a href=".$url.">$i</a>"; } if($pagina < ($paginas - 1)) { $mais = $pagina + 1; $url = "$PHP_SELF?acao=verpreco&pagina=$mais&quanti=".array_envia($quantidade)."&idproduto=".urlencode($produtoid); echo " | <a href=".$url.">Próxima</a>"; } print "</table>"; } ?>
  15. Ola pessoal. Resolvi parte do problema com a adapataçao abaixo. Porem agora, vai ficando mais dificil. Preciso agora de pegar as quantidades dos produtos inseridas nas textboxs relativas a cada uma das chekbox e multiplicar pelo valor unitario. <? $produtos=mysql_query(" SELECT id, nome FROM produtos "); $quantos_produtos=mysql_num_rows($produtos); if ($quantos_produtos==0){print "Num deu!";} else { ?> <form name="verpreco" id="verpreco" method="post" action="?acao=verpreco"> <input type="hidden" value="$quantos_produtos" name="quantos_produtos" /> <table width="500" border="1" align="center"> <tr> <td colspan="10" align="center" valign="middle">Pesquisa de pre&ccedil;os de fornecedores:</td> </tr> <tr><td colspan="10">Produto:</td></tr> <? $i=1; while (list($id, $nome) = mysql_fetch_row($produtos)) { ?> <td width="48" valign="top"> <input type="checkbox" name="produtoid[<?=$id;?>]" id="produtoid[<?=$id;?>]" value="<?=$id;?>" onclick="mostra('valordiv<?=$id;?>')"/><?=$nome;?><br> <div id="valordiv<?=$id;?>" name="valordiv<?=$id;?>" style="display:none"> Valor<?=$id;?>: <input type="text" size="10" onkeypress="BloqueiaLetras();" name="valor<?=$id;?>"> </div> </td> <? $produtos_checkbox[]="valordiv".$id; $produtos_valor[]="valor".$id; if( $i%10==0 ) {echo '</tr><tr>';} $i++; } $produtos_checkbox2=implode(";",$produtos_checkbox); $produtos_valor2=implode(";",$produtos_valor); ?> <tr> <td colspan="10" align="center" valign="middle"><input type="button" value="Pesquizar" onclick="verifica_quantidade_produto('<?=$produtos_valor2;?>')" /></td> </tr> </table> </form> <? } ?> <? if($acao=="verpreco") { print "-------------------------------------------------"; //aqui, verifico de já foi clikado na paginaçao e se a variavel iproduto(do link da paginação) veio. Se sim, decodifica, se não, prossegue o código. if ($idproduto) { $produtoid=urldecode($idproduto); } else { $produtoid=$_POST['produtoid']; foreach( $produtoid AS $key => $value) { $var[]="pp.idProduto=".$value." or"; } $produtoid=implode(' ',$var); print $produtoid; $produtoid= substr($produtoid,0, -3); } //aqui,faço uma pesquisa pelos nomes dos produitos para exibir no cabeçalho da tabela $pesquisaprodutos=mysql_query(" select distinct(nome ) from produtos p inner join produtopreco pp on pp.idProduto=p.id where $produtoid "); while(list($nomesdeprodutos) = mysql_fetch_row($pesquisaprodutos)) { $varnome[]=$nomesdeprodutos." e "; } $nomes=implode(' ',$varnome); $produtonome= substr($nomes,0, -2); //aqui, começo a tabela print "<table align='center' width=400 bgcolor='#0080C0'>"; print "<tr ><td align=center colspan=3>Preços dos fornecedores para os produtos $produtonome</td></tr>"; //aqui começo a paginação. $sql = mysql_query(" select distinct(pp.idFornecedor), f.nome, sum(pp.preço) from produtopreco pp inner join fornecedores f on f.id=pp.idFornecedor where $produtoid group by pp.idFornecedor order by sum(pp.preço) "); $total = mysql_num_rows($sql); // Esta função irá retornar o total de linhas na tabela $lpp = 10; // Especifique quantos resultados você quer por página $paginas = ceil($total / $lpp); // Retorna o total de páginas if(!isset($pagina)) { $pagina = 0; } // Especifica uma valor para variavel pagina caso a mesma não esteja setada $inicio = $pagina * $lpp; // Retorna qual será a primeira linha a ser mostrada no MySQL $sql = mysql_query(" select distinct(pp.idFornecedor), f.nome from produtopreco pp inner join fornecedores f on f.id=pp.idFornecedor where $produtoid group by pp.idFornecedor order by sum(pp.preço) LIMIT $inicio, $lpp "); if ($total == "0") {?><tr><td colspan=8 align="center" valign="middle" bgcolor="#FFFFFF"><center><font color=red>=>N&atilde;o foi encontrado nenhum registro para a sua pesquisa</font></center></td></tr><?php } else { print "<tr BGCOLOR='#CCCCCC'>"; print " <td align=center>Produto</td> "; print " <td align=center>Preço Total</td> "; print " <td align=center>Fornecedor</td> "; print "</tr>"; while(list($idFornecedor, $nomefornecedor)=mysql_fetch_row($sql)){ $sql2=mysql_query(" select p.nome, pp.preço, $valor1 * pp.preço from produtopreco pp inner join produtos p on p.id=pp.idProduto inner join fornecedores f on f.id=pp.idFornecedor where pp.idFornecedor = $idFornecedor and ($produtoid) "); print "<tr BGCOLOR='#FFFFFF'>"; print " <td align=center>"; $precototal2=0; while (list($nomeproduto,$preço,$precototal)=mysql_fetch_row($sql2)) { print $nomeproduto."<br>Preço unitário= R$ ".formata_moeda($preço)."<br>Quantidade=".$valor1."<br>Preço Total= R$ ".formata_moeda($precototal)."<p>"; $precototal2+=$precototal; } print "</td>"; print " <td align=center>R$ ".formata_moeda($precototal2)." </td> "; print " <td align=center>$nomefornecedor </td> "; print "</tr>"; } } if($pagina > 0) { $menos = $pagina - 1; $url = "$PHP_SELF?acao=verpreco&pagina=$menos&idproduto=".urlencode($produtoid); echo "<a href=".$url.">Anterior</a>"; // Vai para a página anterior } for($i=0;$i<$paginas;$i++) { // Gera um loop com o link para as páginas $url = "$PHP_SELF?acao=verpreco&pagina=$i&idproduto=".urlencode($produtoid); echo " | <a href=".$url.">$i</a>"; } if($pagina < ($paginas - 1)) { $mais = $pagina + 1; $url = "$PHP_SELF?acao=verpreco&pagina=$mais&idproduto=".urlencode($produtoid); echo " | <a href=".$url.">Próxima</a>"; } print "</table>"; } ?> O que tenho que alterar agora?
  16. Ola pessoal. Preciso de ajuda. Tenho o form abaixo que é alimentado pelo banco. São checkbox com name e value vindos do banco apartir do id de cada produto. Acontece, que cada checkbox, o seu name, começa com "produtoid" mais o id de cada produto. Desta forma, cada checkbox tem seu proprio name. O que eu não estou conseguindo fazer é o seguinte: Após clikar na checkbox, é aberto uma div com uma textbox dentro. Essa TEXTBOX (para colocar a quantidade de produtos), tem seu name começado por valor mais o numero id do produto tambem Esse id do produto é gerado por um laço while. Minha dificuldade esta depois de submeter o formulario. Fazer as contas de quantidade x preço para APENAS os ids dos produtos marcados nas checkboxs. segue o codigo: <? $produtos=mysql_query(" SELECT id, nome FROM produtos "); $quantos_produtos=mysql_num_rows($produtos); if ($quantos_produtos==0){print "Num deu!";} else { ?> <form name="verpreco" id="verpreco" method="post" action="?acao=verpreco"> <input type="hidden" value="$quantos_produtos" name="quantos_produtos" /> <table width="500" border="1" align="center"> <tr> <td colspan="10" align="center" valign="middle">Pesquisa de pre&ccedil;os de fornecedores:</td> </tr> <tr><td colspan="10">Produto:</td></tr> <? $i=1; while (list($id, $nome) = mysql_fetch_row($produtos)) { ?> <td width="48" valign="top"> <input type="checkbox" name="produtoid<?=$id;?>" id="produtoid<?=$id;?>" value="<?=$id;?>" onclick="mostra('valordiv<?=$id;?>')"/><?=$nome;?><br> <div id="valordiv<?=$id;?>" name="valordiv<?=$id;?>" style="display:none"> Valor<?=$id;?>: <input type="text" size="10" onkeypress="BloqueiaLetras();" name="valor<?=$id;?>"> </div> </td> <? $produtos_checkbox[]="valordiv".$id; $produtos_valor[]="valor".$id; if( $i%10==0 ) {echo '</tr><tr>';} $i++; } $produtos_checkbox2=implode(";",$produtos_checkbox); $produtos_valor2=implode(";",$produtos_valor); ?> <tr> <td colspan="10" align="center" valign="middle"><input type="button" value="Pesquizar" onclick="verifica_quantidade_produto('<?=$produtos_valor2;?>')" /></td> </tr> </table> </form> <? } ?> <? if($acao=="verpreco") { } Como resolvo isso?
  17. Consegui. Se algum experiente souber como melhorar/otimizar esse codigo por favor estamos abertos. // JavaScript Document function implode( separador, matriz ) { return ( ( matriz instanceof Array ) ? matriz.join ( separador ) : matriz ); } function verifica_quantidade_produto(textbox) { var div_produtos, valor; var checkboxs = new Array; textbox = textbox.split(";"); //varre o array só pra mostrar que tá tudo ok valor = 'valor'; valordiv = 'valordiv'; //checkboxs = new Array(); for (textbox_produtos in textbox) { if ((document.getElementById(valordiv+(parseInt(textbox_produtos)+parseInt(1))).style.display == "block") && (document.verpreco.elements[valor+(parseInt(textbox_produtos)+parseInt(1))].value == "")) { alert ('Campo Valor'+(parseInt(textbox_produtos)+parseInt(1)) +' tem que ser preenchido\nCaso contrário, desmarque o produto!'); document.verpreco.elements[valor+(parseInt(textbox_produtos)+parseInt(1))].focus(); return (false); } checkboxs[parseInt(textbox_produtos)+parseInt(1)]=document.getElementById('produtoid'+(parseInt(textbox_produtos)+parseInt(1))).checked; } if (implode('&&',checkboxs).indexOf("true")==-1) { alert ('Nenhum produto marcado\nMarque um produto!'); return (false); } document.verpreco.submit(); }
  18. Pessoal. Olha isso: for (textbox_produtos in textbox) { if ((document.getElementById(valordiv+(parseInt(textbox_produtos)+parseInt(1))).style.display == "block") && (document.verpreco.elements[valor+(parseInt(textbox_produtos)+parseInt(1))].value == "")) { alert ('Campo Valor'+(parseInt(textbox_produtos)+parseInt(1)) +' tem que ser preenchido\nCaso contrário, desmarque o produto!'); document.verpreco.elements[valor+(parseInt(textbox_produtos)+parseInt(1))].focus(); return (false); } checkboxs+=document.getElementById('produtoid'+(parseInt(textbox_produtos)+parseInt(1))).checked; } alert(implode('&&',checkboxs)); if (!indexOf(implode('&&',checkboxs),"true")) { alert ('Nenhum produto marcado\nMarque um produto!'); return (false); } preciso juntar cada um valor entregue a variavel checkbox e depois usar o implode para recuperar esses valores concatenado com &&, depois saber se no resultado dessa concatenaçao existe algum valor true na string. se não houver, informar que não há nehuma checkbox marcada. Como fazer isso? Da forma não funcinou. No php funciona beleza ,mas no js não sei fazer
  19. Bom esse parte consegui fazer. agor preciso saber se, nesse grupo de checkboxs, o cliente não marcou nenhuma. Isso para não correr o risco de ir valor vazio para o banco. Como faz esse verificação? // JavaScript Document function verifica_quantidade_produto(textbox) { var div_produtos, valor; textbox = textbox.split(";"); //varre o array só pra mostrar que tá tudo ok valor = 'valor'; valordiv = 'valordiv'; for (textbox_produtos in textbox) { if ((document.getElementById(valordiv+(parseInt(textbox_produtos)+parseInt(1))).style.display == "block") && (document.verpreco.elements[valor+(parseInt(textbox_produtos)+parseInt(1))].value == "")) { alert ('Campo '+ valor+(parseInt(textbox_produtos)+parseInt(1)) +' tem que ser preenchido\nCaso contrário, desmarque o produto!'); document.verpreco.elements[valor+(parseInt(textbox_produtos)+parseInt(1))].focus(); return (false); } } document.verpreco.submit(); }
  20. O que eu estou querendo dizer é que se eu fizer alert(valor+(parseInt(textbox_produtos)+parseInt(1))); isso retorna, dentro do loop, valor1,valor2,valor3.......... Mas, se eu fizer esse mesmo valor dentro de document.form.. Assim: alert(document.verpreco.valor+(parseInt(textbox_produtos)+parseInt(1)).value); Isso rerorna NaN. O que eu faço? Segue o código todo: // JavaScript Document function verifica_quantidade_produto(textbox) //nesse exemplo, vindo do banco, textbox retornou : valor1;valor2;valor3;valor4;valor5; { var div_produtos, valor; textbox = textbox.split(";"); //varre o array só pra mostrar que tá tudo ok valor = 'valor'; valordiv = 'valordiv'; for (textbox_produtos in textbox) { alert(document.verpreco.valor+(parseInt(textbox_produtos)+parseInt(1)).value); if ((document.getElementById(valordiv+(parseInt(textbox_produtos)+parseInt(1))).style.display == "block") && (document.verpreco.valor+(parseInt(textbox_produtos)+parseInt(1)).value == "")) { alert ('Campo '+ valor+(parseInt(textbox_produtos)+parseInt(1)) +' tem que ser preenchido\nCaso contrário, desmarque o produto!'); document.verpreco.elements['valor+(parseInt(textbox_produtos)+parseInt(1))'].focus(); } } document.verpreco.submit(); }
  21. Pois é, mas sabe o que acontece, O problema é que no loop for, valor+textbox_produtos, começaria com, valor0, valor1....... Assim por diante. Por isso fiz assim alert(document.verpreco.valor+(parseInt(textbox_produtos)+parseInt(1)).value); Por que se trata literalmente de uma soma se eu fizer assim alert(valor+(parseInt(textbox_produtos)+parseInt(1))); Ele mostra direitinho o valor1, valor2...... assim pod diante. Mas, se eu colocar ele dentro do document.verpreco.---------; Ai não vai. Da NaN
  22. Irmão, deu NaN nesse alert. Puz um alert para printar a mostrar a variavel textbox_produtos e ela mostra os indices da variavel textbox. Ou seja, 0,1,2..... Puz outro alert para msotrar a variavel textbox e imprimiu valor1,valor2,valor3,valor4,valor5. Que são os names de cada uma textbox que estao dentro de cada div id valorid1,valorid2,valorid3,valorid4,valorid5, Segue o form: <? $produtos=mysql_query(" SELECT id, nome FROM produtos "); if (mysql_num_rows($produtos)==0){print "Num deu!";} else { ?> <form name="verpreco" method="post" action="?acao=verpreco"> <table width="500" border="1" align="center"> <tr> <td colspan="10" align="center" valign="middle">Pesquisa de pre&ccedil;os de fornecedores:</td> </tr> <tr><td colspan="10">Produto:</td></tr> <? $i=1; while (list($id, $nome) = mysql_fetch_row($produtos)) { ?> <td width="48" valign="top"> <input type="checkbox" name="produtoid<?=$id;?>" value="<?=$id;?>" onclick="mostra('valordiv<?=$id;?>')"/><?=$nome;?><br> <div id="valordiv<?=$id;?>" name="valordiv<?=$id;?>" style="display:none"> Valor: <input type="text" size="10" onkeypress="BloqueiaLetras();" name="valor<?=$id;?>"> </div> </td> <? $produtos_checkbox[]="valordiv".$id; $produtos_valor[]="valor".$id; if( $i%10==0 ) {echo '</tr><tr>';} $i++; } $produtos_checkbox2=implode(";",$produtos_checkbox); $produtos_valor2=implode(";",$produtos_valor); ?> <tr> <td colspan="10" align="center" valign="middle"><input type="button" value="Pesquizar" onclick="verifica_quantidade_produto('<?=$produtos_valor2;?>')" /></td> </tr> </table> </form> <? } ?>
  23. Ola pessoal. Vejam o meu codigo: // JavaScript Document function verifica_quantidade_produto(textbox) { var div_produtos, valor; textbox = textbox.split(";"); //varre o array só pra mostrar que tá tudo ok valor = 'valor'; valorid = 'valorid'; for (textbox_produtos in textbox) {alert(document.verpreco.valor+(parseInt(textbox_produtos)+parseInt(1)).value); if ((document.getElementById('valorid+(parseInt(textbox_produtos)+parseInt(1))').style.display == "block") && (document.verpreco.valor+(parseInt(textbox_produtos)+parseInt(1)).value == "")) { alert ('Campo '+ valor+(parseInt(textbox_produtos)+parseInt(1)) +' tem que ser preenchido\nCaso contrário, desmarque o produto!'); document.verpreco.elements['valor+(parseInt(textbox_produtos)+parseInt(1))'].focus(); } } document.verpreco.submit(); } A ideia aqui é fazer com que a variavel valor, concatenada com a variavel textbox_produtos, resulte em valor1, valor2, valor.....n, quantos forem os indices da variavel textbox_produtos. O que ocorre é o seguinte: se eu colocar assim: alert(document.verpreco.valor+(parseInt(textbox_produtos)+parseInt(1)).value); Da NaN Mas, se eu fizer assim: alert(document.verpreco.valor1).value); Ai retorna o valor. Onde estou errando? Obs.: textbox_produtos retorna 0,1,2..tantas quantos forem os textbox_produtos em textbo conforme o laço for acima
  24. Ola. tenho um form onde há um campo div com um type text dentro. Acontece que essa div e o campo type text são um loop do php e são com isso uma array. <input type="checkbox" name="produtoid[]" value="<?=$id;?>" onclick="mostra('valordiv<?=$id;?>')"/><?=$nome;?><br> <div id="valordiv<?=$id;?>" name="valordiv<?=$id;?>" style="display:none"> Valor: <input type="text" size="10" onkeypress="BloqueiaLetras();" name="valor[]"> </div> Observe no name do input type name=valor[] isso resultará em 'n' divs quantos forem os registros vindos do banco. Tenho o seguinte script js para validar se esse type text esta vazio. // JavaScript Document function verifica_quantidade_produto(div) { var div_produtos; div = div.split(";"); //varre o array só pra mostrar que tá tudo ok for (div_produtos in div) { alert (div[div_produtos]); alert (document.verpreco.elements['valor[0]'].value); if ((document.getElementById(div[div_produtos]).style.display == "block") && (document.verpreco.elements['valor[0]'].value == "")) { alert ('Campo '+ div[div_produtos] +' tem que ser preenchido\nCaso contrário, desmarque o produto!'); document.verpreco.elements[div[div_produtos]].focus(); } } document.verpreco.submit(); } o que não estou conseguindo fazer: A ideia aqui é saber se a div esta blok e se esta verificar se o campo type text esta vazio. Se estiver, disparar um alert e colocar o focu no campo type text. Acontece que não estou conseguindo. haja visto que quantosa forem os divs serão os input type, tambem tentei assim mas não da certo. // JavaScript Document function verifica_quantidade_produto(div) { var div_produtos; div = div.split(";"); //varre o array só pra mostrar que tá tudo ok for (div_produtos in div) { alert (div[div_produtos]); alert (document.verpreco.elements['valor'+[div_produtos]+''].value); if ((document.getElementById(div[div_produtos]).style.display == "block") && (document.verpreco.elements['valor'+[div_produtos]+''].value == "")) { alert ('Campo '+ div[div_produtos] +' tem que ser preenchido\nCaso contrário, desmarque o produto!'); document.verpreco.elements[div[div_produtos]].focus(); } } document.verpreco.submit(); } Se puderem ajudar, desde já muito obrigado
  25. achei nque resolvi mas deu erro. Veja: fiz isso $produtos_checkbox3 =explode(";",$produtos_checkbox2); foreach ($produtos_checkbox3 as $ing) { print $ing."<br>"; } Mas, como colocar cada uma desses ing sem repertir o loop do while? assim: while(list($idFornecedor, $nomefornecedor)=mysql_fetch_row($sql)){ $sql2=mysql_query(" select p.nome, pp.preço, $ing * pp.preço from produtopreco pp inner join produtos p on p.id=pp.idProduto inner join fornecedores f on f.id=pp.idFornecedor where pp.idFornecedor = $idFornecedor and ($produtoid) ");
×
×
  • Criar Novo...