/    Sign up×
Community /Pin to ProfileBookmark

uploading problem

hi all,

im uploading some pictures to server, the uploading works just fine but when trying to access the picture for displaying, it show a different path, i’ll paste my script below

[code=php]$now = time();
while(file_exists($uploadFilename = $uploadsDirectory.$now.’-‘.$_FILES[$fieldname][‘name’]))
{
$now++;
}

// now let’s move the file to its final and allocate it with the new filename
@move_uploaded_file($_FILES[$fieldname][‘tmp_name’], $uploadFilename)
or error(‘receiving directory insuffiecient permission’, $uploadForm);

// changing the permissions of the picture to be able to view it
chmod($uploadFilename,0777);

// after successfully uploading the pictures without any errors its time now to update the database
$username = $_SESSION[“logged”];
$image_path = $uploadFilename;
add_photo($username,$image_path);[/code]

when i add the path to the table in the database i get the path like this

[B][url]http://starkwi.com/hsphere/local/home/SOMEUSERNAME/starkwi.com/noorbiz/hotornot/uploaded_files/1160857638-cool_glasses.jpg[/url][/B]

where it should be like this

[B][url]http://starkwi.com/noorbiz/hotornot/uploaded_files/1160857638-cool_glasses.jpg[/url]
[/B]

any idea why is this happeneing,

thank u for anyhelp

to post a comment
PHP

6 Comments(s)

Copy linkTweet thisAlerts:
@nooor83authorOct 16.2006 — help please ?
Copy linkTweet thisAlerts:
@aussie_girlOct 16.2006 — where's the rest of your code? your dirctory path, what path are you putting in your database?
Copy linkTweet thisAlerts:
@nooor83authorOct 16.2006 — this is the full .php script

[code=php]<?php

require_once("./include/functions2.php");

session_start();

check_valid_user();

// filename: upload.processor.php

// this source code was taken from webdeveloper.com

// first let's set some variables



// make a note of the current working directory, relative to root.

$directory_self = str_replace(basename($_SERVER['PHP_SELF']), '', $_SERVER['PHP_SELF']);



// make a note of the directory that will recieve the uploaded files

$uploadsDirectory = $_SERVER['DOCUMENT_ROOT'] . $directory_self . 'uploaded_files/';



// make a note of the location of the upload form in case we need it

$uploadForm = 'http://' . $_SERVER['HTTP_HOST'] . $directory_self . 'upload.form.php';



// make a note of the location of the success page

$uploadSuccess = 'http://' . $_SERVER['HTTP_HOST'] . $directory_self . 'cp.php?action=edit_photos&PHPSESSID=' . session_id();



// name of the fieldname used for the file in the HTML form

$fieldname = 'file';







// Now let's deal with the upload



// possible PHP upload errors

$errors = array(1 => 'php.ini max file size exceeded',

2 => 'html form max file size exceeded',

3 => 'file upload was only partial',

4 => 'no file was attached');



// check the upload form was actually submitted else print form

isset($_POST['submit'])

or error('the upload form is neaded', $uploadForm);



// check for standard uploading errors

($_FILES[$fieldname]['error'] == 0)

or error($errors[$_FILES[$fieldname]['error']], $uploadForm);



// check that the file we are working on really was an HTTP upload

@is_uploaded_file($_FILES[$fieldname]['tmp_name'])

or error('not an HTTP upload', $uploadForm);



// validation... since this is an image upload script we

// should run a check to make sure the upload is an image

@getimagesize($_FILES[$fieldname]['tmp_name'])

or error('only image uploads are allowed', $uploadForm);



//checks if the the image is not in a .fig format (Added By Me)



$name = $uploadsDirectory.$now.'-'.$_FILES[$fieldname]['name'];

$system=explode('.',$name);

if (preg_match('/gif/',$system[1])){

error('you can upload only jpg or png images',$uploadForm);

}





// make a unique filename for the uploaded file and check it is

// not taken... if it is keep trying until we find a vacant one

$now = time();

while(file_exists($uploadFilename = $uploadsDirectory.$now.'-'.$_FILES[$fieldname]['name']))

{

$now++;

}



// now let's move the file to its final and allocate it with the new filename

@move_uploaded_file($_FILES[$fieldname]['tmp_name'], $uploadFilename)

or error('receiving directory insuffiecient permission', $uploadForm);



// changing the permissions of the picture to be able to view it

chmod($uploadFilename,0777);



// after successfully uploading the pictures without any errors its time now to update the database

$username = $_SESSION["logged"];

$image_path = $uploadFilename;

add_photo($username,$image_path);





// If you got this far, everything has worked and the file has been successfully saved.

// We are now going to redirect the client to the success page.

header('Location: ' . $uploadSuccess);



// make an error handler which will be used if the upload fails

function error($error, $location, $seconds = 5)

{

header("Refresh: $seconds; URL="cp.php?action=edit_photos"");

echo '<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"'."n".

'"http://www.w3.org/TR/html4/strict.dtd">'."nn".

'<html lang="en">'."n".

' <head>'."n".

' <meta http-equiv="content-type" content="text/html; charset=iso-8859-1">'."nn".

' <link rel="stylesheet" type="text/css" href="stylesheet.css">'."nn".

' <title>Upload error</title>'."nn".

' </head>'."nn".

' <body>'."nn".

' <div id="Upload">'."nn".

' <h1>Upload failure</h1>'."nn".

' <p>An error has occured: '."nn".

' <span class="red">' . $error . '...</span>'."nn".

' The upload form is reloading</p>'."nn".

' </div>'."nn".

'</html>';

exit;

} // end error handler



?>[/code]
Copy linkTweet thisAlerts:
@aussie_girlOct 16.2006 — well this doesn't seem to be doing anything with your database, so what path are you putting in your database?
Copy linkTweet thisAlerts:
@nooor83authorOct 16.2006 — im calling the function add_photo() from another file

[code=php]function add_photo($username,$image_path)
{
$cnn = db_connect();
$sql_add_photo = "insert into images values(NULL,'$username','$image_path')";
mysql_query($sql_add_photo) or die(mysql_error());
}[/code]
Copy linkTweet thisAlerts:
@aussie_girlOct 16.2006 — your getting your internal pathway...debug with echo statements

echo $directory_self;

echo $uploadsDirectory;
×

Success!

Help @nooor83 spread the word by sharing this article on Twitter...

Tweet This
Sign in
Forgot password?
Sign in with TwitchSign in with GithubCreate Account
about: ({
version: 0.1.9 BETA 6.16,
whats_new: community page,
up_next: more Davinci•003 tasks,
coming_soon: events calendar,
social: @webDeveloperHQ
});

legal: ({
terms: of use,
privacy: policy
});
changelog: (
version: 0.1.9,
notes: added community page

version: 0.1.8,
notes: added Davinci•003

version: 0.1.7,
notes: upvote answers to bounties

version: 0.1.6,
notes: article editor refresh
)...
recent_tips: (
tipper: @nearjob,
tipped: article
amount: 1000 SATS,

tipper: @meenaratha,
tipped: article
amount: 1000 SATS,

tipper: @meenaratha,
tipped: article
amount: 1000 SATS,
)...