Avatar billede alluc Nybegynder
21. juli 2008 - 20:52 Der er 1 kommentar og
1 løsning

Udvikling af galleri

Hej Eksperter,

Jeg har følgende javascript galleri, som jeg er gerne vil have kodet om, således at det bliver muligt at det kan indgå i mit nuværende kode.

Jeg har en side der fungere således: Jeg har en produktside, hvor man har mulighed for at tilføje/redigere/fjerne produkter - som det er nu kan der kun tilføjes et billede som bliver vist på den produktside, men kunne så godt tænke mig at man ved at klikke ind på hvert enkelt produkt, så kan man se et billedegalleri med flere billeder af hvert enkelt produkt.

------------------------------------------
Her er gallerifilen:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xml:lang="da" lang="da" xmlns="http://www.w3.org/1999/xhtml">
<head>
  <title></title>
  <meta name="description" content="Billedgalleri" />
  <meta name="robots" content="none" />
  <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
  <meta http-equiv="Content-Style-Type" content="text/css" />

<script type="text/javascript">
function showPic(whichpic) {
  if (!document.getElementById("pladsholder")) return true;
  var source = whichpic.getAttribute("href");
  var placeholder = document.getElementById("pladsholder");
  placeholder.setAttribute("src",source);
  if (!document.getElementById("besrkivelse")) return false;
  if (whichpic.getAttribute("title")) {
    var text = whichpic.getAttribute("title");
  } else {
    var text = "";
  }
  var description = document.getElementById("beskrivelse");
  if (description.firstChild.nodeType == 3) {
    description.firstChild.nodeValue = text;
  }
  return false;
}
function prepareGallery() {
  if (!document.getElementsByTagName) return false;
  if (!document.getElementById) return false;
  if (!document.getElementById("pixgalleri")) return false;
  var galleri = document.getElementById("pixgalleri");
  var links = galleri.getElementsByTagName("a");
  for ( var i=0; i < links.length; i++) {
    links[i].onclick = function() {
      return showPic(this);
    }
  /* links[i].onkeypress = links[i].onclick;*/
  }
}

function addLoadEvent(func) {
  var oldonload = window.onload;
  if (typeof window.onload != 'function') {
    window.onload = func;
  } else {
    window.onload = function() {
      oldonload();
      func();
    }
  }
}

addLoadEvent(prepareGallery);
</script>

<style type="text/css" media="screen">
html, body {margin:0;padding:0;border:0;}
ul, li {margin:0;padding:0;}
img {border:none;}
#page{width:30em;margin:1em auto;border:1px solid black;padding:1em;}
#links ul {list-style:none;}
#links li {line-height:100%;display:inline;margin-left:5px;}
#pix  {width:185px;height:300px;float:left;position:relative;}
#pix img {width:185px;height:274px;}
.cl {clear:left;}
</style>
</head>
<body>
<div id="page">
<h2>Up, up in the Sky </h2><br />
<div id="pix">
<img id="pladsholder" src="pladsholder.jpg" alt="Billedgalleri" />
<p id="beskrivelse">Vælg et billede</p>
</div>
<div id="links">
<ul id="pixgalleri">
    <li>
      <a tabindex="1" href="00010002.jpg" title="Dragefly">
      <img src="00010002small.jpg" width="65" height="96" alt="Dragefly" /></a>
    </li>
    <li>
      <a tabindex="2" href="00010003.jpg" title="Balloner">
      <img src="00010003small.jpg" width="65" height="97" alt="" /></a>
    </li>
    <li>
      <a tabindex="3" href="00010004.jpg" title="Paraglider">
      <img src="00010004small.jpg" width="65" height="97" alt="" /></a>
    </li>
    <li>
      <a tabindex="4" href="1104.jpg" title="Helt op!">
      <img src="1104small.jpg" width="65" height="97" alt="" /></a>
    </li>
  </ul>
</div>

<div class="cl"></div>
</div>
</body>
</html>

----------------------------------------------
Opretprodukt.php

<?



if(!isset($_SESSION['admin'])) {

    include("login/admincheck.php");

} else {

   

    $type = $_GET['type'];


    echo "<form action='index.php?side=opretproduktnu&type=$type' method='post' enctype='multipart/form-data'>";

    echo "<b>Billede:</b><br /><input size='30' type='file' name='upfil' /><br /><br />";   

    echo "<b>Produktnavn:</b><br /><input size='30' type='text' name='produkt'><br /><br />";

    echo "<b>Materiale(r):</b><br /><input size='30' type='text' name='mat'><br /><br />";

    echo "<b>Beskrivelse:  </b><br /><textarea name='beskrivelse' rows='8' cols='30'></textarea><br /><br />";

    echo "<b>Pris (Skriv kun tallet uden ,00 eller DKK):  </b><br /><input size='30' type='text' name='pris'><br /><br />";

    echo "<b>Farver:  </b><br /><input type='checkbox' name='groen' />GRØN<br />";
   
    echo "<input type='checkbox' name='blaa' />BLÅ<br />";
   
    echo "<input type='checkbox' name='gul' />GUL<br />";
   
    echo "<input type='checkbox' name='sort' />SORT<br />";
   
    echo "<input type='checkbox' name='hvid' />HVID<br /><br />";
   
    echo "Andre farver: (Separer med komma - Eks.: Rød, Pink):<br /><input type='text' name='farve'><br /><br />";

    echo "<b>Størrelser: (Separer med komma - Eks.: 2-3 år, 3-4 år)</b><br /><input type='text' name='str'>";

    echo "<br/><br/><input type='submit' name='submit' value='Tilføj produkt'>";

    echo "</form>";

}



