Jump to content


Photo

Upload De Fotos


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

#1 nogo0d

nogo0d

    Novato no fórum

  • Usuários
  • 5 posts
  • Sexo:Não informado

Posted 27/08/2008, 14:27

Boas...

Estou aqui com um problema com um sistema de upload de fotos....

eu antes de enviar os ficheiros para o servidor testo-os no pc, com um programa chamado wampserver e o código que vou po aqui funciona localmente,

este script é o formulario onde introduzo os dados a enviar...

<?php
session_start("admin");
if($_SESSION["admin"] == "on"){

include("conecta.php");

echo '<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<title>Enviar trabalho</title>
<link href="css.css" rel="stylesheet" type="text/css">
</head>

<body>

<table class="fundo_tabela" align="center" width="800">
  <tr><td>
<div class="header">
	<div class="div_logo"></div>

	<div class="div_header_direita"><a href="logout.php">log out</a></div>

</div>
</td></tr>
<tr><td class="pad">

  <table width="760" border="0" align="center" cellpadding="0" cellspacing="0">
	<tr>
	  <td><a href="lista.php" target="_self"><img src="images/clientes.jpg" width="86" height="40" border="0"></a></td>
	  <td><a href="introduzir.php" target="_self"><img src="images/inserircliente.jpg" width="117" height="40" border="0"></a></td>
	  <td><a href="apagar.php" target="_self"><img src="images/apagarcliente.jpg" width="119" height="40" border="0"></a></td>
	  <td><a href="nov_trab.php" target="_self"><img src="images/enviartrabalho.jpg" width="126" height="40" border="0"></a></td>
	  <td><a href="msgs_lista.php" target="_self"><img src="images/mensagensrecebidas.jpg" width="170" height="40" border="0"></a></td>
	  <td><a href="contactar.php" target="_self"><img src="images/enviarmensagem.jpg" width="142" height="40" border="0"></a></td>
	</tr>
  </table>
 
</td>
</tr>
<tr><td class="pad2">
<div class="div_titulo">enviar trabalho</div>


</td></tr>
<tr><td>
';

$result = mysql_query("SELECT * FROM dados");
echo '<form action="introduzirtrabalho.php" method="post" enctype="multipart/form-data" class="margin_apagar">
  <table>
	  <tr>
		<td width="200">
		  Escolha cliente para enviar: </td>
	  <td>				
	<select name="cliente" class="tamanho_trabalho">';
while($row = mysql_fetch_array($result))
  {
	echo '<option value="' . $row['nome'] . '">' . $row['nome'] . '</option>';
}
mysql_close($con);
echo '</select>
	</td>
	</tr> 
	
	<tr>
		<td width="200">
		  Imagem (80X80):</td>
	  <td><input name="img_pq" type="file" class="tamanho_trabalho" id="img_pq">				
	</td>
	</tr> 
	
	<tr>
		<td width="200">
		  Imagem para visualização:</td>
	  <td><input name="img_gr" type="file" class="tamanho_trabalho" id="img_gr">				
	</td>
	</tr> 
	
		<tr>
		<td width="200">
		  Titulo:</td>
	  <td><input name="titulo" type="text" class="tamanho_trabalho" id="titulo" size="33">				
	</td>
	</tr> 
	
		<tr>
		<td width="200" valign="top">
		  Corpo da mensagem: </td>
	  <td><textarea name="texto" cols="30" rows="5" class="tamanho_trabalho" id="texto"></textarea>			 
	</td>
	</tr> 
	
	<tr><td></td>
	
	<td>
	  <div align="right">
		<input type="image" border="0" name="imageField" src="images/bt2.jpg">
		</div></td>
	</tr>
	
  </table>
</form>';

echo '</td></tr>';

echo '<tr><td><div class="div_footer"></div></td></tr></table>
		</body></html>';


}
else{
echo "<script>location.href='index.php'</script>";
}

?>


este código é o que faz o upload das fotos....

