
Carlos Rocha
Membros-
Total de itens
1.302 -
Registro em
-
Última visita
Tudo que Carlos Rocha postou
-
Pessoal. Boa tarde! Estou com um problema no suporte do servidor que não estou conseguindo contornar com eles. Ok. Navegue até: http://gapde.com.br/logar.php Bom. esse é um sistema de login. Na pagina, há dois logins. Um para deficiented e outro para empresas. Há um deficiente cadastrado (O site ainda esta em construçao), cpf : 111.111.111.11 senha : aa considerem aqui que la no script já tem a mascara. e os caras do suport foram no phpmyamin e cosultaram por 111.111.111.11 com a mascara e o meu script, na hora da validaçao com o banco retira a mascara. E, é claro, como no banco o dados vão sem mascara, o retorno da pesquisa que eles fizeram, retornou vazio. Se você tentar logar, observará que o logon não será feito pois a sessão não esta sendo criada. Porem, a consulta ao banco de dados, esta sendo normalmente feito e retornando valor. Por outro lado, criei uma pasta com o nome do site em um outro dominio hospedado em outro servidor e tambem criei a base de dados e subi os mesmos arquivos por ftp para este outo servidor. Lá funciona normal, localmente funciona normal. No UOL host, não funciona. Penso que pode ser configuraçao do php. O que, de fato pode estar ocasionando esse erro? segue o código da pagina <?php //////////////////////////////////CASO DE ADMINISTRADOR LOGAR/////////////////////////////// if ($acao=="administrador") { $usuario = $_POST['usuario']; $senha = $_POST['senha']; $sql = $MySQL->query("select id from admin where usuario='$usuario' and senha='$senha'"); $num = mysql_num_rows($sql); if ($num==0) { echo "<script>document.location='?erroadmin=invalido'</script>"; } else { $sql = $MySQL->query("select id, nome, bloqueio from admin where usuario='$usuario'"); $bloqueio = mysql_result($sql,0,"bloqueio"); $name = mysql_result($sql,0,"nome"); $sessaologinadmin = mysql_result($sql,0,"id"); if ($bloqueio == "s") { echo "<script>document.location='?erroadmin=bloqueado'</script>"; } else { /* session_register("bloqueio"); session_register("name"); session_register("sessaologinadmin"); */ $_SESSION["bloqueio"]=$bloqueio; $_SESSION["name"]=$name; $_SESSION["sessaologinadmin"]=$sessaologinadmin; echo "<script>document.location='admin/index.php'</script>"; } } } ?> <?php //////////////////////////////////CASO DE PPDS LOGAR/////////////////////////////// if ($acao=="deficiente") { $cpf = $_POST['cpf']; $senha = $_POST['senha']; $cpf = str_replace( ".", "", $cpf); $cpf = str_replace( "-", "", $cpf); $cpf = str_replace( ".", "", $cpf); $cpf = str_replace( "/", "", $cpf); $cpf = str_replace( "-", "", $cpf); $sql = $MySQL->query("select id_deficente from deficientes where cpf='$cpf' and senha='$senha'"); $num = mysql_num_rows($sql); if ($num==0) { echo "<script>document.location='?erroppds=invalido'</script>"; } else { $sql = $MySQL->query("select id_deficente, nome, bloqueio from deficientes where cpf='$cpf'"); $bloqueio = mysql_result($sql,0,"bloqueio"); $name = mysql_result($sql,0,"nome"); $sessaologindeficiente = mysql_result($sql,0,"id_deficente"); if ($bloqueio == "s") { echo "<script>document.location='?erroppds=bloqueado'</script>"; } else { /* session_register("bloqueio"); session_register("name"); session_register("sessaologindeficiente"); */ $_SESSION["bloqueio"]=$bloqueio; $_SESSION["name"]=$name; $_SESSION["sessaologindeficiente"]=$sessaologindeficiente; echo "<script>document.location='index.php'</script>"; } } } ?> <?php //////////////////////////////////CASO DE CLIENTE LOGAR/////////////////////////////// if ($acao=="empresa") { if ($pessoa=="j") {$dcto=$cnpj;$dctotipo="cnpj";$pessoatipo="razaosocial";} if ($pessoa=="f") {$dcto=$cpf;$dctotipo="cpf";$pessoatipo="nome";} $dcto = str_replace( ".", "", $dcto); $dcto = str_replace( "-", "", $dcto); $dcto = str_replace( ".", "", $dcto); $dcto = str_replace( "/", "", $dcto); $dcto = str_replace( "-", "", $dcto); $senha = $_POST['senha']; $sql = $MySQL->query("select id_empresa, $pessoatipo from clientes where $dctotipo='$dcto' and senha='$senha'"); $num = mysql_num_rows($sql); if ($num==0) { echo "<script>document.location='?erroempresa=invalido'</script>"; } else { $sql = $MySQL->query("select id_empresa, bloqueio, $pessoatipo from empresas where $dctotipo='$dcto'"); $bloqueio = mysql_result($sql,0,"bloqueio"); $name = mysql_result($sql,0,$pessoatipo); $sessaologinempresa = mysql_result($sql,0,"id"); if ($bloqueio == "s") { echo "<script>document.location='?erroempresa=bloqueado'</script>"; } else { /* session_register("bloqueio"); session_register("name"); session_register("sessaologinempresa"); */ $_SESSION["bloqueio"]=$bloqueio; $_SESSION["name"]=$name; $_SESSION["sessaologinempresa"]=$sessaologinempresa; echo "<script>document.location='index.php'</script>"; } } } ?> <!--//////////////////////////////////CASO DE PPDS LOGAR///////////////////////////////--> <table align="center" width="95%"> <tr bgcolor="#6666FF"> <td align="center" valign="middle" colspan="3"> <font color="#FFFFFF">Logar no Site:::::: <?=$titulo_site;?> ::::::</font><br /> </td> </tr> <tr><td colspan="2" align="center" valign="middle"><img src='img/login.jpg'></td></tr> <tr> <td width="50%" valign="top"> <table border="1"> <tr><td colspan="2"> <? if ($erroppds == "deslogado") { echo ("<font color=red size=-1><b>Não esta logado, favor logar no Sistema</b></font>"); } if ($erroppds == "invalido") { echo ("<font color=red size=-1><b>Usuário Inválido ou senha não confere</b></font>"); } if ($erroppds == "bloqueado") { echo ("<font color=red size=-1><b>Usuário Bloqueado</b></font>"); } ?> </td></tr> <form action="?acao=deficiente" method="post" name="login_deficiente"> <tr> <td colspan="2"><font color="#990000">DEficiente:</font></td></tr> <tr> <td>Cpf:</td> <td><INPUT TYPE="text" NAME="cpf" VALUE="" SIZE="20" MAXLENGTH="14" onkeypress="return mascara(event,this,'###.###.###-##');"></td> </tr> <tr> <td>Senha:</td> <td><INPUT TYPE="password" NAME="senha" VALUE="" SIZE=20 MAXLENGTH=4></td> </tr> <tr> <td colspan="2" align="center"> <input type="button" value="Entrar" onClick="CriticaLoginDeficiente()"> <input type="reset" value="Limpar"> </td> </tr> </form> </table> </td> <!--//////////////////////////////////CASO DE PPDS LOGAR///////////////////////////////--> <!--//////////////////////////////////CASO DE EMPRESA LOGAR///////////////////////////////--> <td width="50%" valign="top"> <table border="1"> <tr><td colspan="2"> <? if ($erroempresa == "deslogado") { echo ("<font color=red size=-1><b>Não esta logado, favor logar no Sistema</b></font>"); } if ($erroempresa == "invalido") { echo ("<font color=red size=-1><b>Usuário Inválido ou senha não confere</b></font>"); } if ($erroempresa == "bloqueado") { echo ("<font color=red size=-1><b>Usuário Bloqueado</b></font>"); } ?> </td></tr> <form action="?acao=empresa" method="post" name="login_empresa"> <tr> <td colspan="2"><font color="#990000">Empresa</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" onclick="java script: abre('juridica'); fecha('fisica'); limpaCampo( 'cpf' );" /> <label>Pessoa Jurídica</label><br> <input type="radio" name="pessoa" id="pessoa" value="f" onclick="java script: fecha('juridica'); abre('fisica'); limpaCampo( 'cnpj' );" /> <label>Pessoa Fí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="20" 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="20" 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=4></td> </tr> <tr> <td colspan="2" align="center"> <input type="button" value="Entrar" onClick="CriticaLoginEmpresa()"> <input type="reset" value="Limpar"> </td> </tr> </form> </table> </td> <!--//////////////////////////////////CASO DE EMPRESA LOGAR///////////////////////////////--> </tr> <!--//////////////////////////////////CASO DE ADMINISTRADOR LOGAR///////////////////////////////--> <tr> <td width="100%" valign="top" colspan="2"> <table align="center" border="1"> <tr><td colspan="2"> <? if ($erroadmin == "deslogado") { echo ("<font color=red size=-1><b>Não esta logado, favor logar no Sistema</b></font>"); } if ($erroadmin == "invalido") { echo ("<font color=red size=-1><b>Usuário Inválido ou senha não confere</b></font>"); } if ($erroadmin == "bloqueado") { echo ("<font color=red size=-1><b>Usuário Bloqueado</b></font>"); } ?> </td></tr> <form action="?acao=administrador" method="post" name="login_administrador"> <tr> <td colspan="2"><font color="#990000">Aministrador:</font></td></tr> <tr> <td>Usuario:</td> <td><INPUT TYPE="text" NAME="usuario" VALUE="" SIZE="20" MAXLENGTH="14" /></td> </tr> <tr> <td>Senha:</td> <td><INPUT TYPE="password" NAME="senha" VALUE="" SIZE=20 MAXLENGTH=4></td> </tr> <tr> <td colspan="2" align="center"> <input type="button" value="Entrar" onClick="CriticaLoginAdmin()"> <input type="reset" value="Limpar"> </td> </tr> </form> </table> </td> </tr> <!--//////////////////////////////////CASO DE ADMINISTRADOR LOGAR///////////////////////////////--> </table>
-
Pessoal. Estive pensando o seguinte: Se, a cada laço do while, o input ganha um novo id (claro, é um input para cada produto né?), então, o que ei preciso é criar uma array bidirecional carregando, o nome do input e o seu valor e guardar esse array em uma sessão e depois recuperar esses dasdos, entregando os valores do array aos valores dos inputs conforme os índices do array. Como eu faria isso? Aqui vai meu while $i = 0; while(list($id_lista, $foto, $id_produto, $nome_produto, $nome_fornece, $razao_fornece, $nome_grupo, $quantidadecaixa, $preço) = mysql_fetch_row($sql)){ echo "<input type=\"hidden\" name=\"{$i}[id_prod]\" id=\"{$i}[id_prod]\" value=\"$id_produto\"> <input type=\"hidden\" name=\"{$i}[quan]\" id=\"{$i}[quan]\" value=\"\"> <input type=\"hidden\" name=\"{$i}[id_lista]\" value=\"$id_lista\"> "; include("../global/funcoes_php/foto_ver.php"); $icone = "<img border=0 src='../img/saiba_mais.png' alt='Saiba Mais'>"; echo "<tr> <td align=center>$id_lista</td> <td align=center>$foto2</td> <td align=let>$nome_produto</td> <td align=let>$nome_fornece$razao_fornece</td> <td align=let>$nome_grupo</td> <td align=\"center\" valign=\"middle\"> <a href=\"?acao=saibamais&id_prod=$id_produto&&id_da_lista=$id_lista\">Saiba Mais</a> </td> <td align=center>$quantidadecaixa</td> <td align=right>R$ $preço</td> <td align=right> <input type=text id={$i}[quant] value=0 size=2 style=\"text-align: center;\" onKeyPress=\"BloqueiaLetras();\" onchange=\"calculo(this.value, $preço,'{$i}[quant]','{$i}[quan]','{$i}[label_preco]');\" > </td> <td align=right>R$ <label id=\"{$i}[label_preco]\">0.00</label></td> <td align=center valign=\"middle\"> <a href=\"#\" onclick=\"this.href=' carrinho.php?op=adicionar&id_produto=$id_produto&id_da_lista=$id_lista&quantidade='+document.getElementById('{$i}[quant]').value\" > Enviar </a> </td> </tr>"; $i++; }
-
Pessoal. Tenho uma lista de produtos paginada. Em cada linha que exibe os produtos, tem lá um input para que o usuario possa digitar a quantidade daquele produto que ele quer. Esse form paginado, pemite ao usuario, navegar entre as paginas e depois, clikar no botão submit e enviar os dados dos produtos que tiveram suas quantidades alteradas do padrão 0 para qualquer valor. O problema é que, estando na primeira pagina e o usuario altera o produto 1, por exemplo de 0 para 5 unidades, dai ele troca de pagina e altera naquela a quantidade de um outro produto. Quando o usuario volta na pagina 1, ele perde quantidade que ele digitou no produto que ele escolheu na pagina 1. Como faço para guardar isso? Tentei com sesões mas não tive sorte. <? if ($acao== "mostra_produtos"){ $sql = mysql_query(" select pl.id_lista, p.foto, pl.id_produto, p.nome, f.nome, f.razaosocial, g.nome, p.quantidadecaixa, p.preço from produtos_lista pl inner join produtos p on pl.id_produto = p.id inner join fornecedores f on f.id = p.fornecedor inner join grupos g on p.grupo = g.id_grupo where pl.data_fim >= CURRENT_DATE order by pl.id_lista desc, f.nome, f.razaosocial, p.nome "); $total = mysql_num_rows($sql); // Esta função irá retornar o total de linhas na tabela $lpp = 2; // 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 pl.id_lista, p.foto, pl.id_produto, p.nome, f.nome, f.razaosocial, g.nome, p.quantidadecaixa, p.preço from produtos_lista pl inner join produtos p on pl.id_produto = p.id inner join fornecedores f on f.id = p.fornecedor inner join grupos g on p.grupo = g.id_grupo where pl.data_fim >= CURRENT_DATE order by pl.id_lista desc, f.nome, f.razaosocial, p.nome LIMIT $inicio, $lpp "); if ($total == "0") { echo "<table border=1 width=800 align=center> <tr><td colspan=11 align=center><h3>Ainda não há produtos cadastrados</h3></td></tr> </table>"; } else{ echo "<table border=1 width=800 align=center> <tr><td colspan=11 align=center><h3>Produtos</h3></td></tr> <tr> <td align=center>Lista</td> <td align=center>Foto</td> <td align=center>Produto</td> <td align=center>Fornecedor</td> <td align=center>Grupo</td> <td align=center>Descrição</td> <td align=center>Qtde. caixa</td> <td align=center>Preço</td> <td align=center>Quantidade</td> <td align=center>Sub Total</td> <td align=center>Adicionar</td> </tr> <form action=\"carrinho.php?op=adicionar\" method=\"post\" name=\"envia_tudo\"> "; $i = 0; while(list($id_lista, $foto, $id_produto, $nome_produto, $nome_fornece, $razao_fornece, $nome_grupo, $quantidadecaixa, $preço) = mysql_fetch_row($sql)){ $quant{$i}[quant] = $_POST["{$i}[quant]"]; session_register("$quant{$i}[quant]"); echo "<input type=\"hidden\" name=\"{$i}[id_prod]\" id=\"{$i}[id_prod]\" value=\"$id_produto\"> <input type=\"hidden\" name=\"{$i}[quan]\" id=\"{$i}[quan]\" value=\"\"> <input type=\"hidden\" name=\"{$i}[id_lista]\" value=\"$id_lista\"> "; include("../global/funcoes_php/foto_ver.php"); $icone = "<img border=0 src='../img/saiba_mais.png' alt='Saiba Mais'>"; echo "<tr> <td align=center>$id_lista</td> <td align=center>$foto2</td> <td align=let>$nome_produto</td> <td align=let>$nome_fornece$razao_fornece</td> <td align=let>$nome_grupo</td> <td align=\"center\" valign=\"middle\"> <a href=\"?acao=saibamais&id_prod=$id_produto&&id_da_lista=$id_lista\">Saiba Mais</a> </td> <td align=center>$quantidadecaixa</td> <td align=right>R$ $preço</td> <td align=right> <input type=text id={$i}[quant] value=\"".$quant{$i}[quant]."\" size=2 style=\"text-align: center;\" onKeyPress=\"BloqueiaLetras();\" onchange=\"calculo(this.value, $preço,'{$i}[quant]','{$i}[quan]','{$i}[label_preco]');\" > </td> <td align=right>R$ <label id=\"{$i}[label_preco]\">0.00</label></td> <td align=center valign=\"middle\"> <a href=\"#\" onclick=\"this.href=' carrinho.php?op=adicionar&id_produto=$id_produto&id_da_lista=$id_lista&quantidade='+document.getElementById('{$i}[quant]').value\" > Enviar </a> </td> </tr>"; $i++; } if($pagina > 0) { $menos = $pagina - 1; $url = "$PHP_SELF?acao=mostra_produtos&pagina=$menos"; 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=mostra_produtos&pagina=$i"; echo " | <a href=".$url.">$i</a>"; } if($pagina < ($paginas - 1)) { $mais = $pagina + 1; $url = "$PHP_SELF?acao=mostra_produtos&pagina=$mais"; echo " | <a href=".$url.">Próxima</a>"; } echo " <tr> <td align=center valign=\"middle\" colspan=11 height=50> <input type=\"submit\" value=\"Enviar todos os ítens\"> </form> </td> </tr> "; echo "</table>"; } } ?>
-
já achei. Era só trocar o menor for( $i = 0; $i < count( $dados ); $i++ ) por menor/igual for( $i = 0; $i <= count( $dados ); $i++ ) Ficando assim: for( $i = 0; $i <= count( $dados ); $i++ ) { if( !empty( $dados[ $i ] [ 'id_prod' ] ) ) { $Query = sprintf( 'SELECT id FROM produtos WHERE id = %d', $dados[ $i ] [ 'id_prod' ] ); $R_Query = $MySQL->query( $Query ); if( mysql_num_rows( $R_Query ) > 0 ) { $MeuCarrinho->AdicionarItem( $dados[ $i ] [ 'id_prod' ], $dados[ $i ] [ 'quan' ] , $dados[ $i ] [ 'id_lista' ] ); } } } Valeu
-
Observei que, se eu fizer assim: $dados= filtrar_array_por_valor($_POST, 'quan', 1); print_r($dados); Chamando a funçao <? function filtrar_array_por_valor($array, $index, $value) { if(is_array($array) && count($array) > 0) { foreach(array_keys($array) as $key) { $temp[$key] = $array[$key][$index]; if ($temp[$key] >= $value) { $newarray[$key] = $array[$key]; } } } return $newarray; } ?> Terei o que eu preciso e adaptando o código à variavel $dados. O que antes colocava no carrinho todos os ítens inclkusive os com 0 unidades, agora, embrora a matriz esteja retonando mais de um ítem, ele só esta colocando 1. Porque será? Veja a adptaçao Antes for( $i = 0; $i < count( $_POST ); $i++ ) { if( !empty( $_POST[ $i ] [ 'id_prod' ] ) ) { $Query = sprintf( 'SELECT id FROM produtos WHERE id = %d', $_POST[ $i ] [ 'id_prod' ] ); $R_Query = $MySQL->query( $Query ); if( mysql_num_rows( $R_Query ) > 0 ) { $MeuCarrinho->AdicionarItem( $_POST[ $i ] [ 'id_prod' ], $_POST[ $i ] [ 'quan' ] , $_POST[ $i ] [ 'id_lista' ] ); } } } Depois for( $i = 0; $i < count( $dados ); $i++ ) { if( !empty( $dados[ $i ] [ 'id_prod' ] ) ) { $Query = sprintf( 'SELECT id FROM produtos WHERE id = %d', $dados[ $i ] [ 'id_prod' ] ); $R_Query = $MySQL->query( $Query ); if( mysql_num_rows( $R_Query ) > 0 ) { $MeuCarrinho->AdicionarItem( $dados[ $i ] [ 'id_prod' ], $dados[ $i ] [ 'quan' ] , $dados[ $i ] [ 'id_lista' ] ); } } }
-
Ola pessoal. Tenho seguinte array Array ( [0] => Array ( [id_prod] => 1 [quan] => 1 [id_lista] => 13 ) [1] => Array ( [id_prod] => 2 [quan] => 2 [id_lista] => 11 ) [2] => Array ( [id_prod] => 4 [quan] => 3 [id_lista] => 9 ) [3] => Array ( [id_prod] => 3 [quan] => 4 [id_lista] => 2 ) ) Como posso filtrar para saber qual array veio com [quan] maior que 0(zero)? A ideia aqui é fazer filtro de carrinho de compras onde o cliente pode lançar todos os produtos de uma só vez e em um só botão. Porem, só me interessa, aquele produto que sua quanrtidade for maior que 0. É para adptar a esse código; for( $i = 0; $i < count( $_POST ); $i++ ) { if( !empty( $_POST[ $i ] [ 'id_prod' ] ) ) { $Query = sprintf( 'SELECT id FROM produtos WHERE id = %d', $_POST[ $i ] [ 'id_prod' ] ); $R_Query = $MySQL->query( $Query ); if( mysql_num_rows( $R_Query ) > 0 ) { $MeuCarrinho->AdicionarItem( $_POST[ $i ] [ 'id_prod' ], $_POST[ $i ] [ 'quan' ] , $_POST[ $i ] [ 'id_lista' ] ); } } } Como posso fazer isso?
-
Ae doutor. Sem usa funçoes: <a href=\"#\" onclick=\"this.href=' carrinho.php?op=adicionar&id_prod=$id_produto&lista=$id_lista&quantidade='+document.getElementById('quant[$id_produto]').value\" > Enviar </a> Valeu pela força
-
Bom crieu um arquivo com este teu script e puz ele no disco d: Mas, veja o que acontece quando cliko no adicionar: D:\java script:;
-
Ainda não entendi. E o resto da url? entra onde? tentei assim e não deu: <td align=center valign=\"middle\"> <a href=\"java script:;\" onclick=\"retorna_valor('quant[$id_produto]',$id_produto, $id_lista)\">Adicionar</a> </td> </tr>"; } echo " <tr> <td align=center valign=\"middle\" colspan=11 height=50> <input type=\"submit\" value=\"Enviar todos os ítens\"> </form> </td> </tr> "; echo "</table>"; } ?> <script> function retorna_valor(campo, id, lista) { var url= "carrinho.php?op=adicionar&id_prod=+id+&lista=+lista+&quantidade="; var campo2=document.getElementById(campo).value; window.location=url+campo2; } </script> tentei tambem assim e não deu: <a href=\"<script>onclick=retorna_valor('quant[$id_produto]',$id_produto,$id_lista);</script>\">Adicionar</a> </td> </tr>"; } echo " <tr> <td align=center valign=\"middle\" colspan=11 height=50> <input type=\"submit\" value=\"Enviar todos os ítens\"> </form> </td> </tr> "; echo "</table>"; } ?> <script> function retorna_valor(campo, id, lista) { var url= "carrinho.php?op=adicionar&id_prod=+id+&lista=+lista+&quantidade="; var campo2=document.getElementById(campo).value; window.location=url+campo2; } </script>
-
Olha só o que eu fiz e não deu certo: <a href=\"carrinho.php?op=adicionar&id_prod=$id_produto&quantidade=java script:retorna_valor('quant[$id_produto]')&lista=$lista\">Adicionar</a> Eis a a função js <script> function retorna_valor(campo) { var campo2=document.getElementById(campo).value; return campo2; } </script>
-
É, você esta certo. Mas, então, me diz ai: Como posso fazer para, o clickar em um href, um de seus parametros pegar o valor que esta em um outro campo do form? Tipo form input text name=quantidade <a href='?acao=enivar&quantidade= aqui vai o valor que esta digitado no campo quantidade '>Enviar</a> input submit /form Como faz isso?
-
púxa, sera que terei que usar href no lugar de form?
-
Boa Noite Pessoal. Fui tentar fazer isso aqui. Mas, mexendo mexendo, entrei numa situação dificilima que não faço a menoe ideia de como resolver. Para isso, venho pedir a ajuda de vocês: Tenho uma listagem de produtos para fazer carrinho de compras: formwhile{lista | foto | produto | fornecedor | grupo | descriçao | itens na caixa | preço | quantidade | subtotal | adicionar}Botão Submitform Isso é um produto por linha. Esse form tem um botão submit que vai enviar todos os produtos que, no input do item quantidade, o cliente alterou de 0 (padrão) para outro valor, e só os produtos que foram alterados Outro problema é que, no input da descrição, tem um form com um submit indicando o id do produto da linha. Esse form irá abrir uma action para exibir os dados desse produto. No campo adicionar, tem um form com um submit indicando o id do produto da linha e a quantidade digitada no input quantidade. Esse form irá abrir uma action com a finalidade de enviar apenas este produto para o carrinho. Existe tambem o problema de um form dentro do outro. Já não sei mais oque fazer. estou todo perdido.
-
Em parte eu consegui. Porem, agora, esta acontecendo erro de retorno. Tenho a funçao que adiciona os itens ao carrinho if (!empty($op)){ switch ($op) { case "adicionar": foreach($_POST['id_prod'] as $numero=>$arquivo) { if (!empty($arquivo)){ $Query = "select id from produtos where id = $arquivo"; $R_Query = $MySQL->query($Query); if (mysql_num_rows($R_Query)>0) { $MeuCarrinho->AdicionarItem($arquivo,1,$id_lista); } } } break; ... function AdicionarItem($codigo,$quantidade,$lista) { //Inicializando parametro $posicao = -1; $achou = $this->ObtemPosicao($codigo,$posicao); if (!$achou){ $this->item_codigo[] = $codigo; $this->item_quantidade[] = $quantidade; $this->item_lista[] = $lista; } } /* AdicionarItem() */ Esta funcionando normal, mas aqui $MeuCarrinho->AdicionarItem($arquivo,1,$id_lista); Gravo alem da quantidade 1, o numero da lista em cada produto e uso a função que vai atualizar(e mostrar) no carrinho o numero da lista para cada item. function ObtemListaItem($codigo){ $posicao = -1; $achou = $this->ObtemPosicao($codigo,$posicao); if ($achou) { return $this->item_lista[$posicao]; }else{ return "erro ao obter a lista do item"; } function ObtemPosicao($codigo,&$posicao){ //Percorrendo o vetor for($i=0;$i<count($this->item_codigo);$i++) { if ($this->item_codigo[$i] == $codigo) { $posicao = $i; return TRUE; } } }/* ObtemPosicao() */ No carrinho, estou recebendo o valor da lista assim: echo " <tr> <td align='center'>".$MeuCarrinho->ObtemListaItem($id)."</td> ... Acontece, que em vez de vir o valor da lista como acontece com a item quantidade, aparece o numero 3 Onde será que esta o erro?
-
Em parte eu consegui. Porem, agora, esta acontecendo erro de retorno. Tenho a funçao que adiciona os itens ao carrinho if (!empty($op)){ switch ($op) { case "adicionar": foreach($_POST['id_prod'] as $numero=>$arquivo) { if (!empty($arquivo)){ $Query = "select id from produtos where id = $arquivo"; $R_Query = $MySQL->query($Query); if (mysql_num_rows($R_Query)>0) { $MeuCarrinho->AdicionarItem($arquivo,1,$id_lista); } } } break; ... function AdicionarItem($codigo,$quantidade,$lista) { //Inicializando parametro $posicao = -1; $achou = $this->ObtemPosicao($codigo,$posicao); if (!$achou){ $this->item_codigo[] = $codigo; $this->item_quantidade[] = $quantidade; $this->item_lista[] = $lista; } } /* AdicionarItem() */ Esta funcionando normal, mas aqui $MeuCarrinho->AdicionarItem($arquivo,1,$id_lista); Gravo alem da quantidade 1, o numero da lista em cada produto e uso a função que vai atualizar(e mostrar) no carrinho o numero da lista para cada item. function ObtemListaItem($codigo){ $posicao = -1; $achou = $this->ObtemPosicao($codigo,$posicao); if ($achou) { return $this->item_lista[$posicao]; }else{ return "erro ao obter a lista do item"; } function ObtemPosicao($codigo,&$posicao){ //Percorrendo o vetor for($i=0;$i<count($this->item_codigo);$i++) { if ($this->item_codigo[$i] == $codigo) { $posicao = $i; return TRUE; } } }/* ObtemPosicao() */ No carrinho, estou recebendo o valor da lista assim: echo " <tr> <td align='center'>".$MeuCarrinho->ObtemListaItem($id)."</td> ... Acontece, que em vez de vir o valor da lista como acontece com a item quantidade, aparece o numero 3 Onde será que esta o erro?
-
Pessoal. Tenho um carrinho de compras simples. Gostaria de colocar um botão para adicionar uma unidade de todos os produtos de uma só vez no carrinho. CVomo eu faço? carrinho.php <?php //Verificando se a variavel de sessão foi criada if (!session_is_registered("MeuCarrinho")){ session_register("MeuCarrinho"); $MeuCarrinho = new TCarrinho(); $_SESSION[MeuCarrinho] = serialize($MeuCarrinho); $MeuCarrinho = unserialize($_SESSION[MeuCarrinho]); } $_SESSION[MeuCarrinho] = serialize($MeuCarrinho); $MeuCarrinho = unserialize($_SESSION[MeuCarrinho]); if (!empty($op)){ switch ($op) { case "adicionar": if (!empty($id_prod)){ $Query = "select id from produtos where id = $id_prod"; $R_Query = $MySQL->query($Query); if (mysql_num_rows($R_Query)>0) { foreach($_POST['quan'] as $numero=>$arquivo) { $MeuCarrinho->AdicionarItem($id_prod,$arquivo,$id_lista); } } } break; case "excluir": $MeuCarrinho->RemoverItem($id_prod); break; case "atualizar": $MeuCarrinho->AtualizarCarrinho($_POST); break; case "finalizar": if ($MeuCarrinho->QuantosItens()>0) { echo "<script>document.location='CarrinhoFinal.php?acao=gravar_pedido&preco_total=$preco_total'</script>"; } break; } } if ($MeuCarrinho->QuantosItens()==0) { echo "<table align='center'> <tr><td align=center><p><p><h2>Lista Vazia</h2><p><p></td></tr> <tr><td align=center><p><p><a href=pedidos_fazer.php?acao=mostra_produtos><h2>Mostar Produtos</h2></a><p><p></td></tr> </table>"; } else { $QuerySQL = " select p.id, p.foto, p.nome, p.preço, p.quantidadecaixa, p.grupo, g.nome, p.fornecedor from produtos p inner join grupos g on p.grupo = g.id_grupo " . $MeuCarrinho->QuerySQL_ObtemListaDeItens(). ""; $Resultado = $MySQL->query($QuerySQL); ?> <form method="post" action="carrinho.php?op=atualizar"> <table BORDER=0 CELLSPACING=2 CELLPADDING=4 WIDTH="95%" align="center"> <tr BGCOLOR="#0080C0"><td align="center" colspan="9"><b><font color="#FFFFFF">Pedido</font></b></td></tr> <tr BGCOLOR="#004080"> <td align="center"><b><font color="#FFFF99">Lista</font></b></td> <td align="center"><b><font color="#FFFF99">Foto</font></b></td> <td align="center"><b><font color="#FFFF99">Produto</font></b></td> <td align="center"><b><font color="#FFFF99">Grupo</font></b></td> <td align="center"><b><font color="#FFFF99">QTD na Caixa</font></b></td> <td align="center"><b><font color="#FFFF99">PREÇO UNITÁRIO</font></b></td> <td align="center"><b><font color="#FFFF99">Quantidade</font></b></td> <td align="center"><b><font color="#FFFF99">TOTAL</font></b></td> <td align="center"> </td> </tr> <? $preco_total = 0.00; while(list($id, $foto, $nome, $preço, $quantidadecaixa, $grupo, $nome_grupo, $fornecedor) = mysql_fetch_row($Resultado)) { //Computando preço total $preco_total = $preco_total + $MeuCarrinho->ObtemSubTotalDeUmItem($id,$preço); session_register("preco_total"); include("../global/funcoes_php/foto_ver.php"); echo " <tr> <td align='center'>".$MeuCarrinho->ObtemListaItem($id)."</td> <td align='center'><font size=-1>". $foto2 ."</font></td> <td align='left'><font size=-1>". $nome ."</font></td> <td align='left'><font size=-1>". $nome_grupo ."</font></td> <td align='center'><font size=-1>". $quantidadecaixa ."</font></td> <td align='center'>R$ ". number_format($preço, 2, '.', '')." </td> <td align='center'><font size=-1><input type=TEXT name=". $id ." size=2 value=". $MeuCarrinho->ObtemQuantidadeItem($id) ."></font></td> <td align='center'>R$ ". number_format($MeuCarrinho->ObtemSubTotalDeUmItem($id,$preço), 2, '.', '') ."</td> <td align='center'><b><a href=carrinho.php?op=excluir&id_prod=$id&id_fornece=$fornecedor>Excluir</a></b></td> </tr> "; } ?> <tr><td align="center" colspan="9"> <font color="#FF0000"><b>VALOR TOTAL DO PEDIDO R$ <?=number_format($preco_total, 2, '.', '');?></b></font></td> </tr> <tr><td align="center" colspan="9"> <input type="hidden" name="id_prod" value="<?=$id_produto;?>"> <input type="hidden" name="id_fornece" value="<?=$id_fornece;?>"> <input type="hidden" name="id_lista" value="<?=$id_lista;?>"> <input type="submit" value="Atualizar" name="Atualizar" WIDTH="78" HEIGHT="20" style="background-color: rgb(0,111,55); color: rgb(255,255,0)"><br> </td> </tr> </table> </form> <table align="center" width="800"> <tr> <td align="right"> <form method="post" action="pedidos_fazer.php?acao=mostra_produtos"> <input type="hidden" name="id_prod" value="<?=$id_produto;?>"> <input type="hidden" name="id_fornece" value="<?=$id_fornece;?>"> <input type="hidden" name="id_lista" value="<?=$id_lista;?>"> <input type="submit" value="<< Voltar as Compras" name="voltar" WIDTH="78" HEIGHT="20" style="background-color: rgb(0,111,55); color: rgb(255,255,0)"> </form> </td> <td align="left"> <form method="post" action="carrinho.php?op=finalizar" name='FORM'> <input type="hidden" name="id_lista" value="<?=$id_lista;?>"> <input type="hidden" name="preco_total" value="<?=number_format($preco_total, 2, '.', ''); ?>"> <input type="submit" value="Finalizar Compra >>" name="Finalizar" WIDTH="78" HEIGHT="20" style="background-color: rgb(0,111,55); color: rgb(255,255,0)"> </form> </td> </tr> </table> <? } ?> TCarrinho.php <?php /* Classe TCarrinho */ class TCarrinho { var $item_codigo = array(); var $item_quantidade = array(); var $item_lista = array(); /* ObtemPosicao Este metodo obtem a posicao de um item mediante ao seu codigo, retornando um valor booleano e gravando a posicao na variavel de referencia $posicao, caso o codigo do item esteja no carrinho. */ function ObtemPosicao($codigo,&$posicao){ //Percorrendo o vetor for($i=0;$i<count($this->item_codigo);$i++) { if ($this->item_codigo[$i] == $codigo) { $posicao = $i; return TRUE; } } }/* ObtemPosicao() */ /* ObtemPreco Este metodo obtem o preço por unidade do produto tendo em mãos o codigo dele. */ function ObtemPreco($codigo){ $Sql = mysql_query("select preço from produtos where id = $codigo"); list($preco_uni) = mysql_fetch_row($Sql); return $preco_uni; //return mysql_result($sql,0,0); }/* ObtemPreco() * /* AdicinarItem Este metodo adiciona um item no carrinho */ function AdicionarItem($codigo,$quantidade,$lista) { //Inicializando parametro $posicao = -1; $achou = $this->ObtemPosicao($codigo,$posicao); if (!$achou){ $this->item_codigo[] = $codigo; $this->item_quantidade[] = $quantidade; $this->item_lista[] = $lista; } } /* AdicionarItem() */ /* RemoverItem Este metodo remove um item do carrinho de compra, passando o codigo do produto */ function RemoverItem($codigo) { //Inicializando parametro $posicao = -1; $achou = $this->ObtemPosicao($codigo,$posicao); if ($achou){ //Removendo o elemento do vetor array_splice($this->item_codigo, $posicao, 1); array_splice($this->item_quantidade, $posicao, 1); } } /* RemoveItem() */ /* QuantosItens Este metodo retorna a quantidade de itens incluidas no carrinho de compras */ function QuantosItens() { return count($this->item_quantidade); } /* QuantosItens() */ /* ExcluirTodosItens Este metodo retira todos os itens contidos no carrinho de compras */ function ExcluirTodosItens(){ $this->item_quantidade = null; $this->item_codigo = null; } /* ExcluirTodosItens() */ /* QuerySQL_ObtemListaDeItens Este metodo gera uma parte do codigo SQL que sera usado para buscar os dados do carrinho de compra (id, NOME e PREÇO). O comando SQL final tera como finalidade de buscar no banco de dados apenas os dados dos itens incluidos no carrinho. */ function QuerySQL_ObtemListaDeItens(){ $itens = "where "; $STR = ""; if ($this->QuantosItens()>0) { $fixo = " id ="; for ($i=0;$i<$this->QuantosItens();$i++){ $STR = $STR . $fixo . " " . $this->item_codigo[$i]; if ($i+1<$this->QuantosItens()) { $STR = $STR . " or "; } } } if (!$STR == "") { return $itens . $STR; }else{ //Caso não exista nenhum item no carrinho o codigo final SQL, procurara por um item que não existe na tabela de produtos, neste caso -1. return "where id = -1"; } } /* QuerySQL_ObtemListaDeItens() */ /* ObtemNovoPrecoItem Este metodo obtem o novo preço do ítem baseado no preço calculado antes do carrinho */ function ObtemListaItem($codigo){ $posicao = -1; $achou = $this->ObtemPosicao($codigo,$posicao); if ($achou) { return $this->item_lista[$posicao]; }else{ return "erro ao obter Novo Preço do item"; } } /* ObtemNovoPrecoItem() */ /* ObtemQuantidadeItem Este metodo obtem a quantidade de um Item */ function ObtemQuantidadeItem($codigo){ $posicao = -1; $achou = $this->ObtemPosicao($codigo,$posicao); if ($achou) { return $this->item_quantidade[$posicao]; }else{ return "erro ao obter quantidade do item"; } } /* ObtemQuantidaItem() */ /* ObtemSubTotalDeUmItem Este metodo retorna o subtotal de um item (QUANTIDADE * VALOR UNITARIO) */ function ObtemSubTotalDeUmItem($id,$preço){ $posicao = -1; $achou = $this->ObtemPosicao($id,$posicao); if ($achou) { return ($this->item_quantidade[$posicao]*$preço); }else{ return "erro ao obter sub total do item"; } } /* ObtemSubTotalDeUmItem() */ /* AtualizarCarrinho Este metodo coleta todos as variaveis enviadas pelo FORMULARO (method="POST") e atualiza as quantidades dos itens. */ function AtualizarCarrinho(&$VAR_ENVIADAS_PELO_BROWSER){ //Percorrendo a lista de itens e atualizando suas quantidades for ($i=0;$i<$this->QuantosItens();$i++){ $this->item_quantidade[$i] = $VAR_ENVIADAS_PELO_BROWSER[$this->item_codigo[$i]]; } } /* AtualizarCarrinho() */ } /* Classe TCarrinho */ ?>
-
Bom, fiz um foreach no array e deu certo mas não sei se é seguro fazer assim. Já no carrinho, com o array já enviado. fiz assim: if (!empty($op)){ switch ($op) { case "adicionar": if (!empty($id_prod)){ $Query = "select id from produtos where id = $id_prod"; $R_Query = $MySQL->query($Query); if (mysql_num_rows($R_Query)>0) { foreach($_POST['quan'] as $numero=>$arquivo) { $MeuCarrinho->AdicionarItem($id_prod,$arquivo,$id_lista); } } } ..........
-
Ola pessoal. Tenho um loop no meu script que gera o form a cada laço. Acontece, que os campos do form, para serem validades, estou atribuindo a eles, names em arrays: <input type=\"hidden\" name=\"quan[$id_produto]\" id=\"quan[$id_produto]\" value=\"\"> Acontece, que, quando submeto o form, chega la no destino um array. Porem, só chega um índice dessa array. Eu estou querendo saber, qual indice foi submetido. e qual o seu valor. Sei que se eu fizer o print_r(); terei ela, mas saber qual o indice dela que veio via código, não estou sabendo fazer
-
calendario js no ie e chrome
pergunta respondeu ao Carlos Rocha de Carlos Rocha em Ajax, JavaScript, XML, DOM
Pessoal. Ainda não consegui resolver. alguém pode me ajudar nessa? -
Ola pessoal. Boa noite. Tenho um script d eum calendario que peguei na internet que esta tendo dois problemas que já rachei a cabeça para entender e não consegui achar o erro. 1) No internet explorer, quando escolho qualquer data menor 10, ele adiciona um 0 antes do numero e faz, por exemplo, 09. Porem, quanda a data é a data do dia, ele não esta adicionando o 0. Daí, o script barra o prosseguimento do mesmo. 2) No chrome, aontece o seguinte. O script tem um validador para verificar se a data é maior ou menor que a data atual. Se menor que a data atual, ele barra a execução. Se a data foer posterior le deverá prosseguir com o screip. Porem, no chrome, qualquer data esta dando que é maior que a data do dia. Calendario.js // construindo o calendário function popdate(obj,div,tam,ddd) { if (ddd) { day = "" mmonth = "" ano = "" c = 1 char = "" for (s=0;s<parseInt(ddd.length);s++) { char = ddd.substr(s,1) if (char == "/") { c++; s++; char = ddd.substr(s,1); } if (c==1) day += char if (c==2) mmonth += char if (c==3) ano += char } ddd = mmonth + "/" + day + "/" + ano } if(!ddd) {today = new Date()} else {today = new Date(ddd)} date_Form = eval (obj) if (date_Form.value == "") { date_Form = new Date()} else {date_Form = new Date(date_Form.value)} ano = today.getFullYear(); mmonth = today.getMonth (); day = today.toString ().substr (8,2) umonth = new Array ("Janeiro", "Fevereiro", "Março", "Abril", "Maio", "Junho", "Julho", "Agosto", "Setembro", "Outubro", "Novembro", "Dezembro") days_Feb = (!(ano % 4) ? 29 : 28) days = new Array (31, days_Feb, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31) if ((mmonth < 0) || (mmonth > 11)) alert(mmonth) if ((mmonth - 1) == -1) {month_prior = 11; year_prior = ano - 1} else {month_prior = mmonth - 1; year_prior = ano} if ((mmonth + 1) == 12) {month_next = 0; year_next = ano + 1} else {month_next = mmonth + 1; year_next = ano} txt = "<table bgcolor='#efefff' style='border:solid #330099; border-width:2' cellspacing='0' cellpadding='3' border='0' width='"+tam+"' height='"+tam*1.1 +"'>" txt += "<tr bgcolor='#FFFFFF'><td colspan='7' align='center'><table border='0' cellpadding='0' width='100%' bgcolor='#FFFFFF'><tr>" txt += "<td width=20% align=center><a href=java script:popdate('"+obj+"','"+div+"','"+tam+"','"+((mmonth+1).toString() +"/01/"+(ano-1).toString())+"') class='Cabecalho_Calendario' title='Ano Anterior'><<</a></td>" txt += "<td width=20% align=center><a href=java script:popdate('"+obj+"','"+div+"','"+tam+"','"+( "01/" + (month_prior+1).toString() + "/" + year_prior.toString())+"') class='Cabecalho_Calendario' title='Mês Anterior'><</a></td>" txt += "<td width=20% align=center><a href=java script:popdate('"+obj+"','"+div+"','"+tam+"','"+( "01/" + (month_next+1).toString() + "/" + year_next.toString())+"') class='Cabecalho_Calendario' title='Próximo Mês'>></a></td>" txt += "<td width=20% align=center><a href=java script:popdate('"+obj+"','"+div+"','"+tam+"','"+((mmonth+1).toString() +"/01/"+(ano+1).toString())+"') class='Cabecalho_Calendario' title='Próximo Ano'>>></a></td>" txt += "<td width=20% align=right><a href=java script:force_close('"+div+"') class='Cabecalho_Calendario' title='Fechar Calendário'><b>X</b></a></td></tr></table></td></tr>" txt += "<tr><td colspan='7' align='right' bgcolor='#ccccff' class='mes'><a href=java script:pop_year('"+obj+"','"+div+"','"+tam+"','" + (mmonth+1) + "') class='mes'>" + ano.toString() + "</a>" txt += " <a href=java script:pop_month('"+obj+"','"+div+"','"+tam+"','" + ano + "') class='mes'>" + umonth[mmonth] + "</a> <div id='popd' style='position:absolute'></div></td></tr>" txt += "<tr bgcolor='#330099'><td width='14%' class='dia' align=center><b>Dom</b></td><td width='14%' class='dia' align=center><b>Seg</b></td><td width='14%' class='dia' align=center><b>Ter</b></td><td width='14%' class='dia' align=center><b>Qua</b></td><td width='14%' class='dia' align=center><b>Qui</b></td><td width='14%' class='dia' align=center><b>Sex<b></td><td width='14%' class='dia' align=center><b>Sab</b></td></tr>" today1 = new Date((mmonth+1).toString() +"/01/"+ano.toString()); diainicio = today1.getDay () + 1; week = d = 1 start = false; for (n=1;n<= 42;n++) { if (week == 1) txt += "<tr bgcolor='#efefff' align=center>" if (week==diainicio) {start = true} if (d > days[mmonth]) {start=false} if (start) { dat = new Date((mmonth+1).toString() + "/" + d + "/" + ano.toString()) day_dat = dat.toString().substr(0,10) day_today = date_Form.toString().substr(0,10) year_dat = dat.getFullYear () year_today = date_Form.getFullYear () colorcell = ((day_dat == day_today) && (year_dat == year_today) ? " bgcolor='#FFCC00' " : "" ) var m = (mmonth+1).toString(); if( d<9 ) d = '0'+d; if( m<9 ) m = '0'+m; txt += "<td"+colorcell+" align=center><a href=java script:block('"+ d + "/" + m + "/" + ano.toString() +"',"+ obj +",'" + div +"') class='data'>"+ d.toString() + "</a></td>" d ++ } else { txt += "<td class='data' align=center> </td>" } week ++ if (week == 8) { week = 1; txt += "</tr>"} } txt += "</table>" div2 = eval (div) div2.innerHTML = txt } // função para exibir a janela com os meses function pop_month(obj, div, tam, ano) { txt = "<table bgcolor='#CCCCFF' border='0' width=80>" for (n = 0; n < 12; n++) { txt += "<tr><td align=center><a href=java script:popdate('"+obj+"','"+div+"','"+tam+"','"+("01/" + (n+1).toString() + "/" + ano.toString())+"')>" + umonth[n] +"</a></td></tr>" } txt += "</table>" popd.innerHTML = txt } // função para exibir a janela com os anos function pop_year(obj, div, tam, umonth) { txt = "<table bgcolor='#CCCCFF' border='0' width=160>" l = 1 for (n=1991; n<2012; n++) { if (l == 1) txt += "<tr>" txt += "<td align=center><a href=java script:popdate('"+obj+"','"+div+"','"+tam+"','"+(umonth.toString () +"/01/" + n) +"')>" + n + "</a></td>" l++ if (l == 4) {txt += "</tr>"; l = 1 } } txt += "</tr></table>" popd.innerHTML = txt } // função para fechar o calendário function force_close(div) { div2 = eval (div); div2.innerHTML = ''} // função para fechar o calendário e setar a data no campo de data associado function block(data, obj, div) { force_close (div) obj2 = eval(obj) obj2.value = data novadata = data.split('/'); } validador function valida_data(campo_data,formnome) { var expReg = /^(([0-2]\d|[3][0-1])\/([0]\d|[1][0-2])\/[1-2][0-9]\d{2})$/; var msgErro = 'Formato inválido de campo_data.'; var vdt = new Date(); var vdia = vdt.getDay(); var vmes = vdt.getMonth(); var vano = vdt.getYear(); if ((campo_data.value.match(expReg)) && (campo_data.value!='')){ var dia = campo_data.value.substring(0,2); var mes = campo_data.value.substring(3,5); var ano = campo_data.value.substring(6,10); if((mes==04 && dia > 30) || (mes==06 && dia > 30) || (mes==09 && dia > 30) || (mes==11 && dia > 30)){ alert("Dia incorreto !!! O mês especificado contém no máximo 30 dias."); campo_data.focus(); return false; } else{ //1 if(ano%4!=0 && mes==2 && dia>28){ alert("campo_data incorreta!! O mês especificado contém no máximo 28 dias."); campo_data.focus(); return false; } else{ //2 if(ano%4==0 && mes==2 && dia>29){ alert("campo_data incorreta!! O mês especificado contém no máximo 29 dias."); campo_data.focus(); return false; } else{ //3 if (ano > vano) { alert("campo_data incorreta!! Ano informado maior que ano atual."); campo_data.focus(); return false; }else{ //4 document.getElementById(formnome).submit(); // Ou dos dois modos abaixo: //document.form_data_final.submit(); //eval( "document." + formnome + ".submit();" ) } //4-else } //3-else }//2-else }//1-else } else { //5 alert(msgErro); campo_data.focus(); return false; } //5-else } Como resolver isso?
-
Bom. Agora entendi. Muito Obrigado. Por min, pode fechar o tópico.
-
Ok. Entendi. Fiz e deu certo grato. Mas, só uma dúvida. É segura fazer o redirect desse jeito. Voce faria assim? Minha intensão é aposentar scripts no cliente (browser). Essa ideia, é boa?
-
inclusive o session_start(); abaixo do ob_start();? Ou no caso do ob_start(); não é necessário usar o session_start();? Se não, quem vem primeiro. O session ou o ob_start?
-
Descobri. O problema era na chamada da funçao Estava fazendo assim: header("refresh: 3; acao=contato"); quando o certo é assim: header("refresh: 3; url='?acao=contato'"); Mas agora esta dando o bendido do erro de header: Warning: Cannot modify header information - headers already sent by (output started at /home/c27202/public_html/gapde/global/config/conexao.php:1) in /home/c27202/public_html/gapde/cadastros_conteudo.php on line 21 tem como resolver isso tambem?
-
Sabe o que estou observando. header("refresh: 3; ?acao=contato"); break; Aqui está dando refresh na pagina, e eu precisava era que redirecionasse. Dai tentei assim: sleep(5); header("location:?acao=contato"); break; Desta forma redireciona correto mas antes dos 5 segundos, só mostra o fundo azul da pagina sem nada nela.