Avatar billede syswatch Novice
27. december 2005 - 19:32 Der er 6 kommentarer og
2 løsninger

Vil ikke hente records over 10

Hejsa...
Jeg er stødt ind i et lille sjovt problem som jeg ikke lige kan løse..
Jeg bruger dette script til at hente et galleri frem med.

<?php
include("dbcon.php");

$query2 = "select * FROM galleri WHERE Id='".$_GET["gid"]."'";
$result2 = mysql_query($query2) or die(mysql_error());

  if($row2 = mysql_fetch_array($result2)) {
  extract($row2);
  print "<b>".$overskrift."...</b><br /><br />$galcomment<br /><br />";
  }
?>

Mit problem er bare at nu er jeg nået til record nr 10, og når jeg trykker på linket, så får jeg bare en fejl, med at den ikke kan finde siden.
(www.syswatch.dk under galleri.)
Jeg forstår det simplethen ikke, for det virker fint lige op til record nr 9.
Avatar billede repox Seniormester
27. december 2005 - 19:58 #1
det er ikke nemt at hjælpe når der ikke er link til dine gallerier, når vi ikke ved hvilken side problemet præcist opstår på...
Avatar billede syswatch Novice
27. december 2005 - 20:00 #2
Det er under galleri, det øverste galleri der hedder Projekt R6 renovering.
Når man trykker på det link skriver den at den ikke kan finde siden, og alle de andre virker fint..
Avatar billede repox Seniormester
27. december 2005 - 20:10 #3
...

når jeg åbner syswatch.dk så er der intet link til dit galleri... kun 'de 3 mest viste billeder fra galleriet'...så åbner den bare et galleri og derfra er der heller ingen links til andre gallerier...

men efter lidt roden går jeg ud fra at det er visgal.php problemet opstår i eftersom jeg får fejl på eks. gid=12... hvad består visgal.php af?
Avatar billede syswatch Novice
27. december 2005 - 20:20 #4
Der skulle gerne være en menulinie lige under top billedet, hvor der står galleri.
Du får lige en kopi af visgal.php

----- Start -----
<div class="menusider">
<br />
<?php
include("dbcon.php");

$query2 = "select * FROM galleri WHERE Id='".$_GET["gid"]."'";
$result2 = mysql_query($query2) or die(mysql_error());

  if($row2 = mysql_fetch_array($result2)) {
  extract($row2);
  print "<b>".$overskrift."...</b><br /><br />$galcomment<br /><br />";
  }


$path = "galleri/$mappe/";
$handle = opendir($path);
$cells = 5; // Antal celler ved siden af hinanden
$cellcount = 1;
while (($fil = readdir($handle)) !== false) {
    if ($fil != "." && $fil != ".." && substr($fil,-3) == "jpg") {
        $images[] = $fil;
    }
}
closedir($handle);
sort($images);
print "<table align=\"center\" border=\"0\"><tr>";

foreach ($images AS $key => $value) {
    echo "<td valign=\"bottom\" align=\"center\">";

$thumbs = "thumbs/";
$thumbfile = $path . $thumbs . $value;
if (file_exists($thumbfile)) {

        echo "<a href=\"#\" onclick=\"popUp('vispic.php?gal=$mappe&show=$key'); return false\"><img src=\"galleri/".$mappe."/thumbs/$value\" alt=\"$value\" border=\"0\"></a>";

}else{

// Laver thumbnails til galleriet.
    #-+ Read the source image
    $src_img = ImageCreateFromJPEG($path.$value);

    #Vælg bredden
    $tn_w = "100";

    #Hent billedets bredde og højde
    $imginfo = getimagesize($path.$value);
    $org_w = $imginfo[0];
    $org_h = $imginfo[1];

    #Beregn højden i forhold til bredden
    $tn_h = floor($tn_w * $org_h / $org_w);

    #Sæt det nye billede
    $dst_img = imagecreatetruecolor($tn_w,$tn_h);

    #Ændre det!
    imagecopyresampled($dst_img, $src_img, 0, 0, 0, 0, $tn_w, $tn_h, $org_w, $org_h);

    #Gem det!
    ImageJPEG($dst_img, $path.$thumbs.$value, 75);

    #slet "midlertidige" filer fra serveren.
    imagedestroy($dst_img);

        echo "<a href=\"#\" onclick=\"popUp('vispic.php?gal=$mappe&show=$key'); return false\"><img src=\"galleri/".$mappe."/thumbs/$value\" alt=\"$value\" border=\"0\"></a>";

    }

    echo "</td>";

    if ($cellcount == $cells) {
        $cellcount = 0;
        echo "</tr><tr>";
    }
    $cellcount++;
}
// Udskriver de evt. resterende celler
while ($cellcount <= $cells) {
    echo "<td></td>";
    $cellcount++;
}

print "</tr></table>";

?>

</div>
----- Slut -----
Avatar billede repox Seniormester
27. december 2005 - 21:20 #5
prøv lige at sætte dette ind efter linie 23:
print_r($row2);
Avatar billede syswatch Novice
28. december 2005 - 08:04 #6
Jeg tror at jeg har fundet ud af hvad der er galt.
Min side er jo bygget op i Div's og midter div'en laver en include som denne:

if($_GET[s]) {
include("$_GET[s].php");
}else{
include("forside.php");
}

Og et link til et galleri kan se fx sådan her ud:

http://www.syswatch.dk/?s=visgal&gid=9

Dette virker fint lige op til gid 9, men så snart man har gid 10 eller derover så fanger siden ikke id'et.
Hvordan skal man så lave det ?

P.S: Jeg har sat din kode ind i visgal.php hvis du kan bruge det til noget...
Avatar billede repox Seniormester
28. december 2005 - 10:43 #7
aner det sq ikke... i Firefox åbnes siden og melder en array fejl... men jeg kan ikke se hvori fejlen består...

et forslag til debugging er at prøve at skrive galleri visningen i en fil for sig selv og se om du kan få det til at virke på den måde.

Lige så snart det virker, kan du sætte koden ind i visgal.php og hvis det ikke virker igen, så er det den omkringliggende kode der generer dit problem.
Avatar billede syswatch Novice
28. december 2005 - 16:03 #8
Jeg har selv fundet fejlen efter en hel dags arbejde...
Det skyldes at det nye galleri jeg havde lagt online, indholdte så store filer at mit php script ikke kan håndtere dem, og så meldte den at den ikke kunne finde fejlen.
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