RCS Posted June 5, 2008 Share Posted June 5, 2008 I have created a user interface where use can register for an account and create profile... The issue that I'm having is after use fills out thier profile and tries to upload an image everything works ok but when the script call to display the image nothing is showing up. I have checked to see that the image is being saved to server and database and it shows the name and file size in database and file is on the server in the upload folder, not sure why it will not show up. If someone can help me out with this I would greatly apperciate it very much, thanks in advance. here is some of my code for you to review. This is members page code <?php session_start(); //allows session include "config.php"; echo "<center>"; if(isset($_GET['user'])) { //if there trying to view a profile //gets the user name and makes it safe $username = addslashes($_GET[user]); //querys the db to find the username $getuser = mysql_query("SELECT * FROM `members` WHERE `username` = '$username'"); //checks see if the username exists in the db $usernum = mysql_num_rows($getuser); //if it don't exist if($usernum == 0) { //don't exist echo ("User Not Found"); } //if it does exist then show there profile else{ $user = mysql_fetch_array($getuser); echo " <b>$user[username]'s Profile</b><br><br> Email: $user[email]<br> Location: $user[location]<br> Sex: $user[sex]<br> Age: $user[age]<br> Photo: $user[content]<br> User Description: $user[userDescription]<br> Classification: $user[classification]<br> Graduate Class: $user[graduateClass]<br> Major: $user[major]<br> Minor: $user[minor]<br> School: $user[school]<br> Residents: $user[reside]<br> Phone: $user[phone]<br> AIM: $user[aim]<br> MSN: $user[msn]<br> My Space: $user[mySpace] "; } }else{ //gets all the members from the database $getusers = mysql_query("SELECT * FROM `members` ORDER BY `id` ASC") or die(mysql_error()); //loops there name out while ($user = mysql_fetch_array($getusers)) { echo "<a href='members.php?user=$user[username]'>$user[username]</a><br>"; } } echo "<center>"; ?> This is editprofile code <?php session_start(); //allows session include "config.php"; echo "<center>"; //checks see if there logged in if($logged[id]) { if(isset($_GET['update'])) { $email = addslashes(htmlspecialchars($_POST[email])); $location = addslashes(htmlspecialchars($_POST[location])); $age = (int)addslashes(htmlspecialchars($_POST[age])); $sex = addslashes(htmlspecialchars($_POST[sex])); $userDescription = addslashes(htmlspecialchars($_POST[userDescription])); $classification = addslashes(htmlspecialchars($_POST[classification])); $graduateClass = addslashes(htmlspecialchars($_POST[graduateClass])); $major = addslashes(htmlspecialchars($_POST[major])); $minor = addslashes(htmlspecialchars($_POST[minor])); $school = addslashes(htmlspecialchars($_POST[school])); $reside = addslashes(htmlspecialchars($_POST[reside])); $phone = addslashes(htmlspecialchars($_POST[phone])); $aim = addslashes(htmlspecialchars($_POST[aim])); $msn = addslashes(htmlspecialchars($_POST[msn])); $mySpace = addslashes(htmlspecialchars($_POST[mySpace])); $file = addslashes(htmlspecialchars($_POST[file])); //checks the sex if its ok if(($sex == "Male") || ($sex == "Female")) { //updates there profile in the db include("file_array.inc"); include "upload_file.inc"; $update = mysql_query("UPDATE `members` SET `email` = '$email', `sex` = '$sex', `age` = '$age', `location` = '$location' , `userDescription` = '$userDescription', `classification` = '$classification', `graduateClass` = '$graduateClass', `major` = '$major', `minor` = '$minor', `school` = '$school', `reside` = '$reside', `phone` = '$phone', `aim` = '$aim', `msn` = '$msn', `mySpace` = '$mySpace', `name` = '$fileName', `TYPE` = '$fileType', `size` = '$fileSize', `content` = '$content' WHERE `username` = '$logged[username]'"); echo "Profile updated!"; } //if the sex is invalid else{ echo "Invalid sex input!"; } }else{ $getuser = mysql_query("SELECT * FROM `members` WHERE `username` = '$logged[username]'"); $user = mysql_fetch_array($getuser); echo "<form action='editprofile.php?update' method='post' enctype='multipart/form-data'> Email: <input type='text' name='email' size='30' maxlength='55' value='$user[email]'><br> Location: <input type='text' name='location' size='30' maxlength='40' value='$user[location]'><br> Age: <input type='text' name='age' size='3' maxlength='3' value='$user[age]'><br> Sex: <select size='1' name='sex' value='$user[sex]'> <br> <option value='Male' "; if($user[sex] == Male) { echo "selected"; } echo ">Male</option> <option value='Female' "; if($user[sex] == Female) { echo "selected"; } echo ">Female</option> </select><br> Description: <textarea name='userDescription' value='$user[userDescription]' cols='45' rows='5'></textarea><br> Upload photo: <input type='file' name='file' id='file' value='$user[file]' /><br> <input type='hidden' name='MAXFILE_SIZE' value='2000000'> Classification: <input type='text' name='classification' size='30' maxlength='64' value='$user[classification]'><br> Graduate Class: <input type='text' name='graduateClass' size='30' maxlength='64' value='$user[graduateClass]'><br> Major: <input type='text' name='major' size='30' maxlength='64' value='$user[major]'><br> Minor: <input type='text' name='minor' size='30' maxlength='64' value='$user[minor]'><br> School: <input type='text' name='school' size='30' maxlength='64' value='$user[school]'><br> Residents: <input type='text' name='reside' size='30' maxlength='64' value='$user[reside]'><br> Phone: <input type='text' name='phone' size='30' maxlength='13' value='$user[phone]'><br> AIM: <input type='text' name='aim' size='30' maxlength='30' value='$user[aim]'><br> MSN: <input type='text' name='msn' size='30' maxlength='30' value='$user[msn]'><br> My Space: <input type='text' name='mySpace' size='30' maxlength='30' value='$user[mySpace]'><br> <br> <input type='submit' value='Update'> </form>"; } }else{ echo "You are not logged in."; } echo "<center>"; ?> upload file code <?PHP if ((($_FILES["file"]["type"] == "image/gif") || ($_FILES["file"]["type"] == "image/jpeg") || ($_FILES["file"]["type"] == "image/jpg") || ($_FILES["file"]["type"] == "image/png") || ($_FILES["file"]["type"] == "image/tif") || ($_FILES["file"]["type"] == "image/psd") || ($_FILES["file"]["type"] == "image/bmp") || ($_FILES["file"]["type"] == "image/pct") || ($_FILES["file"]["type"] == "image/pjpeg")) && ($_FILES["file"]["size"] < 200000000000)) { 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"; } ?> File array code <?php $fileName = $_FILES['file']['name']; $tmpName = $_FILES['file']['tmpName']; $fileSize = $_FILES['file']['size']; $fileType = $_FILES['file']['type']; ?> the mysql database for file upload is stored in same table as user information and is like (name VARCHAR(30) NOT NULL,type VARCHAR(30) NOT NULL,size INT NOT NULL,content MEDIUMBLOB NOT NULL,PRIMARY KEY(id)); Can anyone tell from my code what is going wrong....and why image will not display it self.... Thanks!!! Quote Link to comment https://forums.phpfreaks.com/topic/108883-problem-displaying-image/ Share on other sites More sharing options...
RCS Posted June 5, 2008 Author Share Posted June 5, 2008 I have created a user interface where use can register for an account and create profile... The issue that I'm having is after use fills out thier profile and tries to upload an image everything works ok but when the script call to display the image nothing is showing up. I have checked to see that the image is being saved to server and database and it shows the name and file size in database and file is on the server in the upload folder, not sure why it will not show up. If someone can help me out with this I would greatly apperciate it very much, thanks in advance. here is some of my code for you to review. This is members page code <?php session_start(); //allows session include "config.php"; echo "<center>"; if(isset($_GET['user'])) { //if there trying to view a profile //gets the user name and makes it safe $username = addslashes($_GET[user]); //querys the db to find the username $getuser = mysql_query("SELECT * FROM `members` WHERE `username` = '$username'"); //checks see if the username exists in the db $usernum = mysql_num_rows($getuser); //if it don't exist if($usernum == 0) { //don't exist echo ("User Not Found"); } //if it does exist then show there profile else{ $user = mysql_fetch_array($getuser); echo " <b>$user[username]'s Profile</b><br><br> Email: $user[email]<br> Location: $user[location]<br> Sex: $user[sex]<br> Age: $user[age]<br> Photo: $user[content]<br> /// THIS IS HOW I TRIED TO DISPLAY IMAGE FROM DATABASE User Description: $user[userDescription]<br> Classification: $user[classification]<br> Graduate Class: $user[graduateClass]<br> Major: $user[major]<br> Minor: $user[minor]<br> School: $user[school]<br> Residents: $user[reside]<br> Phone: $user[phone]<br> AIM: $user[aim]<br> MSN: $user[msn]<br> My Space: $user[mySpace] "; } }else{ //gets all the members from the database $getusers = mysql_query("SELECT * FROM `members` ORDER BY `id` ASC") or die(mysql_error()); //loops there name out while ($user = mysql_fetch_array($getusers)) { echo "<a href='members.php?user=$user[username]'>$user[username]</a><br>"; } } echo "<center>"; ?> This is editprofile code <?php session_start(); //allows session include "config.php"; echo "<center>"; //checks see if there logged in if($logged[id]) { if(isset($_GET['update'])) { $email = addslashes(htmlspecialchars($_POST[email])); $location = addslashes(htmlspecialchars($_POST[location])); $age = (int)addslashes(htmlspecialchars($_POST[age])); $sex = addslashes(htmlspecialchars($_POST[sex])); $userDescription = addslashes(htmlspecialchars($_POST[userDescription])); $classification = addslashes(htmlspecialchars($_POST[classification])); $graduateClass = addslashes(htmlspecialchars($_POST[graduateClass])); $major = addslashes(htmlspecialchars($_POST[major])); $minor = addslashes(htmlspecialchars($_POST[minor])); $school = addslashes(htmlspecialchars($_POST[school])); $reside = addslashes(htmlspecialchars($_POST[reside])); $phone = addslashes(htmlspecialchars($_POST[phone])); $aim = addslashes(htmlspecialchars($_POST[aim])); $msn = addslashes(htmlspecialchars($_POST[msn])); $mySpace = addslashes(htmlspecialchars($_POST[mySpace])); $file = addslashes(htmlspecialchars($_POST[file])); //checks the sex if its ok if(($sex == "Male") || ($sex == "Female")) { //updates there profile in the db include("file_array.inc"); include "upload_file.inc"; $update = mysql_query("UPDATE `members` SET `email` = '$email', `sex` = '$sex', `age` = '$age', `location` = '$location' , `userDescription` = '$userDescription', `classification` = '$classification', `graduateClass` = '$graduateClass', `major` = '$major', `minor` = '$minor', `school` = '$school', `reside` = '$reside', `phone` = '$phone', `aim` = '$aim', `msn` = '$msn', `mySpace` = '$mySpace', `name` = '$fileName', `TYPE` = '$fileType', `size` = '$fileSize', `content` = '$content' WHERE `username` = '$logged[username]'"); echo "Profile updated!"; } //if the sex is invalid else{ echo "Invalid sex input!"; } }else{ $getuser = mysql_query("SELECT * FROM `members` WHERE `username` = '$logged[username]'"); $user = mysql_fetch_array($getuser); echo "<form action='editprofile.php?update' method='post' enctype='multipart/form-data'> Email: <input type='text' name='email' size='30' maxlength='55' value='$user[email]'><br> Location: <input type='text' name='location' size='30' maxlength='40' value='$user[location]'><br> Age: <input type='text' name='age' size='3' maxlength='3' value='$user[age]'><br> Sex: <select size='1' name='sex' value='$user[sex]'> <br> <option value='Male' "; if($user[sex] == Male) { echo "selected"; } echo ">Male</option> <option value='Female' "; if($user[sex] == Female) { echo "selected"; } echo ">Female</option> </select><br> Description: <textarea name='userDescription' value='$user[userDescription]' cols='45' rows='5'></textarea><br> Upload photo: <input type='file' name='file' id='file' value='$user[file]' /><br> /// THIS IS THE CODE FOR IMAGE UPLOAD <input type='hidden' name='MAXFILE_SIZE' value='2000000'> /// THIS IS MAX FILE SIZE Classification: <input type='text' name='classification' size='30' maxlength='64' value='$user[classification]'><br> Graduate Class: <input type='text' name='graduateClass' size='30' maxlength='64' value='$user[graduateClass]'><br> Major: <input type='text' name='major' size='30' maxlength='64' value='$user[major]'><br> Minor: <input type='text' name='minor' size='30' maxlength='64' value='$user[minor]'><br> School: <input type='text' name='school' size='30' maxlength='64' value='$user[school]'><br> Residents: <input type='text' name='reside' size='30' maxlength='64' value='$user[reside]'><br> Phone: <input type='text' name='phone' size='30' maxlength='13' value='$user[phone]'><br> AIM: <input type='text' name='aim' size='30' maxlength='30' value='$user[aim]'><br> MSN: <input type='text' name='msn' size='30' maxlength='30' value='$user[msn]'><br> My Space: <input type='text' name='mySpace' size='30' maxlength='30' value='$user[mySpace]'><br> <br> <input type='submit' value='Update'> </form>"; } }else{ echo "You are not logged in."; } echo "<center>"; ?> upload file code <?PHP if ((($_FILES["file"]["type"] == "image/gif") || ($_FILES["file"]["type"] == "image/jpeg") || ($_FILES["file"]["type"] == "image/jpg") || ($_FILES["file"]["type"] == "image/png") || ($_FILES["file"]["type"] == "image/tif") || ($_FILES["file"]["type"] == "image/psd") || ($_FILES["file"]["type"] == "image/bmp") || ($_FILES["file"]["type"] == "image/pct") || ($_FILES["file"]["type"] == "image/pjpeg")) && ($_FILES["file"]["size"] < 200000000000)) { 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"; } ?> File array code <?php $fileName = $_FILES['file']['name']; $tmpName = $_FILES['file']['tmpName']; $fileSize = $_FILES['file']['size']; $fileType = $_FILES['file']['type']; ?> the mysql database for file upload is stored in same table as user information and is like (name VARCHAR(30) NOT NULL,type VARCHAR(30) NOT NULL,size INT NOT NULL,content MEDIUMBLOB NOT NULL,PRIMARY KEY(id)); Can anyone tell from my code what is going wrong....and why image will not display it self.... Thanks!!! Quote Link to comment https://forums.phpfreaks.com/topic/108883-problem-displaying-image/#findComment-558563 Share on other sites More sharing options...
hansford Posted June 5, 2008 Share Posted June 5, 2008 Where in the code do you ask it to show an image? should be something like echo "<img src='..... Quote Link to comment https://forums.phpfreaks.com/topic/108883-problem-displaying-image/#findComment-558567 Share on other sites More sharing options...
RCS Posted June 5, 2008 Author Share Posted June 5, 2008 Well here I try to call for the image echo " <b>$user[username]'s Profile</b><br><br> Email: $user[email]<br> Location: $user[location]<br> Sex: $user[sex]<br> Age: $user[age]<br> Photo: $user[content]<br> /// THIS IS HOW I TRIED TO DISPLAY IMAGE FROM DATABASE User Description: $user[userDescription]<br> Classification: $user[classification]<br> Graduate Class: $user[graduateClass]<br> Major: $user[major]<br> Minor: $user[minor]<br> School: $user[school]<br> Residents: $user[reside]<br> Phone: $user[phone]<br> AIM: $user[aim]<br> MSN: $user[msn]<br> My Space: $user[mySpace] "; Quote Link to comment https://forums.phpfreaks.com/topic/108883-problem-displaying-image/#findComment-558569 Share on other sites More sharing options...
jonsjava Posted June 5, 2008 Share Posted June 5, 2008 try changing Photo: $user[content] to Photo: <img src='{$user['content']}'> Quote Link to comment https://forums.phpfreaks.com/topic/108883-problem-displaying-image/#findComment-558571 Share on other sites More sharing options...
RCS Posted June 5, 2008 Author Share Posted June 5, 2008 try changing Photo: $user[content] to Photo: <img src='{$user['content']}'> when I tired Photo: <img src='{$user['content']}'> or die ( "Query failed due to: ".mysql_error()) I'm getting a syntax error Quote Link to comment https://forums.phpfreaks.com/topic/108883-problem-displaying-image/#findComment-558579 Share on other sites More sharing options...
RCS Posted June 5, 2008 Author Share Posted June 5, 2008 when I tried Photo: <img src='{$user['content']}'> by it self I get blank image icon X Quote Link to comment https://forums.phpfreaks.com/topic/108883-problem-displaying-image/#findComment-558580 Share on other sites More sharing options...
jonsjava Posted June 5, 2008 Share Posted June 5, 2008 um...are you storing the image in the db, or just the link to the image? Quote Link to comment https://forums.phpfreaks.com/topic/108883-problem-displaying-image/#findComment-558583 Share on other sites More sharing options...
RCS Posted June 5, 2008 Author Share Posted June 5, 2008 how to verify image has been added to the database and not just the image type, size and name?? cause now the name, size and type are in the database but content BLOB is showing up like [bLOB - 0 B] /// Should this not read somthing and not 0 B is this right or did it not take the image in the content BLOB?? Please help Quote Link to comment https://forums.phpfreaks.com/topic/108883-problem-displaying-image/#findComment-558586 Share on other sites More sharing options...
jonsjava Posted June 5, 2008 Share Posted June 5, 2008 If you're storing it in the db, it shouldn't be 0B. Sounds like it's not storing it. Quote Link to comment https://forums.phpfreaks.com/topic/108883-problem-displaying-image/#findComment-558587 Share on other sites More sharing options...
RCS Posted June 5, 2008 Author Share Posted June 5, 2008 STORING Image TYPE, size, name and content and also uploading image to server folder Quote Link to comment https://forums.phpfreaks.com/topic/108883-problem-displaying-image/#findComment-558588 Share on other sites More sharing options...
hansford Posted June 5, 2008 Share Posted June 5, 2008 if in the DB theres an actual file ie: imagefile01.jpg then try: $img = $user[content]; echo "Photo: " . "<img src='" . $img . "'>"; Quote Link to comment https://forums.phpfreaks.com/topic/108883-problem-displaying-image/#findComment-558589 Share on other sites More sharing options...
RCS Posted June 5, 2008 Author Share Posted June 5, 2008 Do you see anything wrong with $update = mysql_query("UPDATE `members` SET `email` = '$email', `sex` = '$sex', `age` = '$age', `location` = '$location' , `userDescription` = '$userDescription', `classification` = '$classification', `graduateClass` = '$graduateClass', `major` = '$major', `minor` = '$minor', `school` = '$school', `reside` = '$reside', `phone` = '$phone', `aim` = '$aim', `msn` = '$msn', `mySpace` = '$mySpace', `name` = '$fileName', `TYPE` = '$fileType', `size` = '$fileSize', `content` = '$content' WHERE `username` = '$logged[username]'"); The image name, type, size and content should be going to database NO?? File array is $fileName = $_FILES['file']['name']; $tmpName = $_FILES['file']['tmpName']; $fileSize = $_FILES['file']['size']; $fileType = $_FILES['file']['type']; Any ideas?? Quote Link to comment https://forums.phpfreaks.com/topic/108883-problem-displaying-image/#findComment-558592 Share on other sites More sharing options...
RCS Posted June 5, 2008 Author Share Posted June 5, 2008 not sure what you mean I still get blank icon X The image also gets stored in the /upload folder of my server Quote Link to comment https://forums.phpfreaks.com/topic/108883-problem-displaying-image/#findComment-558598 Share on other sites More sharing options...
RCS Posted June 5, 2008 Author Share Posted June 5, 2008 Can you see the error in this?? $img = $user[content]; echo "Photo: " . "<img src =\"upload/" . $img ."\">";<br> I'm having syntax error Quote Link to comment https://forums.phpfreaks.com/topic/108883-problem-displaying-image/#findComment-558614 Share on other sites More sharing options...
hansford Posted June 5, 2008 Share Posted June 5, 2008 I don't think the file is getting uploaded. try this.. $filepath = $_SERVER['DOCUMENT_ROOT'] ."/images/" . $_FILES['file01']['name']; $upload = $_FILES['file01']['tmp_name']; $err = move_uploaded_file($upload, $filepath); then make your DB connection and save it in $user[content] Quote Link to comment https://forums.phpfreaks.com/topic/108883-problem-displaying-image/#findComment-558620 Share on other sites More sharing options...
hansford Posted June 5, 2008 Share Posted June 5, 2008 $img = $user[content]; echo "Photo: " . "<img src='/upload/" . $img . "'>"; Quote Link to comment https://forums.phpfreaks.com/topic/108883-problem-displaying-image/#findComment-558623 Share on other sites More sharing options...
RCS Posted June 5, 2008 Author Share Posted June 5, 2008 I tried but for some reason BLOB is still 0 B Quote Link to comment https://forums.phpfreaks.com/topic/108883-problem-displaying-image/#findComment-558643 Share on other sites More sharing options...
hansford Posted June 5, 2008 Share Posted June 5, 2008 $img = $user[content]; echo "Photo: " . "<img src='/upload/" . $img . "'>"; Quote Link to comment https://forums.phpfreaks.com/topic/108883-problem-displaying-image/#findComment-558650 Share on other sites More sharing options...
RCS Posted June 5, 2008 Author Share Posted June 5, 2008 It's still not working any ideas why?? Quote Link to comment https://forums.phpfreaks.com/topic/108883-problem-displaying-image/#findComment-558664 Share on other sites More sharing options...
hansford Posted June 5, 2008 Share Posted June 5, 2008 what you need to do is store the name of the file in the DB and store the actual image in your image directory. The following code will grab a <input type='file' name='file01'> file and save it in your 'images' directory. A connection to your database will grab the image name, width and height - no need for a type here as the filename ie: img01.jpg already holds that info. ------------- if(isset($_FILES['file01'])) { $fil = $_FILES['file01']['name']; if(file_exists($_FILES['file01']['tmp_name'])) { $upload = $_FILES['file01']['tmp_name']; $filepath = $_SERVER['DOCUMENT_ROOT'] ."/images/" . $_FILES['file01']['name']; try { $err = move_uploaded_file($upload, $filepath); } catch(EXCEPTION $e) { echo $e; } } } else { echo "upload failed"; } ------------------ now the file is saved in a directory on your server ------------------------------------- now connect to your DB and grab the file name ie: $user[content] ----------------------------- then display the image -------------------- $img = $user[content]; $w = $user[width]; $h = $user[height]; echo "Photo: " . "<img src='/images/" . $img . "' width='" . $w . "' height='" . $h . "'>"; Quote Link to comment https://forums.phpfreaks.com/topic/108883-problem-displaying-image/#findComment-558717 Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.