MySql & Graphic
Posted: Sat Oct 12, 2002 8:00 am
Howto store image in MySql & Php 4.1.2...
this is simple code:
=============================================
[configure.inc]
<?
include_once("db_mysql.inc"); // load standard Mysql Lib from PhpLib
class DB_Upload extends DB_Sql { // Extend standard MySql Lib
var $classname = "DB_Upload";
var $Host = "localhost";
var $Database = "db_image";
var $User ="root";
var $Password = "pass";
function haltmsg($msg) {
printf("</td></table><b>Database error:</b> %s<br>\n", $msg);
printf("<b>MySQL Error</b>: %s (%s)<br>\n",
$this->Errno, $this->Error);
printf("Please contact biagio@tisifone.it and report the ");
printf("exact error message.<br>\n");
}
}
// create istance DB
$db=new DB_Upload;
?>
=============================================
=============================================
[getdata.php]
<?
if($id) {
require("include/configure.inc"); // connection db
$q = "select bin_data,filetype from binary_data where id=$id";
$db->query($q);
$db->next_record();
$bin = $db->f("bin_data");
$tipo = $db->f("filetype");
Header( "Content-type: $tipo");
echo $bin;
}
?>
=============================================
=============================================
[store.php]
<?
require("include/head.inc");
require("include/configure.inc");
?>
<TABLE align=center width="100%" bgcolor="#FFFFFF">
<TR bgcolor="#0000ff"><TD colspan=2 align=center><FONT color="#FFFFFF"><B>Upload File</B></TD></TR>
<TR><TD>
<?
if (isset($submit)) {
$data = addslashes(fread(fopen($form_data, "r"), filesize($form_data)));
$q="INSERT INTO binary_data (description,bin_data,filename,filesize,filetype) VALUES ('$form_description','$data','$form_data_name','$form_data_size','$form_data_type')";
$db->query($q);
?>
<SCRIPT LANGUAGE="JavaScript" TYPE="text/javascript">
<!--
window.location.href="index.php";
//-->
</SCRIPT>
<?
} else {
?>
<TABLE width=100%>
<form method="post" action="<? echo $PHP_SELF; ?>" enctype="multipart/form-data">
<TR>
<td style="text-align: left;">File:</td>
<TD style="text-align: left;"><input type="file" name="form_data" size="40"></TD>
</TR>
<TR>
<TD style="text-align: left;">Descrizione:</TD>
<TD style="text-align: left;"><input type="text" name="form_description" size="40"></TD>
</TR>
<TR>
<TD align=center colspan=2><input type="submit" name="submit" value="-upload-"></TD>
</TR>
<INPUT TYPE="hidden" name="MAX_FILE_SIZE" value="1000000">
</form>
</TABLE>
<?
}
?>
</TD></TR></TABLE>
<?require("include/tail.inc");?>
=============================================
=============================================
[index.php]
<?
require("include/configure.inc");
include("include/head.inc");
include("include/tail.inc");
?>
<form name="form">
<table width="100%">
<?
$q="select id, description, filename, filesize, filetype from binary_data order by id desc";
$db->query($q);
?>
<tr>
<td valign="top">
<select name="image" onchange="changeImage(this.value)">
<?
while ($db->next_record()){
$c++;
if($c==1){
$sel='selected';
$id_start=$db->f("id");
}else{
$sel='';
}
printf('<option value="%d" %s>%s</option>',$db->f("id"),$sel,$db->f("filename"));
}
?>
</select>
<br><br><input type="button" value="- delete this -" onclick="deleteImage(form.image.value)">
</td>
<td>
<img src="getdata.php?id=<?echo $id_start?>" name="img">
</td></tr>
</table>
</form>
<script language="JavaScript1.1">
function changeImage(id){
document.form.img.src='getdata.php?id='+id;
}
function deleteImage(id){
if (confirmDelete()){
window.location.href='delete.php?id='+id;
}
}
function confirmDelete(){
var agree=confirm("Sei sicuro di voler eliminare\nil record?\n\nAttenzione:\nl'operazione é irreversibile");
if (agree)
return true ;
else
return false ;
}
</script>
=============================================
=============================================
[sql.txt]
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)
);
=============================================
for complete free script send me a mail

