Plaatje uploaden + databank V2.2
Auteur: BigTeddy - 01 september 2004 - 01:14 - Gekeurd door: Dennisvb - Hits: 19853 - Aantal punten: 2.97 (18 stemmen)
Het upload script is nu V2.2, ik heb er bugs uitgehaald en verbeterd aan de huidige php versie
Databanktabel
CREATE TABLE `plaatjes` (
`id` int(5) NOT NULL auto_increment,
`naam` varchar(200) NOT NULL default '',
`ext` varchar(5) NOT NULL default '',
UNIQUE KEY `id` (`id`)
) TYPE=MyISAM;
CREATE TABLE `plaatjes` (
`id` int( 5 ) NOT NULL auto_increment,
`naam` varchar( 200 ) NOT NULL default '' ,
`ext` varchar( 5 ) NOT NULL default '' ,
) TYPE= MyISAM;
Als je je tabel andersnoemt, pas deze dan ook aan in de syntax hierboven!!
// update 12 februari 2006
Enkel foutjes uit het script gehaald
Code:
config.cfg.php
==============
<?php
$local = "localhost"; // localhost of andere
$user = "user"; // gebruikersnaam
$pasw = "paswoord"; // paswoord
$bank = "databank_1"; // welke databank
$tabel = "plaatjes"; // welke tabel
@mysql_connect($local,$user,$pasw);
@mysql_select_db($bank) or die(mysql_error());
$max_pic_echo = 50; // max aantal plaatje laten zien uit de databank
$size_max = 60000; // max grote in bytes
$map = "img/plaatjes"; // wele map ZONDER eind '/'
$exts = array("gif", "jpg", "jpeg", "png"); // welke extensies
$types = array("image/gif", "image/pjpeg", "image/x-png"); // welke types
$pg_naam = "pic"; // de naam van het hoofdbestand
$style_file = "style"; // de naam van het style bestand zonde .css
$goed_up = "Het plaatje is goed geupload geworden."; // tekst goed geupload
$error = array();
$error['ext'] = "Het plaatje heeft een foute extensie."; // prob met extencie
$error['type'] = "Het plaatje is geen goed type."; // prob met type
$error['size'] = "Het plaatje is te groot."; // prob met size
$error['geen'] = "Er zijn geen plaatjes in de databank.."; // nog geen plaatje in databank
?>
<?php
$local = "localhost" ; // localhost of andere
$user = "user" ; // gebruikersnaam
$pasw = "paswoord" ; // paswoord
$bank = "databank_1" ; // welke databank
$tabel = "plaatjes" ; // welke tabel
$max_pic_echo = 50 ; // max aantal plaatje laten zien uit de databank
$size_max = 60000 ; // max grote in bytes
$map = "img/plaatjes" ; // wele map ZONDER eind '/'
$exts = array ( "gif" , "jpg" , "jpeg" , "png" ) ; // welke extensies $types = array ( "image/gif" , "image/pjpeg" , "image/x-png" ) ; // welke types $pg_naam = "pic" ; // de naam van het hoofdbestand
$style_file = "style" ; // de naam van het style bestand zonde .css
$goed_up = "Het plaatje is goed geupload geworden." ; // tekst goed geupload
$error [ 'ext' ] = "Het plaatje heeft een foute extensie." ; // prob met extencie
$error [ 'type' ] = "Het plaatje is geen goed type." ; // prob met type
$error [ 'size' ] = "Het plaatje is te groot." ; // prob met size
$error [ 'geen' ] = "Er zijn geen plaatjes in de databank.." ; // nog geen plaatje in databank
?>
pic.php
=======
<?
include('config.cfg.php');
echo"
<html>
<head>
<style type='text/css' media='all'>@import '".$style_file.".css';</style>
</head>
<body bgcolor='#CCCCCC'>
<center>
<h1>UPLOAD SCRIPT + MYSQL</h1><br />
<a href='".$pg_naam.".php'>Terug</a><br />
<FORM METHOD=POST ACTION='' enctype='multipart/form-data'>
Plaatje: <input type=file name='plaatje' /><br />
<INPUT TYPE='submit' VALUE='Uploaden' NAME='pl_toevoegen' />
</FORM>
</center>";
if(isset($_POST['pl_toevoegen']))
{
$plaatje_naam = $_FILES['plaatje']['name'];
$plaatje_size = $_FILES['plaatje']['size'];
$plaatje_type = $_FILES['plaatje']['type'];
$plaatje_tmp = $_FILES['plaatje']['tmp_name'];
$plaatje_naam_array = explode('.',$plaatje_naam);
$achter = count($plaatje_naam_array)-1;
$plaatje_ext = $plaatje_naam_array[$achter];
$bestandnaam = "";
for($i=0; $i<$achter; $i++)
{
$bestandnaam .= $plaatje_naam_array[$i];
if($i+1 != $achter){$bestandnaam .= ".";}
}
if(!in_array($plaatje_ext, $exts))
{echo "- ".$error['ext']." (".$plaatje_ext.")<br />";}
if(!in_array($plaatje_type, $types))
{echo "- ".$error['type']." (".$plaatje_type.")<br />";}
if($plaatje_size > $size_max)
{echo "- ".$error['size']." (".$plaatje_size.")<br />";}
elseif(in_array($plaatje_ext, $exts) && in_array($plaatje_type, $types) && $plaatje_size <= $size_max)
{
$i_naam = 0;
while(file_exists($map."/".$bestandnaam."_".$i_naam.".".$plaatje_ext))
{$i_naam = $i_naam + 1;}
$bestandnaam = $bestandnaam."_".$i_naam;
$bestandnaam_db = $bestandnaam.".".$plaatje_ext;
$input_plaatje = $map."/".$bestandnaam_db;
move_uploaded_file($plaatje_tmp, $input_plaatje);
mysql_query("INSERT INTO `".$tabel."` (`id`, `naam`, `ext`) VALUES ('', '".$bestandnaam."', '".$plaatje_ext."')") or die(mysql_error());
echo $goed_up;
}
}
if($_GET['actie'] == "view" && !isset($_POST['pl_toevoegen']))
{
$array = mysql_fetch_array(mysql_query("SELECT * FROM `".$tabel."` WHERE id='".$_GET['pic']."'"));
echo "<br /><center><img src='".$map."/".$array['naam'].".".$array['ext']."' border='0' /></center><br />";
}
$res_p = mysql_query("SELECT * FROM `".$tabel."` LIMIT ".$max_pic_echo);
echo "<br />
<TABLE class='tabel' width='400' align='center'>
<TR class='hoofding'>
<TD width='250'>Bestand</TD><TD width='100'>Ext</TD><TD width='50'>Pl.</TD>
</TR>";
if(mysql_num_rows($res_p) < 1)
{echo "<TR><TD colspan='3'>".$error['geen']."</TD></TR>";}
else
{
while($array_p=mysql_fetch_array($res_p))
{
$img = "<a href='".$pg_naam.".php?actie=view&pic=".$array_p['id']."'><img src='plaatje.gif' border='0' /></a>";
echo "<TR><TD>".$array_p['naam']."</TD><TD>".$array_p['ext']."</TD><TD align='center'>".$img."</TD> </TR>";
}
}
echo"</TABLE>";
echo"
</body>
</html>";
?>
<?
include ( 'config.cfg.php' ) ;
<html>
<head>
<style type='text/css' media='all'>@import '" . $style_file . ".css';</style>
</head>
<body bgcolor='#CCCCCC'>
<center>
<h1>UPLOAD SCRIPT + MYSQL</h1><br />
<a href='" . $pg_naam . ".php'>Terug</a><br />
<FORM METHOD=POST ACTION='' enctype='multipart/form-data'>
Plaatje: <input type=file name='plaatje' /><br />
<INPUT TYPE='submit' VALUE='Uploaden' NAME='pl_toevoegen' />
</FORM>
</center>" ;
if ( isset ( $_POST [ 'pl_toevoegen' ] ) ) {
$plaatje_naam = $_FILES [ 'plaatje' ] [ 'name' ] ;
$plaatje_size = $_FILES [ 'plaatje' ] [ 'size' ] ;
$plaatje_type = $_FILES [ 'plaatje' ] [ 'type' ] ;
$plaatje_tmp = $_FILES [ 'plaatje' ] [ 'tmp_name' ] ;
$plaatje_naam_array = explode ( '.' , $plaatje_naam ) ; $achter = count ( $plaatje_naam_array ) - 1 ; $plaatje_ext = $plaatje_naam_array [ $achter ] ;
$bestandnaam = "" ;
for ( $i = 0 ; $i < $achter ; $i ++ )
{
$bestandnaam .= $plaatje_naam_array [ $i ] ;
if ( $i + 1 != $achter ) { $bestandnaam .= "." ; }
}
{ echo "- " . $error [ 'ext' ] . " (" . $plaatje_ext . ")<br />" ; } { echo "- " . $error [ 'type' ] . " (" . $plaatje_type . ")<br />" ; } if ( $plaatje_size > $size_max )
{ echo "- " . $error [ 'size' ] . " (" . $plaatje_size . ")<br />" ; }
elseif ( in_array ( $plaatje_ext , $exts ) && in_array ( $plaatje_type , $types ) && $plaatje_size <= $size_max ) {
$i_naam = 0 ;
while ( file_exists ( $map . "/" . $bestandnaam . "_" . $i_naam . "." . $plaatje_ext ) ) { $i_naam = $i_naam + 1 ; }
$bestandnaam = $bestandnaam . "_" . $i_naam ;
$bestandnaam_db = $bestandnaam . "." . $plaatje_ext ;
$input_plaatje = $map . "/" . $bestandnaam_db ;
mysql_query ( "INSERT INTO `" . $tabel . "` (`id`, `naam`, `ext`) VALUES ('', '" . $bestandnaam . "', '" . $plaatje_ext . "')" ) or
die ( mysql_error ( ) ) ; }
}
if ( $_GET [ 'actie' ] == "view" && ! isset ( $_POST [ 'pl_toevoegen' ] ) ) {
echo "<br /><center><img src='" . $map . "/" . $array [ 'naam' ] . "." . $array [ 'ext' ] . "' border='0' /></center><br />" ; }
$res_p = mysql_query ( "SELECT * FROM `" . $tabel . "` LIMIT " . $max_pic_echo ) ;
<TABLE class='tabel' width='400' align='center'>
<TR class='hoofding'>
<TD width='250'>Bestand</TD><TD width='100'>Ext</TD><TD width='50'>Pl.</TD>
</TR>" ;
{ echo "<TR><TD colspan='3'>" . $error [ 'geen' ] . "</TD></TR>" ; } else
{
{
$img = "<a href='" . $pg_naam . ".php?actie=view&pic=" . $array_p [ 'id' ] . "'><img src='plaatje.gif' border='0' /></a>" ;
echo "<TR><TD>" . $array_p [ 'naam' ] . "</TD><TD>" . $array_p [ 'ext' ] . "</TD><TD align='center'>" . $img . "</TD> </TR>" ; }
}
</body>
</html>" ;
?>
Download code (.txt)
Stemmen
Niet ingelogd.