?>

--------------------------------------------
Opretproduktnu.php
<?



if(!isset($_SESSION['admin'])) {

    include("login/admincheck.php");

} else {


$id = $_REQUEST['id'];

$produkt = $_REQUEST['produkt'];

$type = $_GET['type'];

$mat = $_REQUEST['mat'];

$pris = $_REQUEST['pris'];

$beskrivelse = $_REQUEST['beskrivelse'];

$farve = "";

If (isset($_REQUEST['groen'])) {

$farve = $farve . "grøn,";

}

If (isset($_REQUEST['blaa'])) {

$farve = $farve . "blå,";

}

If (isset($_REQUEST['gul'])) {

$farve = $farve . "gul,";
}

If (isset($_REQUEST['sort'])) {

$farve = $farve . "hvid,";

}

If (isset($_REQUEST['hvid'])) {

$farve = $farve . "hvid,";

}

$farve = $farve . $_REQUEST['farve'];

$str = $_REQUEST['str'];

$upfil = $_REQUEST['upfil'];



    ///*** FIL START FIL START ***///

               

        function replace_string($ind_str){

            $soketter = array("æ","ø","å","Æ","Ø","Å"," ");

            $byttil = array("ae","oe","aa","AE","OE","AA","_");

            $tekst = str_replace($soketter,$byttil,$ind_str);

            return $tekst;

        }

        function resize( $filename, $newfilename, $maxw, $maxh ){

            $result = false;

            $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 );

            $result = imagejpeg( $dstim, $newfilename, 85 );

            imagedestroy( $dstim );

            imagedestroy( $srcim );

            return $result;

        }

        if(isset($_POST['submit'])){

            if($_FILES["upfil"]["size"] > 0) {

            $konfiguration["upload_bibliotek"] = "./produkter";

            $konfiguration["max_stoerrelse"] = "10000";

           

            /* Hvor flytter vi fra og til */

            $fra = $_FILES["upfil"]["tmp_name"];

            $til = $konfiguration["upload_bibliotek"] . "/" . replace_string($_FILES["upfil"]["name"]);

            $til_t = $konfiguration["upload_bibliotek"] . "/thumb_" . replace_string($_FILES["upfil"]["name"]);

               

            /* Check PHP-version */

            list($major, $minor, $rev) = explode(".", phpversion());

            if($major < 4){

              die("Jeg kan kun arbejde med PHP 4.0.0 eller derover");

              }

           

            /* Skab de "moderne" arrays hvis vi arbejder med en aeldre PHP */

              if($minor < 1){

              $_FILES = $HTTP_POST_FILES;

            $_POST = $HTTP_POST_VARS;

            $_SERVER = $HTTP_SERVER_VARS;

              }

           

              /* Accepterer vi filens stoerrelse? */

              $fil_stoerrelse = filesize($fra)/1024;

              if($fil_stoerrelse > $konfiguration["max_stoerrelse"]){

              die("Desværre - filen er for stor. Jeg accepterer kun " .

            $konfiguration["max_stoerrelse"] . "kb, og din fil fylder " .

            ceil($fil_stoerrelse, 1) . " kb");

              }

           

              if(function_exists("move_uploaded_file")) {

            #resize($fra, $til, 324, 216);
            resize($fra, $til, 400, 400);

              resize($fra, $til_t, 170, 100);

            }

            else {

              copy($fra, $til);

            }

            }

       

           

                $filnavn = $til;

                $filnavnthumb = $til_t;

            }

           

        ///*** FIL SLUT  FIL SLUT ***///





$query_insert = mysql_query("INSERT INTO testprodukter (id, produkt, type, pris, beskrivelse, farve, str, mat, filnavn, filnavnthumb)

VALUES ('$id', '$produkt', '$type', '$pris', '$beskrivelse', '$farve', '$str', '$mat', '$filnavn', '$filnavnthumb')")

or die(mysql_error());

header("location:index.php?side=produkter&type=$type");

}



?>

På forhånd tak - jeg kan kun give point for det - Jeg vil gerne sende filerne hvis det vil gøre det lettere for jer. :)
Avatar billede alluc Nybegynder
23. juli 2008 - 19:14 #1
Lukker pga. manglende hjælp :)
Avatar billede Slettet bruger
29. juli 2008 - 18:42 #2
Er det stadig aktuelt?
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
IT-kurser om Microsoft 365, sikkerhed, personlig vækst, udvikling, digital markedsføring, grafisk design, SAP og forretningsanalyse.

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester