Scripts
Avatar systeem
Wat? Een upload script! Je kan avatar's uploaden naar een map, met of zonder leden systeem. De avatar's worden geupload naar een zelf in te stellen map. Gebruik? Je kan het script zo gebruiken. Alleen de variabelen tussen // Gegevens: en // Vanaf hier hoef je niks meer te veranderen! Waarin je het moet veranderen staat er achter. Fouten? Fout gevonden? Meld het hier, stuur me een PM of mail naar mca90 @ digitaly.nl Dit werkt zonder database, dus je ziet niet de uitgebreidde versie. De map met avatars wordt elke avond automatisch geleegd, dus je kan het niet gebruiken om lekker wat op te zetten ;)
avatar-systeem
[code]<?
/***************************************************************************
* avatar.php
* -------------------
* Gemaakt : zaterdag 8 januari 2005
* Copyright : (C) 2005 Digitaly.nl
* Email : [email protected]
* Upload avatar's
*
*
***************************************************************************/
// Gegevens:
$sql = 0; // Alleen uploaden, of ook in database opslaan? Nee: 0, Ja: 1
$map = "map/"; // De map waar de avatar's in moeten, heeft wel CHMOD 0777 nodig. En vergeet niet met / te eindigen!
$groote = 50; // Groote van afbeeldingen, in KB
$extensie = array ('jpg', 'jpeg', 'pjpg', 'gif', 'bmp', 'png'); // Extensies, je kunt er een toevoegen door ,'.ext' toe te voegen
$max_width = "100"; // Maximale breedte van afbeelding
$max_heigth = "100"; // Maximale hoogte van afbeelding
// Alleen nodig als je met database werkt!
if($sql == 1)
{
// Connectie variabelen
$db[host] = "localhost"; // Host
$db[user] = "username"; // Gebruikersnaam
$db[ww] = "***"; // Wachtwoord
$db[db] = "database"; // Database
// Connecten
mysql_connect($db[host],$db[user],$db[ww]);
mysql_select_db($db[db]);
// Database variabelen unsetten.
unset($db);
$gebruikersnaam = ""; // Waar haal je gebruikersnaam vandaan? Bijv.: $_SESSION['gb']
$tabel = ""; // Tabel waar gegevens uit gehaald worden
}
// Vanaf hier hoef je niks meer te veranderen!
// Als het met database werkt, dan hier avatar uit database halen
if($sql == 1)
{
$query = mysql_query("SELECT avatar FROM ".$tabel." WHERE gebruikersnaam = '".$gebruikersnaam."'");
$obj = mysql_fetch_assoc($query);
$avatar = '<img src="'.$obj[avatar].'" border="0" />';
$avatar_oud = $obj[avatar];
}
$aantal_extensies = count($extensie); // Tel het aantal mogelijke extensies
if(!isset($_POST['case']))
$case = 1;
else
$case = $_POST['case'];
switch($case)
{
case 1:
?>
<form method="post" enctype="multipart/form-data">
<table border="0" cellspacing="0" cellpadding="4">
<?
if($sql == 1)
{
echo '
<tr>
<td align="left">
<b>Avatar:</b>
</td>
<td align="left">
'.$avatar.'
</td>
</tr>
';
}
?>
<tr>
<td align="left">
<b>Groote:</b>
</td>
<td align="left">
<?= $groote ?> KB.
</td>
</tr>
<tr>
<td align="left">
<b>Breedte:</b>
</td>
<td align="left">
<?= $max_width ?>.
</td>
</tr>
<tr>
<td align="left">
<b>Hoogte:</b>
</td>
<td align="left">
<?= $max_heigth ?>.
</td>
</tr>
<tr>
<td align="left">
<b>Extensies:</b>
</td>
<td align="left">
<?
for($i = 0; $i < $aantal_extensies; $i++)
echo $extensie[$i] .' ';
?>
</td>
</tr>
<tr>
<td align="center" colspan="2">
<b>Avatar Uploaden:</b>
</td>
</tr>
<tr>
<td align="center" colspan="2">
<input type="file" name="plaatje" size="40" />
<input type="hidden" name="case" value="2" />
</td>
</tr>
<?
if($sql == 0)
{
echo '
<tr>
<td align="center" colspan="2">
<b>Naam avatar:</b>
</td>
</tr>
<tr>
<td align="center" colspan="2">
<input type="text" name="name" size="40" />
<input type="submit" name="submit_upload" value="Upload" />
</td>
</tr>
';
}
if($sql == 1)
{
echo '
<tr>
<td colspan="2" align="center"><b>Avatar van andere site:</b></td>
</tr>
<tr>
<td colspan="2" align="center">
<input type="text" name="avatar" size="55" />
<input type="hidden" name="case" value="2" />
<input type="submit" name="submit_avatar" value="Upload" />
</td>
</tr>
';
}
?>
</table>
</form>
<?
break;
case 2:
if(isset($_POST['submit_avatar']) AND $_POST['avatar'] !== "")
{
if($sql == 1)
{
$afb = @getimagesize($_POST['avatar']);
$width = $afb[0];
$height = $afb[1];
$explode = explode(".", $_POST['avatar']);
$ext = array_pop($explode);
if(!eregi("^http://",$_POST['avatar']))
echo '<b>Fout:</b> Uw avatar moet met http:// beginnen!';
elseif(!in_array($ext,$extensie))
{
echo '<b>Fout:</b> Uw avatar is niet van het type: ';
for($i = 0; $i < $aantal_extensies; $i++)
echo '<b>'.$possible_extensions[$i].'<b> ';
echo '<br />';
}
elseif($width > $max_width OR $height > $max_heigth)
{
echo '<b>Fout:</b> U heeft een te groot plaatje!<br />Maximale afmetingen:<br />';
echo '<b>Breedte:</b> '.$max_width.' <b>Hoogte:</b> '. $max_heigth;
}
elseif(!$afb)
echo '<b>Fout:</b> U moet wel een bestaande avatar invullen!';
else
{
unlink($avatar_oud);
mysql_query("UPDATE ".$tabel." SET avatar = '".$_POST['avatar']."' WHERE gebruikersnaam = '".$gebruikersnaam."'");
header("Location: avatar.php");
}
}
}
elseif(isset($_POST['submit_upload']) AND $_POST['plaatje'] !== "")
{
$file_size = round($_FILES['plaatje']['size'] / 1024);
$file_type = $_FILES['plaatje']['type'];
$file = basename($_FILES['plaatje']['name']);
$ext = explode(".", $file);
$file_extension = array_pop($ext);
$file_name = $_POST['name'];
$size = getimagesize($_FILES['plaatje']['tmp_name']);
$width = $size[0];
$height = $size[1];
if($sql == 1)
$file_name = $_COOKIE['gebruikersnaam'];
else
$file_name = $file_name;
$file2 = $file_name.".".$file_extension;
if($file_size > $groote)
echo '<b>Fout:</b> Uw avatar is groter dan <b>'.$groote.'</b> kb.<br />';
elseif(file_exists("$map$file2"))
echo '<b>Fout:</b> De naam die u gekozen heeft bestaat al!';
elseif($width > $max_width OR $height > $max_heigth)
{
echo '<b>Fout:</b> U heeft een te groot plaatje!<br />Maximale afmetingen:<br />';
echo '<b>Breedte:</b> '.$max_width.' <b>Hoogte:</b> '. $max_heigth;
}
else
{
if(!in_array(strtolower($file_extension),$extensie))
{
echo '<b>Fout:</b> Uw avatar is niet van het type: ';
for($i = 0; $i < $aantal_extensies; $i++)
echo '<b>'.$possible_extensions[$i].'<b> ';
echo '<br />';
}
else
{
if(move_uploaded_file($plaatje, $map . $file_name . "." . $file_extension))
{
$file = $map;
$file.= $file_name.".";
$file.= $file_extension;
if($sql == 1)
{
mysql_query("UPDATE ".$tabel." SET avatar = '".$file."' WHERE gebruikersnaam = '".$gebruikersnaam."'");
@unlink($avatar_oud);
header("Location: avatar.php");
}
else
echo 'Uw avatar is geupload!<br />';
echo 'Bekijk hem hier: <a href="'.$map . $file_name . "." . $file_extension.'">Afbeelding</a>';
}
else
{
echo 'Het uploaden van uw avatar is niet gelukt';
}
}
}
}
else
{
echo 'U moet wel wat invullen!';
}
break;
}
?>[/code]
Reacties
0