Avatar billede kimox Nybegynder
01. november 2005 - 22:07 Der er 11 kommentarer og
1 løsning

Hjælp til billede visning.

Hej eksperter..

Jeg har et lille problem med at kunne vise billeder frem på min side.. koden ser sådan herud:

<?php
$query = mysql_query("SELECT * FROM mini_galleri WHERE id='$id'");
$row = mysql_fetch_array($query); {
$sti = $row['sti'];
$sti = str_replace("../", "", $sti);
$sted = "$sti";
}
// Det antal billeder der skal vises ad gangen
$antal = 6;
// Henter startnummeret.
$num = ($_GET['num']) ? (int) $_GET['num'] : 0;
function GetFileName($file) {
$part = explode(".", $file);
$file = "";
for($i=0;$i<count($part);$i++) {
  $file = $file . $part[$i];
}

return $file;
}

if ($handle = opendir($sted)) {
    while (false !== ($file = readdir($handle))) {
        if ($file != "." && $file != ".." && $file != "Thumbs.db" && $file != "thumbs" && $file != "") {
            $files[] = $file;

        }
    }
    closedir($handle);
}
$td = 0;
sort($files);
echo "<center>";
// Tæller hvor mange filer der er
$antal_filer = sizeof($files);
// Sætter det næste og forrige nummer
$nextnum = $num+$antal;
$prevnum = $num-$antal;
// Tester om der skal laves en forrige eller næste link
if ($num >= $antal) echo "<a href='galleri.php?num=$prevnum'>Forrige side</a>&nbsp;&nbsp;&nbsp;";
if ($antal_filer > $nextnum) echo "<a href='galleri.php?num=$nextnum'>Næste side</a>";
echo "</center>\n<table cellpadding=\"0\" cellspacing=\"0\" width=\"100%\" align=\"center\"> ";
  for($i=$num;$i<$num+$antal;$i++){
        $td++;
        if($td == 1) {echo "<tr>\n"; }
        // Tester om der er flere billeder at lave
        if ($i < sizeof($files)){
  ?>
    <table cellpadding="0" cellspacing="0">
        <tr>
      <td align="center"><a href="java script:popImage('<? echo $dir.$files[$i]; ?>','<? echo $i; ?>')"><img src="<? echo $dir.$files[$i]; ?>" border="0" width="119" height="103"></a></td>
        </tr>
  </table>
    <?
        }
        if($td == 2) {echo "</tr>\n"; $td = 0;}
}
?>


Man kan se den fint henter det rigtige antal frem i på siden, men viser ikke billedet, fordi det er en forkert sti, den rigtige sti skal se sådan ud:

http://site.dk/map/pics/galleri/tester/billede1.jpg

men den ser sådan ud:
http://site.dk/map/pics/galleri/testerbillede1.jpg


og så skyder den i min side, som om den har en td eller tr for meget.. kan i se den ?
Avatar billede jakobdo Ekspert
01. november 2005 - 22:12 #1
Prøv at ret:
$dir.$files[$i]
til:
$dir."/".$files[$i]
Avatar billede kimox Nybegynder
01. november 2005 - 22:17 #2
Ja det løste det med billederne... kan du hjælpe med opstillingen, vil gerne vise dig en test side hvis det er ..
Avatar billede jakobdo Ekspert
01. november 2005 - 22:20 #3
Kan vi evt se siden?
Avatar billede kimox Nybegynder
01. november 2005 - 22:22 #4
ja, må jeg sende den på en mail ? eller kan jeg poste kildekoden på siden her?
Avatar billede kimox Nybegynder
01. november 2005 - 22:53 #5
Avatar billede kimox Nybegynder
01. november 2005 - 23:05 #6
har lige smidt
echo "<hr>";
show_source(__FILE__);

ind så nu kan du se hele koden
Avatar billede jakobdo Ekspert
02. november 2005 - 07:01 #7
Jeg må indrømme jeg ikke lige er vågen til at gennemskue hele din kode nu! :o)
Men du kunne evt lave den dovne løsning.
Test din side på: http://validator.w3.org/check?uri=http%3A%2F%2Fcasper1.wi2.ots.dk%2Fdm%2F

