helnata 0 Denunciar post Postado Janeiro 25, 2010 OI como posso add + 1 mês usando essa codigo.. <?php include("config.php"); $post_pagar = $_POST["id_do_aluno"]; $pega_aluno = mysql_query("SELECT * FROM aluno WHERE id = $post_pagar"); while($nomes = mysql_fetch_array($pega_aluno)) { $id_aluno = $nomes["id"]; $nome_aluno = $nomes["nome"]; $data_venci = $nomes["data_ven"]; } ?> queria saber como eu poderia add mais um mês nessa string $data_venci Usando date... Compartilhar este post Link para o post Compartilhar em outros sites
Anderson Falkowski 0 Denunciar post Postado Janeiro 25, 2010 Tente: <?php $data_venci = date($nomes["data_ven"], strtotime('+1 months')); ?> Compartilhar este post Link para o post Compartilhar em outros sites
Furian 0 Denunciar post Postado Janeiro 25, 2010 Tentou colocar o +1 após do $data_venci = $nomes["data_ven"]; Não sei se é isso... Grande abraço, até... Compartilhar este post Link para o post Compartilhar em outros sites
Dee 0 Denunciar post Postado Janeiro 25, 2010 Não é "certo" por 1 Month. Porquê tem meses de 30, 31 e 28 dias. A não ser que você deixe padrão 30 dias. Mas caso não for padrão, faça assim: <?php $data_venci = date($nomes["data_ven"], strtotime('+ 31 days')); // 30 ou 28 days ?> Compartilhar este post Link para o post Compartilhar em outros sites
João Batista Neto 448 Denunciar post Postado Janeiro 25, 2010 Porquê tem meses de 30, 31 e 28 dias. Muitas empresas padronizam 28 dias devido a uma questão prática, como 28 é múltiplo de 7 uma compra efetuada em um dia útil jamais vencerá em um fim de semana. Agora, o ideal é fazer esse trabalho diretamente no banco de dados, assim: SELECT `id`,`nome`,date_add(`data_ven` , INTERVAL 1 MONTH ) 'data_ven' FROM aluno Coloquei alguns comentários no seu código, não deixe de lê-los. /** * Se o conteúdo de config.php for fundamental para a execução da sua aplicação, prefira * require em vez de include */ require 'config.php'; /** * Antes de utilizar o conteúdo de uma variável externa ao PHP, verifique se ela de fato * chegou. */ if ( isset( $_POST[ 'id_do_aluno' ] ) ){ $post_pagar = $_POST[ 'id_do_aluno' ]; /** * NUNCA utilize o valor de uma variável externa ao PHP sem antes verificar se o conteúdo * dela é aquilo que você está esperando. */ if ( !filter_var( $post_pagar , FILTER_VALIDATE_INT ) ){ echo 'Estamos esperando um número inteiro...'; } else { $pega_aluno = mysql_query( "SELECT `id`,`nome`,date_add(`data_ven` , INTERVAL 1 MONTH ) 'data_ven' FROM aluno WHERE id = $post_pagar" ); /** * JAMAIS assuma que tudo está bem, algumas vezes uma queda do servidor de banco de dados * poderá causar um erro na sua aplicação e poderá comprometer seriamente sua segurança. */ if ( $pega_aluno !== false ){ while( ( $nomes = mysql_fetch_array( $pega_aluno ) ) !== false ){ $id_aluno = $nomes[ 'id' ]; $nome_aluno = $nomes[ 'nome' ]; $data_venci = $nomes[ 'data_ven' ]; } } else { echo 'Falha ao recuperar os dados, tente novamente...'; } } } Compartilhar este post Link para o post Compartilhar em outros sites
helnata 0 Denunciar post Postado Janeiro 25, 2010 Nenhum dessas respostas não resultou em sucesso!!! Compartilhar este post Link para o post Compartilhar em outros sites
Dee 0 Denunciar post Postado Janeiro 25, 2010 Posta o que você ta fazendo espertao! Compartilhar este post Link para o post Compartilhar em outros sites
helnata 0 Denunciar post Postado Janeiro 25, 2010 Posta o que você ta fazendo espertao! Me descupe mais deu certo usando a função do MYSQL SELECT `id`,`nome`,date_add(`data_ven` , INTERVAL 1 MONTH ) 'data_ven' FROM aluno Me descupe!!!!!!!!!!!!! Tudo Ok!!! Resolvido P.S. Mais ainda ficarei com duvida, como usar date corretamento no PHP. Compartilhar este post Link para o post Compartilhar em outros sites
Anderson Falkowski 0 Denunciar post Postado Janeiro 25, 2010 http://docs.php.net/manual/pt_BR/function.date.php Compartilhar este post Link para o post Compartilhar em outros sites
Williams Duarte 431 Denunciar post Postado Janeiro 25, 2010 Só uma abordagem, é que fim do ano passado estavamos trabalhando em cima de segurança em uma aplicação. No caso de operadores !== false ou !== true sempre retornará verdadeiro. o correto neste caso é if ( $pega_aluno != false ) Mas é um bom tuto em relação a segurança! Compartilhar este post Link para o post Compartilhar em outros sites
João Batista Neto 448 Denunciar post Postado Janeiro 25, 2010 No caso de operadores !== false ou !== true sempre retornará verdadeiro. Cuidado amigo, essa afirmação é falsa. $teste1 = 0; $teste2 = ''; $teste3 = null; $teste4 = false; var_dump( $teste1 != false ); var_dump( $teste2 != false ); var_dump( $teste3 != false ); var_dump( $teste4 != false ); Quando é feita uma operação relacional onde um dos valores é um booleano o PHP faz o CAST automático para booleano. A saída do fragmento acima é: bool(false) bool(false) bool(false) bool(false) Isso porque de fato, quando é feito o cast, todos os valores são convertidos para false. Porém, o fragmento abaixo: $teste1 = 0; $teste2 = ''; $teste3 = null; $teste4 = false; var_dump( $teste1 !== false ); var_dump( $teste2 !== false ); var_dump( $teste3 !== false ); var_dump( $teste4 !== false ); O operador !== faz a comparação literal, sem CAST: bool(true) bool(true) bool(true) bool(false) Como pode ver, com exceção do $teste4, todos os valores são realmente diferentes de false. mysql_query http://forum.imasters.com.br/public/style_emoticons/default/seta.gif http://br2.php.net/manual/en/function.mysql-query.php For SELECT, SHOW, DESCRIBE, EXPLAIN and other statements returning resultset, mysql_query() returns a resource on success, or FALSE on error. For other type of SQL statements, INSERT, UPDATE, DELETE, DROP, etc, mysql_query() returns TRUE on success or FALSE on error. mysql_query() will also fail and return FALSE if the user does not have permission to access the table(s) referenced by the query. mysql_fetch_array http://forum.imasters.com.br/public/style_emoticons/default/seta.gif http://br2.php.net/manual/en/function.mysql-fetch-array.php Returns an array of strings that corresponds to the fetched row, or FALSE if there are no more rows. Como as funções mysql_query e mysql_fetch_array retornam um false em caso de falha, a comparação !== false é correta. ;) Compartilhar este post Link para o post Compartilhar em outros sites
Williams Duarte 431 Denunciar post Postado Janeiro 26, 2010 Valeu fera você esta certo, em outro forum quando fiquei com essa dúvida me responderam completamente diferente. Não me disseram sobre a comparação literal, sem CAST: Valeu http://forum.imasters.com.br/public/style_emoticons/default/joia.gif Compartilhar este post Link para o post Compartilhar em outros sites