Ir para conteúdo
Fórum Script Brasil

marceloths

Membros
  • Total de itens

    72
  • Registro em

  • Última visita

Tudo que marceloths postou

  1. Estou com sério problema com a data a qual não consigo resolver. Tenho um formulário com um campo data que quando é enviado o formulário para banco de dados é feito antes uma checagem de datas através de código abaixo: $datarealizacao =$_POST['data']; $dataseparada = explode("/", $datarealizacao); if (checkdate($dataseparada[1], $dataseparada[0], $dataseparada[2])==true){ $datarealizacao = $dataseparada[2] . "-" . $dataseparada[1] . "-" . $dataseparada[0]; } else { header('Location: admin-anivers-add.php?msg=datarealizacao-invalida'); break; } Quando eu digito no formulário por exemplo 15/02/2008 não ocorre nenhum erro. Quando eu digito no formulário por exemplo 12/22/2008 não ocorre erro, mas avisa que a data está inválida. Tudo bem, a função checkdate funciona. Quando eu digito no formulário por exemplo aaaaaaaaa ou qualquer outro texto ou número não equivalente a uma data ocorre um erro no PHP e não sei como corrigir esse problema. Estou tentando quebrar a cabeça, mas não consigo. Se puder me ajudar ficarei muito grato. Atenciosamente, Marcelo.
  2. ESerra, Descobri, qual foi meu erro, havia digitado $_FILE['arquivo'] , na verdade o correto seria $_FILES['arquivo'] Desculpe pelo transtornos e obrigado pela dica sugerida que me ajudou bastante. Atenciosamente, Marcelo.
  3. Estou com uma dificuldade enorme para desenvolver um script que envie um arquivo para uma pasta e uma descrição para o banco de dados MySQL através de um formulário ao mesmo tempo. Veja o código abaixo: form.php <html> <head> <title>Teste de envio de arquivo e dados ao mesmo tempo</title> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> </head> <body> <form action="" method="post" enctype="multipart/form-data" name="form1"> <p> <input name="descricao" type="text" id="descricao"> <br> <input name="arquivo" type="file" id="arquivo"> <br> <input type="submit" name="Submit" value="envia.php"> </p> </form> </body> </html> envia.php <? $descricao = trim($_POST['descricao']); $arquivofoto = trim($_FILE['arquivo']); echo $descricao .'<br>'. $arquivofoto; ?> Notei que nesse script, notei que o valor do $_FILE['arquivo'] está vazio ou nulo, mesmo se eu colocar $_POST['arquivo'] o valor continua vazio ou nulo. Mas consigo obter normalmente o valor da variável $descricao. Minha dúvida, O PHP trabalha com arquivo e dado através de mesmo form? Se sim, gostaria de receber um exemplo. Atenciosamente, Marcelo
  4. marceloths

    Problema Na Tabela

    boa sacada!! muito obrigado, wagner...
  5. marceloths

    Problema Na Tabela

    Prezado Wagner, O código que me passou funcionou perfeito, só que não entendi a lógica do comando condicional if ( e operador % (módulo) nessa rotina? <? $i = 0; echo '<tr>'; while ($projfoto = mysql_fetch_array($sqlprojfotos)){ echo '<td><div align="center"><img src="projetos/fotos/' . $projfoto['foto'] .'"><br>' . nl2br($projfoto['descricao']) . '</div></td>'; $i++; if(($i%3)==0){ //SE JÁ FOI PREENCHIDA 3 COLUNAS echo "</tr>"; } } ?>
  6. marceloths

    Problema Na Tabela

    Hoje passei o dia inteiro para solucionar esse problema que aparentemente parece simples, mas não é. Estou tentando montar um sistema de álbum de fotos com a tabela que exibe 7 fotos no total sendo que as 4 fotos na primeira linha e 3 fotos na segunda linha, mas isso não vem acontecendo de jeito nenhum, a única coisa que consegui foi deixar 7 fotos na mesma linha (como no exemplo abaixo) e então deixar cada foto por linha. Já usei o comando for(){}, mesmo assim, nada de resultado satisfeito. <? echo '<tr>'; while ($projfoto = mysql_fetch_array($sqlprojfotos)){ echo '<td><div align="center"><img src="projetos/fotos/' . $projfoto['foto'] .'"><br>' . nl2br($projfoto['descricao']) . '</div></td>'; } echo '</tr>'; ?> Desde já agradeço por sua atenção e sua ajuda. Marcelo.
  7. Estou com um problema ao testar um e-mail com servidor XAMMP (PHP + MySQL + Apache) no meu micro. O XAMMP tem suporte para a função mail() para mim testar o e-mail? mas sempre retorna o seguinte erro Warning: mail() [function.mail]: SMTP server response: 550 5.7.1 Unable to relay for marceloths@hotmail.com in C:\xampp\htdocs\brgames\verifica.php on line 211 Ocorreu um erro <? $nome = 'fulano de tal'; $email = 'speedy@speedy.com.br'; $observacao = 'nenhuma'; $planodef = 'Plano 1'; $destino = 'marceloths@hotmail.com'; $assunto = 'Anunciar - ' . $planodef; $mensagem = "$nome<br>$email<br>Plano Escolhido: $planodef<br>$observacao"; if (mail($destino, $assunto, $mensagem, "From: $email")){ echo 'Seu e-mail foi enviado com sucesso.'; } else { echo 'Ocorreu um erro'; } ?> Atenciosamente, Marcelo.
  8. Obrigado mais uma vez, ESerra... você me ajudou mais uma vez... Só para finalizar minha dúvida, esse é jeito mais utilizado de puxar o dados de banco de dados através do comando condicional (if else)? sinto que a maneira que foi citado não é muito utilizado. Testei o código abaixo, mas está ocorrendo uma mensagem de erro: Warning: mysql_num_rows(): supplied argument is not a valid MySQL result resource in C:\xampp\htdocs\brgames\verifica.php on line 47 # Valida o IP, data e cookie $sqlverifica = "SELECT * FROM pubnoticias WHERE ip=$ipcapturado and data=$datatual"; if (mysql_num_rows($sqlverifica) == 0){ #linha com problema $recuperacookie = $HTTP_COOKIE_VARS["acessado"]; if ($recuperacookie == ''){ setcookie('acessado', 'sim', time()+7200); $sql = "Insert Into pubnoticias (ip, data, hora, titulo, autor, conteudo) Values ('$ipcapturado', '$dataatual', '$horaatual', '$titulo', '$autoria', '$conteudo')"; $sqladicionar = mysql_query($sql, $conexao); echo "adicionado com sucesso"; #header("Location: participar.php?cat=$categoria&erro-sucesso"); break; } else { echo "dado já adicionado"; #header("Location: participar.php?cat=$categoria&erro=naopermitido"); break; } } Sinceramente, não sei o porque está dando o erro nessa linha que aparentemente está tudo certo. Atenciosamente, Marcelo
  9. A função mysql_num_rows() só serve para exibir a quantidade de registro na tabela selecionada. Acho que não serviria para meu caso. Gostaria de um exemplo caso sirva a utilização do mysql_num_rows() no código acima. Sou programador ASP, estou começando agora em PHP e estou com algumas dificuldades. Bom, em ASP eu utilizava o RSTabela.EOF para verificar que tinha ou não o IP Capturado na data atual. Percebi que em PHP não tem EOF (End Of File). Só gostaria de um exemplo para solucionar problema no meu caso.
  10. <? include 'conexao.inc'; $dataatual = date('Y/m/d'); $horaatual = date('H:i'); $ipcapturado = $HTTP_SERVER_VARS['REMOTE_ADDR']; $acao = $_GET['action']; switch ($acao){ case 'partic-noticia': $categoria = '1'; $titulo = $_POST['camp1']; $autoria = $_POST['camp2']; $conteudo = $_POST['camp3']; # Regra de validação de formulário if ($titulo==''){ header("Location: participar.php?cat=$categoria&erro=tit-nulo"); break; } if (strlen($titulo)<5){ header("Location: participar.php?cat=$categoria&erro=tit-menor"); break; } if (strlen($titulo)>40){ header("Location: participar.php?cat=$categoria&erro=tit-maior"); break; } if ($autoria==''){ header("Location: participar.php?cat=$categoria&erro=aut-nulo"); break; } if (strlen($autoria)<3){ header("Location: participar.php?cat=$categoria&erro=aut-menor"); break; } if (strlen($autoria)>25){ header("Location: participar.php?cat=$categoria&erro=aut-maior"); break; } if ($conteudo==''){ header("Location: participar.php?cat=$categoria&erro=cont-nulo"); break; } # Valida o IP, data e cookie $sql = "SELECT ip, data FROM pubnoticias WHERE ip=$ipcapturado and data=$datatual"; $sqlverifica = mysql_query($sql, $conexao); # Se não for encontrado IP Capturado e data atual no banco de dados então $recuperacookie = $HTTP_COOKIE_VARS["acessado"]; if ($recuperacookie == ''){ setcookie('acessado', 'sim', time()+7200); $sql = "Insert Into pubnoticias (ip, data, hora, titulo, autor, conteudo) Values ('$ipcapturado', '$dataatual', '$horaatual', '$titulo', '$autoria', '$conteudo')"; $sqladicionar = mysql_query($sql, $conexao); echo 'A notícia foi adicionada com sucesso'; break; /* senão imprime na tela uma mensagem Só é permitido adicionar uma notícia por dia. else echo "Só é permitido adicionar uma notícia por dia." } */ } break; case 'partic-traducao': echo 'traducao'; break; case 'verif-usuario': echo 'usuario'; break; } echo $ipcapturado; ?> Na linha "# Se não for encontrado IP Capturado e data atual no banco de dados então" não sei como utilizar o comando condicional if para puxar o valor do banco de dados e verificar se há ou não um registro com ip capturado e data atual no banco dados. Desde já agradeço por sua atenção. Marcelo.
  11. Prezado ESerra, Deu certo a sua ajuda Acabei descobrindo mais coisa interessante com a função header no endereço abaixo: http://www.php.net/manual/pt_BR/function.header.php Obrigado pela ajuda... Atenciosamente, Marcelo.
  12. Desenvolvi esse seguinte código abaixo que ainda não está completo, mas dá pra entender o funcionamento dele. <? $acao = $_GET['action']; switch ($acao){ case 'partic-noticia': $categoria = '1'; $dataatual = date('d/m/Y'); $horaatual = date('H:i'); $titulo = $_POST['camp1']; $autoria = $_POST['camp2']; $conteudo = $_POST['camp3']; if (is_null($titulo) || $titulo==''){ # redireciona a pagina index.php?erro=titulo-nulo } break; case 'partic-traducao': echo 'traducao'; break; case 'verif-usuario': echo 'usuario'; break; } ?> A minha dúvida é como redirecionar para outra página através do PHP, pois em ASP apenas usava o comando Response.redirect "default.asp?erro=titulo-nulo" para redirecionar para uma outra pagina caso o titulo for nulo ou vazio. Pelo que eu pesquisei no fórum, acho que não existe um comando que faça a mesma funcionalidade que do ASP. Atencionsamente, Marcelo.
  13. Pessoal, Estou com uma dúvida cruel sobre o cálculo com a data, estou tentando elaborar uma rotina que calcula o dia entre as duas datas e se o resultado for menor que 30 dias exibirá uma imagem chamado item novo. Ex: $datalancamento = $resultado['datalancamento']; # vamos supor que a variavel datalancamento seja 05/22/2007 $partes = explode('-', $datalancamento); $datachecada = checkdate($partes[1], $partes[2], $partes[0]); $dataatual = date('m/d/Y'); A partir daí empaquei de vez, tentei colocar o seguinte código $dataresultado = gmdate($dataatual - $datachecada); echo $dataresultado; Pena que no PHP não existe função Day() ou Dateiff. Preciso muito de sua ajuda... Aguardo anciosamente por uma resposta... Grato.
  14. Consegui fazer o servidor "LER" o PHP com a versão mais antiga do Apache 2.0.55, mas na versão 2.2.2, não carrega a linha LoadModule Php5_module de jeito nenhum. porque será?? Grato, Marcelo.
  15. infelizmente, o php5ts.dll já estava copiado no diretório system32 do Windows XP... vou tentar instalar uma versão um pouco mais antiga do apache, pois a minha versão do apache é 2.2.2 obrigado pela atenção.
  16. Eu já adicionei as seguintes linhas no arquivo httpd.conf do Apache 2.2 AddType application/x-httpd-php .php LoadModule php5_module "c:/php/php5apache2.dll" Mas quando restart no servidor apache ocorre o seguinte erro The requested operation has failed! Resolvi buscar em qual linha está dando o problema, descobri que a linha LoadModule php5_module "c:/php/php5apache2.dll" pois eu havia comentada essa linha que ficou assim #LoadModule php5_module "c:/php/php5apache2.dll" o servidor apache volta a funcionar... porém verifiquei se o arquivo php5apache2.dll realmente existe no diretório C:\PHP, mas existe.... Agora não sei como solucionar esse problema, só sei que o problema está na linha LoadModule php5_module "c:/php/php5apache2.dll" Alguém poderia me ajudar Grato, Marcelo.
  17. obrigado pela resposta... vou utilizar o index.php :)
  18. Pessoal, tenho uma dúvida... Qual o nome do arquivo devo utilizar para indicar a página principal em PHP?? Seria index.php ou default.php?? Desde já agradeço por sua atenção. Marcelo
  19. mestre fyoda, Realmente nunca devemos utilizar o metodo get $_GET["nome"] para autentificação do usuário, nesse caso utilizamos o metodo session ou post. Grato, Marcelo...
  20. É verdade, aprendi que não deveremos ativar register_globals para ON, pois há um risco muito grande de segurança. Agora aprendi usar um comando $_GET["nome"] para puxar dados do parametro na URL. Ex. teste.php?nome=Marcelo Eu descobri isso lendo um livro de PHP, mas aqui no forum ninguém falou da existencia desse comando $_GET["var"], claro sou iniciante em PHP, mas expert em ASP, decidi migrar para PHP para adquirir maiores conhecimentos sobre essa linguagem que domina o planeta... Para quem é iniciante e não sabe como utilizar o comando $_GET[], segue um exemplo abaixo: teste.php?nome=Marcelo <? # recupera na variavel meunome o valor do parametro nome da URL teste.php?nome=Marcelo $meunome = $_GET["nome"]; #imprime o valor da variavel meunome echo $meunome; ?> Simples de usar e bastante útil... valeu!!
  21. já descobri o problema, o código estava correto, o problema estava no arquivo php.ini onde alterar a linha register_globals = off para register_globals = on Só não entendi porque essa essa opção é desligada por padrão por causa de segurança. Há realmente perigo de alguém explorar a falha através deste recurso ativado??? Abraços, Jackal
  22. Sou iniciante em PHP, estou lendo uma apostila do Mauricio Vivas, estou na parte que ensina a recuperar as strings passadas pela URL do navegador http://127.0.0.1/meusite/string.php?nome=M...sobrenome=Netto arquivo string.php <? /* coloque na URL o seguinte endereço http://127.0.0.1/meusite/string.php?nome=Marcelo&sobrenome=Netto as variaveis nome e sobrenome serão recuperadas automaticamente devido ao informação nos parametros na URL que deverão serem iguais das variaveis. */ echo "<h1>Nome: " . $nome ."<br>Sobrenome: " . $sobrenome . "</h1>"; ?> Mas as variaveis $nome e $sobrenome ficaram nulas. porque isso está acontecendo, será que estou errando em algumas coisas... Desde já agradeço por sua atenção. Abraços
×
×
  • Criar Novo...