Når du har fået tilføjet doctype og character encoding.
Så kan du udrydde din fejl en for en. :o)
Avatar billede kimox Nybegynder
02. november 2005 - 16:28 #8
eeeej det mener du ikke hehe !
Avatar billede kimox Nybegynder
02. november 2005 - 22:49 #9
Hmm nu synes jeg sådan set jeg har rettet dem som der er flest fejl ved.. du kan selv se her:

http://validator.w3.org/check?uri=http%3A%2F%2Fvix-mix.dk%2Fdjmini%2Fgalleri.php%3Fid%3D9&charset=%28detect+automatically%29&doctype=Inline&ss=1&outline=1


kildekode med php:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>Djmini - Party pics</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<style type="text/css">
body {font-family:verdana; font-size: 12px; color:white}
td { font-family:verdana; font-size:11px}
H3
{font-family:verdana; font-size: 18px;
    MARGIN-TOP: 3px;
    MARGIN-BOTTOM: 3px

}
H4
{font-family:verdana; font-size: 16px;
    MARGIN-TOP: 3px;
    MARGIN-BOTTOM: 3px

}
H5
{font-family:arial; font-size: 14px;
    MARGIN-TOP: 3px;
    MARGIN-BOTTOM: 3px
}
ul { font-family:verdana; MARGIN-TOP: 3px; MARGIN-BOTTOM: 3px }
A
{
font-weight:bold;
    TEXT-DECORATION: none
}
A:hover
{   
    TEXT-DECORATION: underline
}
</style>
<Script Language="JavaScript" type="text/javascript">
PositionX = 100;
PositionY = 100;
defaultWidth  = 99;
defaultHeight = 86;
var AutoClose = true;
if (parseInt(navigator.appVersion.charAt(0))>=4){
var isNN=(navigator.appName=="Netscape")?1:0;
var isIE=(navigator.appName.indexOf("Microsoft")!=-1)?1:0;}
var optNN='scrollbars=no,width='+defaultWidth+',height='+defaultHeight+',left='+PositionX+',top='+PositionY;
var optIE='scrollbars=no,width=150,height=100,left='+PositionX+',top='+PositionY;
function popImage(imageURL,imageTitle){
if (isNN){imgWin=window.open('about:blank','',optNN);}
if (isIE){imgWin=window.open('about:blank','',optIE);}
with (imgWin.document){
writeln('<html><head><style type="text/css">body{margin:0px;}</style>');writeln('<sc'+'ript>');
writeln('var isNN,isIE;');writeln('if (parseInt(navigator.appVersion.charAt(0))>=4){');
writeln('isNN=(navigator.appName=="Netscape")?1:0;');writeln('isIE=(navigator.appName.indexOf("Microsoft")!=-1)?1:0;}');
writeln('function reSizeToImage(){');writeln('if (isIE){');writeln('window.resizeTo(100,100);');
writeln('width=100-(document.body.clientWidth-document.images[0].width);');
writeln('height=100-(document.body.clientHeight-document.images[0].height);');
writeln('window.resizeTo(width,height);}');writeln('if (isNN){');     
writeln('window.innerWidth=document.images["George"].width;');writeln('window.innerHeight=document.images["George"].height;}}');
writeln('function doTitle(){document.title="'+imageTitle+'";}');writeln('</sc'+'ript>');
if (!AutoClose) writeln('</head><body bgcolor=000000 scroll="no" onload="reSizeToImage();doTitle();self.focus()">')
else writeln('</head><body bgcolor=000000 scroll="no" onload="reSizeToImage();doTitle();self.focus()" onblur="self.close()">');
writeln('<img name="George" src='+imageURL+' style="display:block"></body></html>');
close();       
}}
</script>
</head>

<body bgcolor="#333300" text="#CCCCCC" leftmargin="0" topmargin="0" marginwidth="0" marginheight="0" link="#CCCCCC" vlink="#FFFFFF" alink="#FFFFFF">
<table width="760" border="0" cellpadding="0" cellspacing="0" height="63">
  <tr>
    <td height="42" valign="top">
