Jump to content
Sign in to follow this  
dio123

upload imagem

Recommended Posts

dio123

Boa tarde,

Estou aqui a fazer uma alteração num site, e é suposto o dono fazer upload de uma imagem para a pasta que está na raiz do site.

Na net descobri este site: http://www.w3schools.com/php/php_file_upload.asp

Fiz as alterações mas no entanto a imagem nao aparece no servidor.

Recebo esta informação.

O que estou a fazer mal? já dei permissoes leitura e escrita 777 e continua igual.

desde já agradeço

Upload: test.jpg

Type: image/jpeg

Size: 57.654296875 kB

Temp file: /tmp/phpe0AQU9

Stored in: upload/test.jpg

Share this post


Link to post
Share on other sites
HappyHippyHippo

tens duas soluções

- lês numa das mensagens que te aparecem o que está a acontecer

- lês o código que grava o ficheiro e vês o que está a acontecer.

fizeste copy-paste do exemplo e nem te deste ao trabalho de perceber o que está a acontecer, mas pior que isso, é que nem leste as mensagens apresentadas que fizeste post.


IRC : sim, é algo que ainda existe >> #p@p

Share this post


Link to post
Share on other sites
dio123

é a primeira vez que estou a mexer em php. E queria por um exemplo a trabalhar para depois começar a explorar.

Que mensagens está a referir, que devia ter lido e que nem as ser vejo ? Estou a usar dreamweaver

O codigo que estou a usar é:

<?php
$allowedExts = array("gif", "jpeg", "jpg", "png");
$temp = explode(".", $_FILES["file"]["name"]);
$extension = end($temp);
if ((($_FILES["file"]["type"] == "image/gif")
|| ($_FILES["file"]["type"] == "image/jpeg")
|| ($_FILES["file"]["type"] == "image/jpg")
|| ($_FILES["file"]["type"] == "image/pjpeg")
|| ($_FILES["file"]["type"] == "image/x-png")
|| ($_FILES["file"]["type"] == "image/png"))
&& ($_FILES["file"]["size"] < 20000)
&& in_array($extension, $allowedExts))
{
if ($_FILES["file"]["error"] > 0)
{
echo "Return Code: " . $_FILES["file"]["error"] . "<br>";
}
else
{
echo "Upload: " . $_FILES["file"]["name"] . "<br>";
echo "Type: " . $_FILES["file"]["type"] . "<br>";
echo "Size: " . ($_FILES["file"]["size"] / 1024) . " kB<br>";
echo "Temp file: " . $_FILES["file"]["tmp_name"] . "<br>";
if (file_exists("upload/" . $_FILES["file"]["name"]))
 {
 echo $_FILES["file"]["name"] . " already exists. ";
 }
else
 {
 move_uploaded_file($_FILES["file"]["tmp_name"],
 "upload/" . $_FILES["file"]["name"]);
 echo "Stored in: " . "upload/" . $_FILES["file"]["name"];
 }
}
}
else
{
echo "Invalid file";
}
?>

Edited by yoda

Share this post


Link to post
Share on other sites
HappyHippyHippo

Upload: test.jpg

Type: image/jpeg

Size: 57.654296875 kB

Temp file: /tmp/phpe0AQU9

Stored in: upload/test.jpg


IRC : sim, é algo que ainda existe >> #p@p

Share this post


Link to post
Share on other sites
dio123

Boa noite,

Apaguei os ficheiros e voltei a por e já funcionou bem.

No entanto estou a seguir o tutorial do forum sobre sistema login php Mysql, mas estou com um erro.

Warning: session_start() [function.session-start]: Cannot send session cookie - headers already sent by (output started at /home/oficina6/public_html/sitefinal/protegido.php:9) in/home/oficina6/public_html/sitefinal/verificarLogin.php on line

No entanto andei no google e fiz as alterações, mas nenhuma funcionou. Será o que ?

Desde já agradeço

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<title>Untitled Document</title>
</head>
<body>
<?php
session_start();

if (empty($_SESSION['id'])) {

// não existe sessão iniciada
// neste caso, levamos o utilizador para a página de login
header('Location:login.php');
exit();
}
?>
</body>
</html>

Edited by dio123

Share this post


Link to post
Share on other sites
HappyHippyHippo

podes apresentar o link para o tutorial que andas a seguir ?


IRC : sim, é algo que ainda existe >> #p@p

Share this post


Link to post
Share on other sites
dio123

o tutorial que estou a seguir é este:http://wiki.portugal-a-programar.pt/dev_web:php:criar_login_basico

Share this post


Link to post
Share on other sites
HappyHippyHippo

no tutorial apresentado não estou a ver nenhuma entrada que tenha o aspecto da página que apresentaste

olha bem para i que tem na wiki:

<?php
// iniciar uma sessão
session_start();

if (empty($_SESSION['id'])) {

// não existe sessão iniciada
// neste caso, levamos o utilizador para a página de login
header('Location: login.php');
exit();
}
?>

agora olha para o que tens :

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<title>Untitled Document</title>
</head>
<body>
<?php
session_start();

if (empty($_SESSION['id'])) {

// não existe sessão iniciada
// neste caso, levamos o utilizador para a página de login
header('Location:login.php');
exit();
}
?>
</body>
</html>

quais são as diferenças ?


IRC : sim, é algo que ainda existe >> #p@p

Share this post


Link to post
Share on other sites
dio123

Boa tarde,

Desde já agradeço pela ajuda.

Já tenho tudo a funcionar, faço login envio as imagens, logout.

No entanto cria saber se dá para facilitar no seguinte.

em vez de ter de abrir www.site.com/login.php colocar www.site.com/login e automaticamente abrir login.php

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
Sign in to follow this  

×
×
  • Create New...

Important Information

By using this site you accept our Terms of Use and Privacy Policy. We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.