Avatar billede krk Nybegynder
16. februar 2006 - 15:20 Der er 43 kommentarer og
1 løsning

preload billeder

Hej
Jeg ved ikke rigtig om det er her eller i JavaScript kategorien dette spørgsmål høre til, men nu prøver jeg her.

Jeg vil gerne preloade billederne til mit galleri. Jeg har følgende kode, men den henter intet fra databasen.
Er der nogen der kan se fejlen?

<?php
$host    ="xxx"; 
$user    ="xxx";
$pass    ="xxx";
$link    = mysql_connect($host,$user,$pass);

$database    ="x_xx";

$query        ="SELECT * FROM xxx_galleri ORDER BY xxx_id ;";
$result    = mysql_db_query ($database, $query, $link );

?>


<script type="text/javascript">

<?
for($i=0;$i<count($pets_billede);$i++){?>
    var billede<?=$i?> = new Image()
    billede<?=$i?>.src = "<?=images/$pets_billede[$i]?>"
    print"$pets_billede<br>";
<? }?>

</script>

Sætningen, print"$pets_billede<br>"; ,har jeg bare sat ind for at se om der bliver kørt igennem for-løkken
Avatar billede yezbarh Nybegynder
16. februar 2006 - 15:23 #1
<script type="text/javascript">

<?php
for($i=0;$i<count($pets_billede);$i++){?>
    var billede<?=$i?> = new Image()
    billede<?=$i?>.src = "<?=images/$pets_billede[$i]?>"
    print "document.write('" . $pets_billede . "<br />');\n";
<?php } ?>

</script>

Desuden - hvad indeholder "pets_billede" ?
Avatar billede yezbarh Nybegynder
16. februar 2006 - 15:25 #2
<?php
for($i = 0; $i < count($pets_billede); $i++)
{
?>
    var billede<?=$i?> = new Image();
    billede<?=$i?>.src = "<?php print "images/" . $pets_billede[$i];
    document.write('<?php print $pets_billede . "<br />";');
<?php } ?>

</script>

Prøv evt. dette
Avatar billede yezbarh Nybegynder
16. februar 2006 - 15:26 #3
Plejer normalt hellere ikke at bruge var til det

    billede<?=$i;?> = new Image();
    billede<?=$i;?>.src = "<?php print "images/" . $pets_billede[$i] . "";
Avatar billede krk Nybegynder
16. februar 2006 - 15:27 #4
$pets_billede indeholder kun navnet på billede ex. ollie2.jpg
Avatar billede yezbarh Nybegynder
16. februar 2006 - 15:27 #5
- Hvad viser kildekoden når du udskriver??
Avatar billede yezbarh Nybegynder
16. februar 2006 - 15:29 #6
<?php
$host    = "xxx"; 
$user    = "xxx";
$pass    = "xxx";
$db      = "x_xx";

mysql_query($host, $user, $pass);
mysql_select_db($db);

$query  =  mysql_query("SELECT * FROM xxx_galleri ORDER BY xxx_id ");
$result  = mysql_fetch_assoc($query);
// print $result[udtræk];

?>
Avatar billede yezbarh Nybegynder
16. februar 2006 - 15:30 #7
Du ser den intet henter fra databasen - det jo klart når du slet ikke kalder det nogen steder?

-->
$result['udtræ'];
Avatar billede krk Nybegynder
16. februar 2006 - 15:33 #8
du må ikke tro jeg er gået død - endnu. Jeg arbejder på sagen :-)
Avatar billede krk Nybegynder
16. februar 2006 - 15:37 #9
mener du jeg skal skrive dette:

<?php
$host    ="xxx"; 
$user    ="xxxe";
$pass    ="xxx";
$db      = "xxx";

mysql_query($host, $user, $pass);
mysql_select_db($db);

$query  =  mysql_query("SELECT * FROM pets_galleri ORDER BY pets_id ");
$result  = mysql_fetch_assoc($query);
print $result[udtræk];

