Her er et eksempel. Vi er jo lidt væk fra emnet i denne post, men det går jo nok :)
Du skal bare kopier koden ind i body på et php doc, du kunne kalde det: add.php
Det er kun jpg billder som kan uploades, der er par steder hvor du skal tilrette det, men det skulle gerne være nemt at se. Og alt efter hvilket web-hotel du har kan der være en grænse på hvor stort billede du kan uploade, jeg kan max uploade 1mb store billeder ca. hos one.com.
Du skulle købe denne her bog:
http://www.sitepoint.com/books/phpmysql1/<?php
include_once ("inc/db.inc.php");
if (isset($_POST['submit'])) {
$txt = $_POST['txt'];
$img = $_FILES['userFile']['name'];
// Her indsætte data i databasen.
$sql = "INSERT INTO billeder SET
txt = '$txt',
img = '$img'";
if (@mysql_query($sql)) {
echo '<p>Tilføjet indlæg</p>';
} else {
echo '<p>Error: ' . mysql_error() . '</p>' ;
}
}
// Function til at resize billede
function resize( $filename, $newfilename, $maxw, $maxh )
{
$srcim = imagecreatefromjpeg( $filename );
$ow = imagesx( $srcim );
$oh = imagesy( $srcim );
$wscale = $maxw / $ow;
$hscale = $maxh / $oh;
$scale = ( $hscale < $wscale ? $hscale : $wscale );
$nw = round( $ow * $scale, 0 );
$nh = round( $oh * $scale, 0 );
$dstim = imagecreatetruecolor( $nw, $nh );
imagecopyresampled( $dstim, $srcim, 0, 0, 0, 0, $nw, $nh, $ow, $oh );
imagejpeg( $dstim, $newfilename, 85 ); // 85 er kvaliteten på billede 100 er max.
imagedestroy( $dstim );
imagedestroy( $srcim );
return file_exists($newfilename);
}
// Function slut
// Variabler, her skal du rette $uploadDir, $maxHeight, $maxWidth.
// Functionen holder aspect så derfor skal $maxHeight og $maxWidth være ens.
$uploadDir = "photo/"; //Husk mappen skal chmod'es til 644, hvor skal billede ligge
$maxHeight = 500; // Indstil max højde
$maxWidth = 500; // Indstil max bredde
$maxSize = 4; //Angives i MB
$pics = array('jpeg','jpg','jpe'); //Hvilke filtyper vil vi godtage? Kun .jpg
$maxSize = $maxSize * 1024 * 1024;
if($_FILES['userFile']['size'] > 0)
{
$uploadfile = $uploadDir . basename($_FILES['userFile']['name']);
if($_FILES['userFile']['size'] > $maxSize)
{
echo "Dit billede er for stort, prøv med mindre...";
exit();
}
$ext = strtolower(end(explode('.',$_FILES['userFile']['name'])));
if(!in_array($ext,$pics))
{
echo "Forkert billede format, prøv med et andet...";
exit();
}
if(!resize( $_FILES['userFile']['tmp_name'], $uploadfile, $maxWidth, $maxHeight ))
{
echo "Det fejlede at resize billedet : " . $uploadfile . "! Prøv igen<br />";
}
else
{
echo '<p>Billede er nu Tilføjet</p>';
}
}
?>
<FORM enctype="multipart/form-data" method="post" action="<?php $_SERVER['PHP_SELF']; ?>">
<label>Tekstfelt:</label>
<textarea name="txt"></textarea>
<label>Billede:</label>
<input name="userFile" type="file"/>
<input type="submit" name="Submit" value="Send"/>
</FORM>