<table width="760" border="0" cellpadding="0" cellspacing="0" height="46" id="table1">
  <tr>
    <td width="514" height="100%" valign="top" background="pics/name_bk.jpg"><b><i>
    </i></b></td>
    <td width="246" height="39"></td>
  </tr>
  </table>
    </td>
  </tr>
  <tr>
    <td height="21" valign="top"><img src="pics/wline_admin.gif" width="726" height="21" alt=""></td>
  </tr>
</table>
<table width="760" border="0" cellpadding="0" cellspacing="0">
  <tr>
    <td width="185" valign="top" rowspan="2" STYLE="background-image: url(pics/menu_bk.jpg); background-repeat: no-repeat; background-position: left top">
      <table width="185" border="0" cellspacing="0" cellpadding="0">
        <tr>
          <td height="45">&nbsp;</td>
        </tr>
        <tr>
          <td background="pics/menu1.jpg" height="25"><div align="center"><a href="index.php">Forside</a></div></td>
        </tr>
        <tr>
          <td background="pics/menu2.jpg" height="25"><div align="center"><a href="nyheder.php">Nyheder</a></div></td>
        </tr>
        <tr>
          <td background="pics/menu3.jpg" height="25"><div align="center"><a href="top.php">Top 10 hits </a></div></td>
        </tr>
        <tr>
          <td background="pics/menu4.jpg" height="25"><div align="center"><a href="gb.php">G&aelig;stebog</a></div></td>
        </tr>
        <tr>
          <td background="pics/menu5.jpg" height="25"><div align="center"><a href="pics.php">Party pics </a></div></td>
        </tr>
        <tr>
          <td background="pics/menu6.jpg" height="25"><div align="center"><a href="kalender.php">Kalender</a></div></td>
        </tr>
        <tr>
          <td background="pics/menu7.jpg" height="25"><div align="center"><a href="crew.php">Crew</a></div></td>
        </tr>
        <tr>
          <td background="pics/menu8.jpg" height="25"><div align="center"><a href="kontakt.php">Kontakt </a></div></td>
        </tr>
        <tr>
          <td background="pics/menu9.jpg" height="25"><div align="center"><a href="links.php">Links</a></div></td>
        </tr>
      </table></td>
    <td width="575" valign="top" height="26"><img src="pics/m2.jpg" width="204" height="25" alt=""></td>
  </tr>
  <tr>
    <td height="414" valign="top" width="577">
      <table width="100" border="0" cellspacing="0" cellpadding="0" id="table2">
        <tr>
          <td><img src="pics/content_top.gif" width="536" height="15" alt=""></td>
        </tr>
        <tr>
          <td background="pics/content_bk.gif" height="361">
            <table width="100%" height="383" cellspacing="5" border="0" align="center" cellpadding="5">
              <tr><td width="100%" valign="top"><h5>Party pics.</h5>
                  <hr size=1>
                <center><?