?>

for det giver stadig intet
Avatar billede yezbarh Nybegynder
16. februar 2006 - 15:39 #10
<?php
$host    ="xxx"; 
$user    ="xxxe";
$pass    ="xxx";
$db      = "xxx";

mysql_query($host, $user, $pass);
mysql_select_db($db);

$query  =  mysql_query(" SELECT `pets_id` FROM `pets_galleri` ORDER BY `pets_id` DESC ");
while( $result  =  mysql_fetch_assoc( $query )
{
    print $result["pets_id"];
}

?>
Avatar billede krk Nybegynder
16. februar 2006 - 15:41 #11
nu er jeg hvis kommet for langt væk fra hvor jeg startede. Hvorfor er jeg over i en while-løkke?
Avatar billede krk Nybegynder
16. februar 2006 - 15:45 #12
jeg skal bruge for-løkken fordi jeg gerne vil preload de billeder der skal bruges i galleriet. Jeg skal derfor ikke kunne se billederne i første omgang, de skal bare gemmes i cache.
Jeg har derfor fået den stump javaScript kode som skulle løse dette lille problem.
Det kan også være der er en nemmer måde at gøre det på!!
Avatar billede krk Nybegynder
16. februar 2006 - 15:53 #13
yezbarh: Har jeg forvirret dig fyldstændig nu.
Avatar billede krk Nybegynder
16. februar 2006 - 15:59 #14
nu prøver jeg lige en nu tilgang til problemet.
hvordan laver jeg en for-løkke der skal trække data ud fra en database.

Jeg har følgende kode:
$query        ="SELECT * FROM pets_galleri ORDER BY pets_id ;";
$result    = mysql_db_query ($database, $query, $link );

for($i=0;$i<count($pets_billede);$i++){
    print"$pets_billede<br>";
}
Avatar billede yezbarh Nybegynder
16. februar 2006 - 16:34 #15
Forstår ikke hvorfor du vil lave en for løkke hvis udtrækket er fra mysql - for så bruger man normalt while.
Avatar billede krk Nybegynder
16. februar 2006 - 16:54 #16
Det er fordi jeg har noget javaScript kode som indeholder et for loop
Avatar billede yezbarh Nybegynder
16. februar 2006 - 16:56 #17
hvorfor så ikke bare:

<?php
$host    ="xxx"; 
$user    ="xxxe";
$pass    ="xxx";
$db      = "xxx";

mysql_query($host, $user, $pass);
mysql_select_db($db);

$query  =  mysql_query(" SELECT `id`, `pets_id` FROM `pets_galleri` ORDER BY `pets_id` DESC ");

while( $result  =  mysql_fetch_assoc( $query )
{
    print "image" . $result[pets_id] . " = new Image();\r\n";
    print "image" . $result[pets_id] . ".src = "images/" . $result[pets_id] . "\r\n";
}

?>
Avatar billede yezbarh Nybegynder
16. februar 2006 - 16:56 #18
print "image" . $result[id] . " = new Image();\r\n";
    print "image" . $result[id] . ".src = "images/" . $result[pets_id] . "\r\n";
Avatar billede krk Nybegynder
16. februar 2006 - 16:59 #19
er det okay hvis jeg vender tilbage lidt senere, har lige lidt travlt.
Men det ser godt ud det sidste du skrev. Prøver det lidt senere
Avatar billede krk Nybegynder
16. februar 2006 - 17:17 #20
jeg forstå altså ikke helt sætningen:
Bliver der printet noget synligt ud for brugeren eller gemmes billederne bare i cachen?
Avatar billede yezbarh Nybegynder
16. februar 2006 - 17:28 #21
Prøv mit eksempel og fortæl os hvad der står i kildekoden (Vis kilde)
Avatar billede krk Nybegynder
16. februar 2006 - 17:30 #22
lige nu har jeg fejl i koden. Der står:  syntax error, unexpected T_STRING in ...
Det er denne linje: print "image" . $result[pets_id] . ".src = "images/" . $result[pets_id] . "\r\n";
Avatar billede krk Nybegynder
16. februar 2006 - 17:38 #23
kan du se fejlen??
Avatar billede krk Nybegynder
16. februar 2006 - 17:44 #24
jeg har lige udkommenteret de 2 linjer og så skrevet print"hej"; , men der printes intet ud!!

$query  =  mysql_query(" SELECT `pets_id` FROM `pets_galleri` ORDER BY `pets_id` DESC ");

while( $result  =  mysql_fetch_assoc( $query ))
{
    //print "image" . $result[pets_id] . " = new Image();\r\n";
    //print "image" . $result[pets_id] . ".src = "images/" . $result[pets_id] . "\r\n";
    print"hej";
}

Skulle der ikke i det mindste stå "hej" på siden??
Avatar billede krk Nybegynder
16. februar 2006 - 17:57 #25
jeg kan simpelhen ikke finde syntax fejlen :-(
Avatar billede krk Nybegynder
16. februar 2006 - 18:03 #26
yezbarh, er du der?
Avatar billede yezbarh Nybegynder
16. februar 2006 - 18:17 #27
$query  =  mysql_query(" SELECT ìd`, `pets_id` FROM `pets_galleri` ORDER BY `pets_id` DESC ") or die( mysql_error () );
Avatar billede yezbarh Nybegynder
16. februar 2006 - 18:18 #28
print "image$result[pets_id].src = "images/" . $result[pets_id] . "\r\n";
Avatar billede krk Nybegynder
16. februar 2006 - 18:26 #29
nu denne fejl: syntax error, unexpected T_STRING in ... (samme linie)
Avatar billede yezbarh Nybegynder
16. februar 2006 - 18:31 #30
Klart nok *G*
print "image" . $result[pets_id] . ".src = 'images/" . $result[pets_id] . "';\r\n";
Avatar billede krk Nybegynder
16. februar 2006 - 18:32 #31
min kode ser nu sådan ud:

mysql_query($host, $user, $pass);
mysql_select_db($db);

$query  =  mysql_query(" SELECT ìd`, `pets_id` FROM `pets_galleri` ORDER BY `pets_id` DESC ") or die( mysql_error () );
while( $result  =  mysql_fetch_assoc( $query ))
{
    print "image" . $result[pets_id] . " = new Image();\r\n";
    print "image$result[pets_id].src = "images/" . $result[pets_id] . "\r\n";
}

Ved $db skal det godt nok være navnet på databasen, ikk??
Jeg vender tilbage om en lille time - aftensmad ;-)
Avatar billede yezbarh Nybegynder
16. februar 2006 - 18:33 #32
Jo - helt korrekt. $db er dit database navn.

mysql_query($host, $user, $pass);
mysql_select_db($db);

$query  =  mysql_query(" SELECT ìd`, `pets_id` FROM `pets_galleri` ORDER BY `pets_id` DESC ") or die( mysql_error () );
while( $result  =  mysql_fetch_assoc( $query ))
{
    print "image" . $result[pets_id] . " = new Image();\r\n";
print "image" . $result[pets_id] . ".src = 'images/" . $result[pets_id] . "';\r\n";
}
Avatar billede krk Nybegynder
16. februar 2006 - 18:35 #33
nu får jeg dette:
Can't connect to local MySQL server through socket '/var/lib/mysql/mysql.sock' (2)

Giver det nogen mening??

Nu bliver jeg virkelig nød til at smutte
Avatar billede yezbarh Nybegynder
16. februar 2006 - 18:46 #34
Betyder den ikke kan connecte til din MySQL - har du husket :

$host    = "xxx"; 
$user    = "xxxe";
$pass    = "xxx";
$db      = "xxx";

I filen?
Avatar billede krk Nybegynder
16. februar 2006 - 19:03 #35
førhen så den sådan ud og det plejer at virke.
<?php
$host    ="min host navn"; 
$user    ="bruger";
$pass    ="password";
$link    = mysql_connect($host,$user,$pass);

$database    ="navnet på min database";

?>

for mig at se har jeg kun ændret $database til $db
Avatar billede krk Nybegynder
16. februar 2006 - 19:07 #36
hele koden:
<?php
$host    ="min host navn"; 
$user    ="bruger";
$pass    ="password";
$db    ="navnet på min database";

mysql_query($host, $user, $pass);
mysql_select_db($db);

$query  =  mysql_query(" SELECT ìd`, `pets_id` FROM `pets_galleri` ORDER BY `pets_id` DESC ") or die( mysql_error () );
while( $result  =  mysql_fetch_assoc( $query ))
{
    print "image" . $result[pets_id] . " = new Image();\r\n";
print "image" . $result[pets_id] . ".src = 'images/" . $result[pets_id] . "';\r\n";
}
?>
Avatar billede yezbarh Nybegynder
16. februar 2006 - 19:09 #37
<?php
$host    ="min host navn"; 
$user    ="bruger";
$pass    ="password";
$db    ="navnet på min database";

$query = mysql_connect($host, $user, $pass);
mysql_select_db($db);

$query  =  mysql_query(" SELECT ìd`, `pets_id` FROM `pets_galleri` ORDER BY `pets_id` DESC ") or die( mysql_error () );
while( $result  =  mysql_fetch_assoc( $query ))
{
    print "image" . $result[pets_id] . " = new Image();\r\n";
    print "image" . $result[pets_id] . ".src = 'images/" . $result[pets_id] . "';\r\n";
}
?>
Avatar billede krk Nybegynder
16. februar 2006 - 19:14 #38
nu ligner det noget. nu skrives :image56 = new Image(); image56.src = 'images/56'; image55 = new Image(); image55.src = 'images/55';...osv.
Avatar billede yezbarh Nybegynder
16. februar 2006 - 19:15 #39
Så laver du:
<?php
$host    = "min host navn"; 
$user    = "bruger";
$pass    = "password";
$db      = "navnet på min database";
?>
<script type="text/javascript">

<?php

$query = mysql_connect($host, $user, $pass);
mysql_select_db($db);

$query  =  mysql_query(" SELECT ìd`, `pets_id` FROM `pets_galleri` ORDER BY `pets_id` DESC ") or die( mysql_error () );
while( $result  =  mysql_fetch_assoc( $query ))
{
    print "image" . $result[pets_id] . " = new Image();\r\n";
    print "image" . $result[pets_id] . ".src = 'images/" . $result[pets_id] . "';\r\n";
}
?>

</script>
Avatar billede krk Nybegynder
16. februar 2006 - 19:21 #40
Kan du lige forklare det med javascript. Betyder det at alle billederne bliver loaded men ikke vist?
Avatar billede yezbarh Nybegynder
16. februar 2006 - 19:21 #41
"Jeg vil gerne preloade billederne til mit galleri. Jeg har følgende kode, men den henter intet fra databasen.
Er der nogen der kan se fejlen?"

Ja, du vil have dem loadet - den loader dine billedere.
Avatar billede krk Nybegynder
16. februar 2006 - 19:24 #42
Mange tak for hjælpen - imponerende at du kunne holde alle mine spørgsmål ud :-)
Avatar billede yezbarh Nybegynder
16. februar 2006 - 19:24 #43
Hehe - det gik :-)

Godt jeg kunne hjælpe, og tak for points !o]
Avatar billede pvtsommer Nybegynder
19. februar 2006 - 16:58 #44
Bliver lige nød til at spørge...

Betyder det at man skal hente billedet som imageX (hvor X er det Pets Id som der er skrevet), eller ligger det så i cachen, så images/1.jpg fx nu ligger på computeren, uden at man har set det?
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