Jump to content


Photo

Formuláro Com Foto


  • Faça o login para participar
2 replies to this topic

#1 jcmixsp

jcmixsp

    Novato no fórum

  • Usuários
  • 1 posts
  • Sexo:Masculino
  • Localidade:São Paulo, sp-Zona Norte

Posted 08/02/2008, 21:05

Fala ai Galera, sou novato aqui, mas, este site já me ajudou muito. Mas agora estou tentando buscar algo novo...Criei um formulário e gostaria de saber como faço para enviar fotos juntamente com os dados. Ou seja, quando a pesso aenviar o formulário prenchido, tem opções de enviar fotos.
Eu criei no meu site um banco de dados, as pessoas envia o forme e é redirecionados para o opload, mas fica complicado para identificar as fotos.
Este é o formulário http://www.jcmix.com.br/cadastro.htm e este é o upload http://www.clubdogol...loads/index.php
Agradeço desde já se alguém me ajudar...
Um abraço ;)

#2 Andreia Regina

Andreia Regina

    Veterano

  • Conselheiros
  • 1347 posts
  • Sexo:Feminino
  • Localidade:PR
  • Interesses:PHP; MySQL; Javascript; CSS; tudo ligado ao desenvolvimento web.

Posted 11/02/2008, 08:57

Movendo de Banco de Scripts PHP para PHP

Os dados no form são gravados no banco? se sim você pode utilizar o id da pessoa e incluir no nome das imagens.

Fórum WMO - Conselheira - Na equipe desde 31/01/2006.
Links importantes: Regras de conduta - Busca do fórum


#3 Adrielso P. Teodoro

Adrielso P. Teodoro

    Novato no fórum

  • Usuários
  • 24 posts
  • Sexo:Masculino
  • Localidade:Campinas/SP
  • Interesses:PHP, Hardware, HTML, CSS e XML

Posted 11/02/2008, 10:38

Olá,

Tenho um script que fiz na empresa onde trabalho que pode lhe ajuda. Totalmente em PHP.

Primeiro vamos ao FORM.

form.html

----------------------------------------------------------------------------------------------------------------------------------------------
<html>
<body>
	<h1>Formulário de Cadastro</h1>
		<br>
		<p align="center"> Preencha os dados no formulário abaixo. </p><br>

		<h3>Formulário de Cadastro</h3>
		<form action="envia.php" method="POST" enctype="multipart/form-data">
		<p align="center">Preencha todos os campos abaixo.</p>
		<p align="center"><table align="center" width="40%" cellspacing="5" cellpadding="0"></p>
<tr>
	<td><h6>Empresa:</h6></td>
	<td><h6><input type="text" name="empresa" title="Digite aqui o  nome da Empresa" size="35"> </h6></td>
</tr>
<tr>
	<td><h6>Contato:</h6></td>
	<td><h6><input type="text" name="contato" title="Digite aqui o nome do Contato" size="35"></h6></td>
</tr>
<tr>
	<td><h6>Telefone:</h6></td>
	<td><h6><input type="text" name="dd" title="Digite aqui o DD da cidade" maxlength="3" size="3"> <input type="text" name="telefone" title="Digite aqui o Telefone" size="12" maxlength="9"></h6></td>
</tr>
<tr>
	<td><h6>Email:</h6></td>
	<td><h6><input type="text" name="email" title="Digite aqui o E-mail" size="30"></h6></td>
</tr>
<tr>
	<td><h6>Arquivo:</h6></td>
	<td><h6><input type="file" name="file"></h6></td>
</tr>
</table>

	<center><input type="submit" name="Enviar" class="button" value="Enviar" title="Clique aqui para efetuar o cadastro"></center>
<br>
</form>
</body>
</html>

---------------------------------------------------------------------------------------------------------------------------------------

envia.php

---------------------------------------------------------------------------------------------------------------------------------------