Já olhei para os dois e não consigo ver onde é que está o erro, se alguém me puder ajudar....

<?php
session_start("admin");
if($_SESSION["admin"] == "on"){

include("conecta.php");
$titulo = $_POST['titulo'];
$texto = $_POST['texto'];

$cliente = $_POST['cliente'];
$ficheiro = "trabalhos/" . $cliente;
if(file_exists($ficheiro))
	$cliente = $_POST['cliente'];
	else
	mkdir("trabalhos/" . $cliente, 0755);

$topq = "trabalhos/" . $cliente . "/" . $_FILES['img_pq']['name'];
move_uploaded_file($_FILES['img_pq']['tmp_name'], $topq);
	
$togr = "trabalhos/" . $cliente . "/" . $_FILES['img_gr']['name'];
move_uploaded_file($_FILES['img_gr']['tmp_name'], $togr);


mysql_query("INSERT INTO `area`. `$cliente` (

`id` ,

`img_pq` ,

`img_gr` ,

`titulo` ,

`texto`

)

VALUES (

NULL , '$topq', '$togr', '$titulo', '$texto'

);");

mysql_close($con);


   

	
	
	
	
  echo "<script>location.href='lista.php'</script>";  
  
  
  }
else{
echo "<script>location.href='index.php'</script>";
}
	
?>

ou seja eu não faço o upload das fotos para a base de dados, faço o upload para o servidor e insiro o caminho da imagem na base de dados e ele insere o caminho na base de dados correctamente, com o nome do ficheiro e tudo...

mas não move o ficheiro para o servidor....

se alguém me puder ajudar agradeço... :wacko:

#2 Dudu

Dudu

    Viva la vida

  • Usuários
  • 1437 posts
  • Sexo:Masculino
  • Localidade:Uberlândia - MG
  • Interesses:PHP

Posted 27/08/2008, 15:24

Você deu permissão 777 nos ficheiros e no arquivo introduzirtrabalho.php?
Até mais ^_^

Fórum WMO - Equipe de Desenvolvimento / Banco de Dados - Moderador


Twitter: HostCheap


#3 lwirkk

lwirkk

    Veterano

  • Usuários
  • 1314 posts
  • Sexo:Não informado

Posted 27/08/2008, 16:13

Ou CHMOD na pasta que deseja "gravar" o arquivo... (y)
Se 755 não der, tente 777, há servidores que não aceitam ou ou vice-versa.
Verifique se a pasta "trabalhos" está com um dos chmod acima, se o que Dudu disse, e o que eu disse antes não der, tente mudar o CHMOD desta pasta para 777 ou 755, vice versa...
Posted Image
"Se quiser ser feliz por um dia, vingue-se; se quiser ser feliz por uma vida inteira, perdoe."

Muito Obrigado à todos do fórum, e à toda equipe do fórum! =)

#4 nogo0d

nogo0d

    Novato no fórum

  • Usuários
  • 5 posts
  • Sexo:Não informado

Posted 27/08/2008, 17:15

Ou seja...

quando eu estou a fazer

mkdir("trabalhos/" . $cliente, 0755);

o que vem depois da virgula é o chmod....

tenho que fazer

chmod("trabalhos/" . $cliente, 0777);

ou quando criar a pasta basta fazer logo

mkdir("trabalhos/" . $cliente, 0777);

desculpem tar a chatear-vos com isto...

#5 lwirkk

lwirkk

    Veterano

  • Usuários
  • 1314 posts
  • Sexo:Não informado

Posted 27/08/2008, 18:01

a última opção já basta =)
Se não funcionar, verifique o CHMOD da pasta TRABALHOS...
Posted Image
"Se quiser ser feliz por um dia, vingue-se; se quiser ser feliz por uma vida inteira, perdoe."

Muito Obrigado à todos do fórum, e à toda equipe do fórum! =)




1 user(s) are reading this topic

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

IPB Skin By Virteq