Index.php (Siden der viser galleri og sådan noget):
[code]
<?php
//Der skal anvendes en session i forbindelse med denne side
session_start();
include 'db_con.php';
?>
<!DOCTYPE html>
<html>
<head>
<META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=UTF-8">
<title>Upload af billeder til galleri</title>
<link rel="stylesheet" href="/files/style.css" type="text/css" media="screen" />
<!-- Load jQuery library -->
<script type="text/javascript" src="/files/js/jquery-1.5.2.min.js"></script>
<!-- Tooltip-->
<script src="/files/js/jquery.tipTip.js" type="text/javascript">
</script>
<script src="/files/js/jquery.tipTip.minified.js" type="text/javascript">
</script>
<script type='text/javascript'>
//<![CDATA[
$(function(){
$(".someClass").tipTip({maxWidth: "auto", edgeOffset: 2});
});
//]]>
</script><!-- End Tooltip-->
<!-- Fancybox -->
<script type="text/javascript" src="/files/fancybox/fancybox/jquery.mousewheel-3.0.2.pack.js">
</script>
<script type="text/javascript" src="/files/fancybox/fancybox/jquery.fancybox-1.3.1.js">
</script>
<link rel="stylesheet" type="text/css" href="/files/fancybox/fancybox/jquery.fancybox-1.3.1.css" media="screen" />
<script type="text/javascript">
//<![CDATA[
$(document).ready(function() {
$("a[rel=galleri]").fancybox({
'transitionIn' : 'elastic',
'transitionOut' : 'elastic',
'titlePosition' : 'over',
'titleFormat' : function(title, currentArray, currentIndex, currentOpts) {
return '<span id="fancybox-title-over">Image ' + (currentIndex + 1) + ' / ' + currentArray.length + (title.length ? ' ' + title : '') + '<\/span>';
}
});
});
//]]>
</script>
<script type="text/javascript">
var _gaq = _gaq || [];
_gaq.push(['_setAccount', 'UA-20115099-9']);
_gaq.push(['_trackPageview']);
(function() {
var ga = document.createElement('script'); ga.type = 'text/javascript'; ga.async = true;
ga.src = ('https:' == document.location.protocol ? '
https://ssl' : '
http://www') + '.google-analytics.com/ga.js';
var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(ga, s);
})();
</script>
</head>
<body class="home page page-id-4 page-template page-template-default">
<form name="logaf" enctype="multipart/form-data" method="post" action="logaf.php">
<input type="submit" value="Log af!" />
</form>
<div id="topline"> </div>
<div id="triangle"></div>
<div id="container">
<div id="page">
<div id="header">
<div id="headerimg"> </div>
<div id="announce">- VI ER STOLTE AF AT ANNONCERE FØDSLEN AF -</div>
<div id="nav">
<ul>
<li class="page_item page-item-8 none"><a href="#" class="someClass" title="Hans fødselsdag">FØDT D.</a></li>
<li class="none page_item page-item-15"><a href="#" class="someClass" title="Læs målene">MÅLENE</a></li>
<li class="page_item page-item-6 current_page_item"><a href="index.php" class="someClass" title="Se billeder af ham">GALLERI</a></li>
<li class="page_item page-item-4"><a href="index.php" title="Accueil">Accueil</a> </li>
<li class="none page_item page-item-16"><a href="#" class="someClass" title="De stolte forældre">FORÆLDRE</a></li>
<li class="none page_item page-item-121"><a href="#" class="someClass" title="Læs om Alberts liv">BLOG</a></li>
<li class="none page_item page-item-18"><a href="#" class="someClass" title="Kontakt os">KONTAKT</a></li>
</ul>
<div id="logo"><a href="index.php"><img src="/files/images/logo.png" class="someClass" title="En stjerne er født ved navn Albert Johansen" alt="Write something about your baby" /></a></div>
</div>
</div>
<hr />
<div id="content" class="narrowcolumn">
<div class="post" id="post-4">
<form name="sletformular" enctype="multipart/form-data" method="post" action="thumb.php">
<h2>Tilføj billede til forsiden</h2>
<label for="billede_tekst">Tekst til billede:</label>
<input type="text" name="billede_tekst" /><br />
<label for="billede">Vælg filen:</label>
<input type="file" name="billede" id="billede" /><br />
<input type="submit" name="submit" value="Send" />
</form>
<div class="entry">
<div id="gallery-back">
<?
$sql = "SELECT * FROM admin_galleri";
$resultat = mysql_query($sql) or die('Fail in noget sql');
while ($raekke = mysql_fetch_array($resultat)) {
extract($raekke);
?>
<?
}
?>
<?php
/* Antallet af poster vi ønsker vist på hver side */
$pr_side = 6;
/* Vi tæller antallet af poster i tabellen husk at ændre ‘table' til dit eget tabelnavn */
$antal = mysql_result(mysql_query("SELECT COUNT(*) FROM admin_galleri"),0) or die(mysql_error());
/* Hvis visfra-variablen ikke findes i URL-feltet og den ikke er et nummer og den er større end antallet i databasen, så sættes den til 0, ellers sættes den til værdien fra URL feltet */
$vis_fra = (isset($_GET["visfra"]) && is_numeric($_GET["visfra"]) && $_GET["visfra"] < $antal) ? $_GET["visfra"] : 0;
/* Vi laver et database udtræk med limit, så den kun hiver det rigtige antal ud fra tabellen, husk at ændre ‘table' til dit eget tabelnavn */
$query = mysql_query ("SELECT * FROM admin_galleri ORDER BY pic_ID DESC limit $vis_fra, $pr_side") or die(mysql_error());
$x = 1;
/* Vi kører en while og udskriver data, det jeg har sat på er blot et eksempel */
while ($row = mysql_fetch_array($query)) {
extract($row);
?>
<div class="pic_back">
<form name="sletbillede" enctype="multipart/form-data" method="post" action="db_action.php?image=delete" style="position: absolute; margin-top: 0px; margin-left: 0px;">
<input type="hidden" name="id" value="<? echo $pic_ID; ?>" />
<input type="hidden" name="billede" value="<? echo $pic_billede; ?>" />
<input type="hidden" name="thumb" value="<? echo $pic_thumb; ?>" />
<input type="submit" value="Slet billede" />
</form>
<a href="/files/images/gallery/large/<? echo $pic_billede; ?>" rel="galleri">
<img src="/files/images/gallery/thumbs/<? echo $pic_thumb; ?>" alt="<? echo $pic_tekst; ?>" width="284" height="163" class="someClass" title="Klik for at se et større billede" />
</a>
</div>
<?php
}
?>
<div class="pagination">
<?php
/* Der undersøges om der skal udskrives et "forrige side"-link, er dette tilfældet udskrives linket */
if ($vis_fra > 0) {
$back= $vis_fra - $pr_side;
echo "<a href='$_SERVER[PHP_SELF]?visfra=$back' class='prev_next'>Forrige</a> ";
}
$page = 1;
/* Alle siderne udskrives så man med et klik kan få resultaterne fra fx 90-100 */
for ($start = 0; $antal > $start; $start = $start + $pr_side) {
if($vis_fra != $page * $pr_side - $pr_side) {
echo "<a href='$_SERVER[PHP_SELF]?visfra=$start'>$page</a> ";
} else {
echo $page." ";
}
$page++;
}
/* Der undersøges om der skal udskrives et "næste side"-link, er dette tilfældet udskrives linket */
if ($vis_fra < $antal - $pr_side) {
$next = $vis_fra + $pr_side;
echo " <a href='$_SERVER[PHP_SELF]?visfra=$next' class='prev_next'>Næste</a>";
}
?>
</div>
<span class="born"><img src="/files/images/dots_bottom.png" alt="dots" width="929" height="50" /></span>
</div>
</div>
</div>
</div>
<hr />
<div id="footer">
<div id="nav-footer" style="margin-top:-20px;">Albert Johansen, født af Gitte Johansen - Far: Morten Johansen</div>
</div>
</div>
</div>
</body>
</html>
[/code]
thumb.php (Laver et almindeligt billede og en thunmbnail og bruger header location til at føre tilbage til index.php):
[code]
<?php
include 'db_con.php';
// Der skabes et tilf?ldigt nummer imellem 1000 og 9999, derefter tilfÀjes det tilf?ldige nummer til filnavnet
$rand = rand(1000,99999);
$dir = "../files/images/gallery/large/"; // Sti til hvor det tilpassede billede skal v?re. (Der skal huske en streg i slutningen af stien - /)
$dir2 = "../files/images/gallery/thumbs/"; // Sti til hvor det tilpassede billede skal v?re. (Der skal huske en streg i slutningen af stien - /)
move_uploaded_file($_FILES["billede"]["tmp_name"], $dir);
$billede_tekst = $_POST['billede_tekst'];
// Samler POST variablerne i et array, og array smides i en variabel.
$postvars = array(
"image" => trim($_FILES["billede"]["name"]),
"image_tmp" => $_FILES["billede"]["tmp_name"],
"image_size" => (int)$_FILES["billede"]["size"]
);
// Array med tilladte extensions.
$valid_exts = array("jpg","jpeg","gif","png");
// V?lger extensionen udfra filen som skal uploades.
$ext = end(explode(".",strtolower(trim($_FILES["billede"]["name"]))));
// Checker om extensionen er godkendt
if(in_array($ext,$valid_exts)){
if($ext == "jpg" || $ext == "jpeg"){
$image = imagecreatefromjpeg($postvars["image_tmp"]);
}
else if($ext == "gif"){
$image = imagecreatefromgif($postvars["image_tmp"]);
}
else if($ext == "png"){
$image = imagecreatefrompng($postvars["image_tmp"]);
}
// Henter hÀjde og bredde af billedet der skal uploades
$size = getimagesize($postvars["image_tmp"]);
$bla = "284";
$newwt = $size["0"];
$newht = $newwt / $bla;
$new_width = $bla;
$new_height = floor( $size["1"] * ( $bla / $size["0"] ) );
// Midlertidig fil skabes
$tmp = imagecreatetruecolor($new_width,$new_height);
$thumb = imagecreatetruecolor(284, 163);
// Kopierer billedet og ?ndrer stÀrrelsen pÎ billedet
imagecopyresized($tmp, $image, 0, 0, 0, 0, $new_width, $new_height, $size["0"], $size["1"]);
$yearh1 = $new_width / 2;
$yearh12 = $yearh1 - 142;
$yearh2 = $new_height / 2;
$yearh21 = $yearh2 - 84;
imagecopyresized($thumb, $tmp, 0, 0, $yearh12, $yearh21, 284, 163, 284, 163);
$full_name = substr($postvars["image"], 0, strrpos($postvars["image"], '.'));
$filename = $dir2 . $rand . "_" . $full_name . "_thumb." . $ext;
$filename2 = $dir . $rand . "_" . $full_name . "." . $ext;
$thumbname = $rand . "_" . $full_name . "_thumb." . $ext;
$largename = $rand . "_" . $full_name . "." . $ext;
// Billede fil skabes med 100% quality
imagejpeg($thumb,$filename,70);
move_uploaded_file($_FILES['billede']['tmp_name'], $filename2);
imagedestroy($image);
imagedestroy($thumb);
$sql = "INSERT INTO admin_galleri (pic_tekst,pic_billede,pic_thumb) VALUES('$billede_tekst','$largename','$thumbname')";
mysql_query($sql) or die('Den fejler1');
//Hvis ikke filen er en tilladt extension, sÎ melder siden fejl
header("location:index.php");
exit();
}else {
print 'FEJL !';
}
?>
[/code]