Jump to content

upload the resume and store in database


swethak

Recommended Posts

hi,

 

i wrote a code to upload a resume in mysql database and download that one .

  But in my database name,type,size of the file stored but content of the file not stored. So in my database content filed is empty.plz tell that what's the problem in my code.

 

 


<?
include("db.php");
if(isset($_POST['upload']) && $_FILES['userfile']['size'] > 0)
{
$fileName = $_FILES['userfile']['name'];
$tmpName  = $_FILES['userfile']['tmpname'];
$fileSize = $_FILES['userfile']['size'];
$fileType = $_FILES['userfile']['type'];

$fp      = fopen($tmpName, 'rb');
$content = fread($fp, filesize($tmpName));
$content = addslashes($content);
fclose($fp);

if(!get_magic_quotes_gpc())
{
    $fileName = addslashes($fileName);
}

$query = "INSERT INTO upload (name, size, type, content ) ".
"VALUES ('$fileName', '$fileSize', '$fileType', '$content')";

mysql_query($query) or die('Error, query failed'); 

echo "<br>File $fileName uploaded<br>";
} 
?>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=windows-1252">
<title>New Page 2</title>
</head>

<body>
<form method="post" enctype="multipart/form-data">
<table width="350" border="0" cellpadding="1" cellspacing="1" class="box">
<tr> 
<td width="246">
<input type="hidden" name="MAX_FILE_SIZE" value="2000000">
<input name="userfile" type="file" id="userfile"> 
</td>
<td width="80"><input name="upload" type="submit" class="box" id="upload" value=" Upload "></td>
</tr>
</table>
</form>

</body>

</html>

 

And i got the errors as

 

Warning: fread(): supplied argument is not a valid stream resource in e:\project\graphic\docu.php on line 11

 

Warning: fclose(): supplied argument is not a valid stream resource in e:\project\graphic\docu.php on line 13

Link to comment
https://forums.phpfreaks.com/topic/124799-upload-the-resume-and-store-in-database/
Share on other sites

Instead of this:

 

$fp      = fopen($tmpName, 'rb');
$content = fread($fp, filesize($tmpName));
$content = addslashes($content);
fclose($fp);

 

Use file_get_contents().

 

$content = file_get_contents($tmpName);

 

The problem may be the MODE of opening the file with fopen, as I've never heard of 'rb' as a MODE.

Archived

This topic is now archived and is closed to further replies.

×
×
  • Create New...

Important Information

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.