Eseguire Upload di un file su MySql

Faq di php

Eseguire Upload di un file su MySql

Messaggioda alesslud » gio feb 28, 2008 5:05 pm

L'articolo è stato tratto da http://www.php-mysql-tutorial.com/php-mysql-upload.php e poi è stato modificato

Si consiglia di modificare l'inizio di una dichiarazione di blocco di codice php da <? a <?php soprattutto se si usa la versione 5

La seguente sezione permette l'invio di un file ad un server MySql senza la necessità di scrivere il file sull'hard disk del vostro spazio web.

Il seguente esempio è solo scolastico e non si garantisce il funzionamento in un ambiente di produzione
Ultima modifica di alesslud il gio apr 10, 2008 9:21 am, modificato 2 volte in totale.
alesslud
Site Admin
 
Messaggi: 779
Iscritto il: mer nov 08, 2006 8:09 am

config.inc.php

Messaggioda alesslud » gio feb 28, 2008 5:07 pm

Imposto la connessione:

<?php
// parametri del database
$db_host = "yourhost";
$db_user = "yourusername";
$db_password = "yourpassword";
$db_name = "yourdbname";
$db=mysql_connect($db_host,$db_user,$db_password);
if (!$db) {
echo "Impossibile collegarsi al server Mysql";
exit;
}
$db_name=mysql_select_db("dbname",$db);
if (!$db_name) {
echo "Impossibile selezionare il database";
exit;

}
?>
Ultima modifica di alesslud il gio apr 10, 2008 9:51 am, modificato 1 volta in totale.
alesslud
Site Admin
 
Messaggi: 779
Iscritto il: mer nov 08, 2006 8:09 am

dbupload.php

Messaggioda alesslud » gio feb 28, 2008 5:08 pm

Pagina web che gestisce l'upload di un file:


<html>
<head>
<title>Eseguire un upload in php su MySql</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<style type="text/css">
</style>
</head>

<body>
<?php
include 'upload.php';
?>
<form action="" method="post" enctype="multipart/form-data" name="uploadform">
<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" class="box" id="userfile">
</td>
<td width="80"><input name="upload" type="submit" class="box" id="upload" value=" Esegui l'upload "></td>
</tr>
</table>
</form>
</body>
</html>
Ultima modifica di alesslud il gio apr 10, 2008 9:51 am, modificato 1 volta in totale.
alesslud
Site Admin
 
Messaggi: 779
Iscritto il: mer nov 08, 2006 8:09 am

upload.php

Messaggioda alesslud » gio feb 28, 2008 5:09 pm

File che gestisce l'upload del file

<?php
if(isset($_POST['upload']))
{
$nomeFile = $_FILES['userfile']['name'];
$tmp = $_FILES['userfile']['tmp_name'];
$fileSize = $_FILES['userfile']['size'];
$fileType = $_FILES['userfile']['type'];

$fp = fopen($tmp, 'r');
$content = fread($fp, $fileSize);
$content = addslashes($content);
fclose($fp);

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


include 'config.inc.php';

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

mysql_query($query);

echo "<br>File $nomeFile uploaded<br>";
}
?>
Ultima modifica di alesslud il gio apr 10, 2008 9:51 am, modificato 1 volta in totale.
alesslud
Site Admin
 
Messaggi: 779
Iscritto il: mer nov 08, 2006 8:09 am

Creare la tabella per eseguire l'upload

Messaggioda alesslud » gio feb 28, 2008 5:13 pm

CREATE TABLE upload (
id INT NOT NULL AUTO_INCREMENT,
name VARCHAR(30) NOT NULL,
type VARCHAR(30) NOT NULL,
size INT NOT NULL,
content MEDIUMBLOB NOT NULL,
PRIMARY KEY(id)
);
alesslud
Site Admin
 
Messaggi: 779
Iscritto il: mer nov 08, 2006 8:09 am


Torna a Php

Chi c’è in linea

Visitano il forum: Nessuno e 1 ospite

cron