require "db.php";
$id = $_GET['id'];
$query = mysql_query("SELECT * FROM mini_galleri WHERE id='$id'");
$row = mysql_fetch_array($query); {
$komm = $row['komm'];
$overskrift = $row['overskrift'];
$dato = $row['dato'];
$sti = $row['sti'];
$sti = str_replace("../", "", $sti);
$id = $row['id'];
echo "<table width=\"80%\" border=\"0\" cellpadding=\"0\" cellspacing=\"0\" bgcolor=\"444403\">
  <tr>
<td width=\"6%\" valign=\"top\"><b>Overskrift:</b></td>
<td colspan=\"3\" valign=\"top\">$overskrift</td>
  </tr>
<tr>
<td valign=\"top\"><div align=\"left\"><b>Dato:</b></div></td>
<td width=\"60%\" valign=\"top\">$dato</td>
<td width=\"5%\" valign=\"top\"><div align=\"right\"><b>Antal:</b></div></td>
<td width=\"29%\" valign=\"top\">";
$pics = array("jpg","jpeg","gif","png","tif","bmp");
$dir = "$sti";
$total = 0;
if (is_dir($dir))
{
    if ($dh = opendir($dir))
    {
        while (($file = readdir($dh)) !== false)
        {
            $ext = end(explode(".",$file));
            if(in_array($ext,$pics) && is_file($dir."/".$file))
            {
                $total++;
            }
        }
        closedir($dh);
    }
}
echo "&nbsp;$total Billede(r)";
echo"</td>
</tr>
<tr>
  <td>&nbsp;</td>
  <td colspan=\"3\">&nbsp;</td>
</tr>
<tr>
  <td valign=\"top\"><b>Kommentar:</b></td>
  <td colspan=\"3\" valign=\"top\">$komm</td>
</tr>
</table>";
}
?><?php
$query = mysql_query("SELECT * FROM mini_galleri WHERE id='$id'");
$row = mysql_fetch_array($query); {
$sti = $row['sti'];
$sti = str_replace("../", "", $sti);
$sted = "$sti";
}
// Det antal billeder der skal vises ad gangen
$antal = 6;
// Henter startnummeret.
$num = ($_GET['num']) ? (int) $_GET['num'] : 0;
function GetFileName($file) {
$part = explode(".", $file);
$file = "";
for($i=0;$i<count($part);$i++) {
  $file = $file . $part[$i];
}

return $file;
}

if ($handle = opendir($sted)) {
    while (false !== ($file = readdir($handle))) {
        if ($file != "." && $file != ".." && $file != "Thumbs.db" && $file != "thumbs" && $file != "") {
            $files[] = $file;

        }
    }
    closedir($handle);
}
$td = 0;
sort($files);
// Tæller hvor mange filer der er
$antal_filer = sizeof($files);
// Sætter det næste og forrige nummer
$nextnum = $num+$antal;
$prevnum = $num-$antal;
// Tester om der skal laves en forrige eller næste link
if ($num >= $antal) echo "<a href='galleri.php?num=$prevnum'>Forrige side</a>&nbsp;&nbsp;&nbsp;";
if ($antal_filer > $nextnum) echo "<a href='galleri.php?num=$nextnum'>Næste side</a>";
echo "</center>\n<table cellpadding=\"0\" cellspacing=\"0\" width=\"100%\" align=\"center\"> ";
  for($i=$num;$i<$num+$antal;$i++){
        $td++;
        if($td == 1) {echo "<tr>\n"; }
        // Tester om der er flere billeder at lave
        echo "<td align=\"center\" width=\"25%\">";
          if ($i < sizeof($files)){
  ?>

    <table cellpadding="0" cellspacing="0">
        <tr>
      <td align="center"><a href="java script:popImage('<? echo $sted."/".$files[$i]; ?>','<? echo $i; ?>')"><img src="<? echo $sted."/".$files[$i]; ?>" border="0" width="119" height="103" alt=""></a></td>
        </tr>
  </table>

    <?
    }
        if($td == 2) {echo "</td></tr>\n"; $td = 0;}


?>      </table></td>
        </tr>
        <tr>
          <td><img src="pics/content_bottom.gif" width="536" height="16" alt=""></td>
        </tr>
      </table>
    </td>
  </tr>
</table>
<table width="760" border="0" cellspacing="0">
  <tr>
    <td width="183"><div align="center"></div></td>
    <td width="25"><div align="center"></div></td>
    <td width="480"><div align="center"><span style="font-size:9px">Copyright &copy; 2005 [www.djmini.dk]</span></div></td>
    <td width="25"><div align="center"><a href="adm/"><img src="pics/krone.gif" width="18" height="17" border="0" alt="Admin system"></a></div></td>
    <td width="37">&nbsp;</td>
  </tr>
</table>
</body>
</html>
Avatar billede kimox Nybegynder
02. november 2005 - 22:52 #10
Glemte at sige, at jeg har fået den skubbet ind, nu driller den bare i bunden af siden.
Avatar billede kimox Nybegynder
04. november 2005 - 13:09 #11
har rettet den, uden hjælp. ellers tak.

-lukket-
Avatar billede jakobdo Ekspert
04. november 2005 - 13:22 #12
What the fuck?
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
Vi tilbyder markedets bedste kurser inden for webudvikling

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