Crear tabla quetenga campo de fotos en mysql

Como puedo crear una tabla que tenga un campo que almacene fotos. Que hay que agregarle al formulario(html) para que envie las fotos a la bd y como visualizarlas finalmente en un scrip php

1 respuesta

Respuesta
1
Espero que te sirva, me parece que yo le tuve que hacer algunas modificaciones.
Tenes que hacer una tabla con un dato binario. Por ejemplo:
CREATE TABLE binary_data (
id INT(4) NOT NULL AUTO_INCREMENT PRIMARY KEY,
description CHAR(50),
bin_data LONGBLOB,
filename CHAR(50),
filesize CHAR(50),
filetype CHAR(50)
);
Para guardar una imagen en un registro de esta tabla usas este script en PHP (store.php)
*************************************************
*************************************************
<?php
// store.php3 - by Florian Dittmer <[email protected]>
// Example php script to demonstrate the storing of binary files into
// an sql database. More information can be found at http://www.phpbuilder.com/
?>
<HTML>
<HEAD><TITLE>Store binary data into SQL Database</TITLE></HEAD>
<BODY>
<?php
// code that will be executed if the form has been submitted:
if ($submit) {
// connect to the database
// (you may have to adjust the hostname,username or password)
MYSQL_CONNECT("localhost","root","password");
mysql_select_db("binary_data");
$data = addslashes(fread(fopen($form_data, "r"), filesize($form_data)));
$result=MYSQL_QUERY("INSERT INTO binary_data (description,bin_data,filename,filesize,filetype) ".
"VALUES ('$form_description','$data','$form_data_name','$form_data_size','$form_data_type')");
$id= mysql_insert_id();
print "<p>This file has the following Database ID: <b>$id</b>";
MYSQL_CLOSE();
} else {
// else show the form to submit new data:
?>
<form method="post" action="<?php echo $PHP_SELF; ?>" enctype="multipart/form-data">
File Description:<br>
<input type="text" name="form_description" size="40">
<INPUT TYPE="hidden" name="MAX_FILE_SIZE" value="1000000">
<br>File to upload/store in database:<br>
<input type="file" name="form_data" size="40">
<p><input type="submit" name="submit" value="submit">
</form>
<?php
}
?>
</BODY>
</HTML>
*********************************************
*********************************************
Para obtener los datos de la tabla usas esta script en PHP (getdata.php)
**********************************************
**********************************************
<?php
// getdata.php3 - by Florian Dittmer <[email protected]>
// Example php script to demonstrate the direct passing of binary data
// to the user. More infos at http://www.phpbuilder.com
// Syntax: getdata.php3?id=<id>
if($id) {
// you may have to modify login information for your database server:
@MYSQL_CONNECT("localhost","root","password");
@mysql_select_db("binary_data");
$query = "select bin_data,filetype from binary_data where id=$id";
$result = @MYSQL_QUERY($query);
$data = @MYSQL_RESULT($result,0,"bin_data");
$type = @MYSQL_RESULT($result,0,"filetype");
Header( "Content-type: $type");
echo $data;
};
?>
************************************************
************************************************
Con esta base podes hacer cualquier convinacion y pienso que va a satisfacer tus necesidades.
Para mayor informacion entra en www.phpbuilder.com, hay mucha informacion y ejemplos.
Cualquier duda segui consultandome.
Nahuel

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas