Ir para conteúdo
Fórum Script Brasil
  • 0

To Quase Conseguindo, Mas Usar @


dnfeitosa

Pergunta

bom pessoal, consegui arrumar uma solução para o meu problema mas agora surgiu outro:

$editFormAction = $HTTP_SERVER_VARS['PHP_SELF'];
if (isset($HTTP_SERVER_VARS['QUERY_STRING'])) {
  $editFormAction .= "?" . $HTTP_SERVER_VARS['QUERY_STRING'];
}

@$data = $HTTP_POST_VARS['hora'];

if (ereg ("([0-9]{1,2})/([0-9]{1,2})/([0-9]{4})", $data, $regi)) {
$databd = "$regi[3]-$regi[2]-$regi[1]";
}

if ((isset($HTTP_POST_VARS["MM_insert"])) && ($HTTP_POST_VARS["MM_insert"] == "form1")) {
  $insertSQL = sprintf("INSERT INTO teste (id, hora) VALUES (%s, '$databd')",
                       GetSQLValueString($HTTP_POST_VARS['id'], "int"),
                       GetSQLValueString($data, "int"));

esse script ai faz o seguinte:

- Recebe um dado a partir de um campo de texto com formato de data no padrão brasileiro (dd/mm/aaaa), sendo que você pode inserir qualquer valor de data;

- Converte a data do padrão brasileiro para o americano (yyyy-mm-dd); e

- Grava no banco de dados a data (yyyy-mm-dd)

Isso tudo sem mostrar ao usuario o processo de conversão; ele ocorre internamente... Ate ai tudo bem o script ta funcionando normal...

So que, ele me retorna um erro de variavel não definida na linha 33, que é a linha que tem o @ pra ocultar esse erro...

alguém pode analisar esse script e ver se tem alguma forma de usar uma logica mais correta que funcione, e em que eu não precise usar o @?? biggrin.gif

valeu!!!

Link para o comentário
Compartilhar em outros sites

1 resposta a esta questão

Posts Recomendados

  • 0

pra validar datas tem uma função propria do php checkdate()

e use $_POST no lugar do que você ta usando

e não use o @ pra esconder erros use isset() pra fazer uma verificação se foi enviado os dados

e pra converter de BR pra EUA e vise versa:

function converte_data($data){

if (strstr($data, "/")){//verifica se tem a barra /

  $d = explode ("/", $data);//tira a barra

  $invert_data = "$d[2]-$d[1]-$d[0]";

  return $invert_data;

}

elseif(strstr($data, "-")){

  $d = explode ("-", $data);

  $invert_data = "$d[2]/$d[1]/$d[0]";

  return $invert_data;

}

else{

  return "Data invalida";

  }

}

Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,3k
    • Posts
      652,6k
×
×
  • Criar Novo...