this is simple code:
=============================================
[configure.inc]
<?
include_once("db_mysql.inc"); // load standard Mysql Lib from PhpLib
class DB_Upload extends DB_Sql { // Extend standard MySql Lib
var $classname = "DB_Upload";
var $Host = "localhost";
var $Database = "db_image";
var $User ="root";
var $Password = "pass";
function haltmsg($msg) {
printf("</td></table><b>Database error:</b> %s<br>\n", $msg);
printf("<b>MySQL Error</b>: %s (%s)<br>\n",
$this->Errno, $this->Error);
printf("Please contact biagio@tisifone.it and report the ");
printf("exact error message.<br>\n");
}
}
// create istance DB
$db=new DB_Upload;
?>
=============================================
=============================================
[getdata.php]
<?
if($id) {
require("include/configure.inc"); // connection db
$q = "select bin_data,filetype from binary_data where id=$id";
$db->query($q);
$db->next_record();
$bin = $db->f("bin_data");
$tipo = $db->f("filetype");
Header( "Content-type: $tipo");
echo $bin;
}
?>
=============================================
=============================================
[store.php]
<?
require("include/head.inc");
require("include/configure.inc");
?>
<TABLE align=center width="100%" bgcolor="#FFFFFF">
<TR bgcolor="#0000ff"><TD colspan=2 align=center><FONT color="#FFFFFF"><B>Upload File</B></TD></TR>
<TR><TD>
<?
if (isset($submit)) {
$data = addslashes(fread(fopen($form_data, "r"), filesize($form_data)));
$q="INSERT INTO binary_data (description,bin_data,filename,filesize,filetype) VALUES ('$form_description','$data','$form_data_name','$form_data_size','$form_data_type')";
$db->query($q);
?>
<SCRIPT LANGUAGE="JavaScript" TYPE="text/javascript">
<!--
window.location.href="index.php";
//-->
</SCRIPT>
<?
} else {
?>
<TABLE width=100%>
<form method="post" action="<? echo $PHP_SELF; ?>" enctype="multipart/form-data">
<TR>
<td style="text-align: left;">File:</td>
<TD style="text-align: left;"><input type="file" name="form_data" size="40"></TD>
</TR>
<TR>
<TD style="text-align: left;">Descrizione:</TD>
<TD style="text-align: left;"><input type="text" name="form_description" size="40"></TD>
</TR>
<TR>
<TD align=center colspan=2><input type="submit" name="submit" value="-upload-"></TD>
</TR>
<INPUT TYPE="hidden" name="MAX_FILE_SIZE" value="1000000">
</form>
</TABLE>
<?
}
?>
</TD></TR></TABLE>
<?require("include/tail.inc");?>
=============================================
=============================================
[index.php]
<?
require("include/configure.inc");
include("include/head.inc");
include("include/tail.inc");
?>
<form name="form">
<table width="100%">
<?
$q="select id, description, filename, filesize, filetype from binary_data order by id desc";
$db->query($q);
?>
<tr>
<td valign="top">
<select name="image" onchange="changeImage(this.value)">
<?
while ($db->next_record()){
$c++;
if($c==1){
$sel='selected';
$id_start=$db->f("id");
}else{
$sel='';
}
printf('<option value="%d" %s>%s</option>',$db->f("id"),$sel,$db->f("filename"));
}
?>
</select>
<br><br><input type="button" value="- delete this -" onclick="deleteImage(form.image.value)">
</td>
<td>
<img src="getdata.php?id=<?echo $id_start?>" name="img">
</td></tr>
</table>
</form>
<script language="JavaScript1.1">
function changeImage(id){
document.form.img.src='getdata.php?id='+id;
}
function deleteImage(id){
if (confirmDelete()){
window.location.href='delete.php?id='+id;
}
}
function confirmDelete(){
var agree=confirm("Sei sicuro di voler eliminare\nil record?\n\nAttenzione:\nl'operazione é irreversibile");
if (agree)
return true ;
else
return false ;
}
</script>
=============================================
=============================================
[sql.txt]
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)
);
=============================================
for complete free script send me a mail