<html>
<body>
<?
//Descobre alguns dados do cliente.
$ip = $_SERVER["REMOTE_ADDR"]; //Pegando a ip do usuário que está preenchendo o formulário
$datetime = date("Y-m-d h:i:s"); //Pegando a data e hora do servidor.
//Fim.
//Verificação dos Campos
if (strlen($empresa) < 5) //Verifica se o campo empresa é menor que 5 se verdadeiro manda mensagem na tela.
{ echo "Nome da empresa deve ser maior que 5"; }
elseif (strlen($contato) < 5) //Verifica se o compo contato é menor que 5 se verdadeiro manda mensagem na tela.
{ echo "Nome de Contato deve ser maior que 5"; }
elseif (strlen($telefone) < 7) //Verifica se o campo telefone está correto maior que 7 numeros. Se não manda msg na tela.
{ echo "Digite o DDD e o numero de telefone corretamente"; }
elseif (strlen($email)<8 || strstr ($email, '@')==FALSE) //Veirifica se o emial está correto se não manda msg na tela.
{ echo "Digite o e-mail corretamente"; }
elseif (EMPTY($file))
{ echo "O Anexo do arquivo é obrigatório!"; }
else
{
$comptel = "($dd) $telefone"; //Juntando o DDD e numero de telefone!

//Enviando arquivo para upload.
$destino = "./doc"; //Pasta onde serão armazenados os uploads. Você pode alterar no seu caso para "./fotos" ou outro qualquer!

$file_name = "$contato"."$file_name"; //Aqui altero nome do Arquivo no caso concateno nome do contato com nome do arquivo para saber de quem é o arquivo no seu caso você pode colocar somente nome da pessoa ou somente a ID da pessoa.

$mandar = $destino."/".$file_name;

if(!move_uploaded_file($file, $mandar)) {
   echo "O arquivo não pode ser enviado!";
}
else { //Se o arquivo foi enviado manda a msg na tela.
   echo "O arquivo foi enviado!";
}


//Conexão Banco de Dados!!
$conexao = mysql_connect('localhost','seu usuario','sua senha'); //Conexão com Banco de Dados
$bd = mysql_select_db(cadastro); //Banco de dados desejado para armazenar informações.

$SQL = mysql_query("INSERT INTO cadastro (Empresa, Contato, Telefone, Email, IP, Retirou) VALUES ('$empresa','$contato','$comptel','$email','$ip','$datetime')"); //Inserindo os valores resgatados no banco de dados.

mysql_close($conexao);
//Fim da conexão Banco de Dados!!

//Elaboração da Mensagem de confirmação de cadastro.
$boundary = strtotime('NOW');

$headers = "From: Seu nome <seunome@seuprovedor.com.br>\n";
$headers .= "MIME-Version: 1.0\n";
$headers .= "Content-Type: multipart/mixed; boundary=\"" . $boundary . "\"\n";

$msg = "--" . $boundary . "\n";
$msg .= "Content-Type: text/plain; charset=\"iso-8859-1\"\n";
$msg .= "Content-Transfer-Encoding: quoted-printable\n\n";

$msg .= "$empresa

$contato,


Seu nome/Empresa, agradece seu cadastro no site.


Solicitado em: $datetime.


Atenciosamente,

Seu nome \n
Sua empresa \n
Endereço \n
E-mail: seunome@seuprovedor.com.br \n";

mail("$email", "Cadastro Efetuado com Sucesso", $msg, $headers); //Envia a mensagem de confirmação de cadastro para a pessoa que se cadastrou.
echo "Cadastro Efetuado com Sucesso"; //Mensagem para o usuário que o cadasto foi concluído com suscesso.
}
/**
 * @author Adrielso P. Teodoro
 * @copyright 2007
 */

?>
</body>
</html>
---------------------------------------------------------------------------------------------------------------------------------------------

Então, sei que no seu caso você precisa enviar 8 arquivos de fotos nesse caso você pode usar um laço de repetição (FOR, WHILE). O que achar melhor. Se não conseguir poste a mensagem aqui no fórum, pra tentarmos lhe ajudar. Todos os campos digitados no FORM são validados no envia.php, para que todas informações sejam preenchidas. Lembrando que a função de upload de aquivos suporta arquivos de até 2 MB. Se quiser alterar o tamanho tem que acessar o .ini do PHP e alterar o valor para o tamanho necessário.

Ok??? T+++ :rolleyes:

Edição feita por: Andreia Regina, 11/02/2008, 14:19.
Qdo incluir código, script utilizar a tag code

Adrielso Pinto Teodoro
Suporte Técnico

-- Sistema Operacional: Windows XP - Service Pack 3
-- Navegador: Mozilla Firefox 3.0




1 user(s) are reading this topic

0 membro(s), 1 visitante(s) e 0 membros anônimo(s)

IPB Skin By Virteq