03. maj 2010 - 14:33
Der er
22 kommentarer og 1 løsning
Javascript med database udtræk
Hej.. Hvordan ville i trække billedenavnene ud fra databasen ? Har prøvet at lave php inden javascriptet i men det giver intet billede. <script type="text/javascript"> var mygallery=new fadeSlideShow({ wrapperid: "fadeshow1", //ID of blank DIV on page to house Slideshow dimensions: [300, 350], //width/height of gallery in pixels. Should reflect dimensions of largest image imagearray: [ ["billeder/appelsin_juice.jpg", "", "", ""], ["billeder/avocado.jpg", "", "", ""], ["billeder/ananas.jpg", "", "", ""], ["billeder/chokolade.jpg", "", "", ""] //<--no trailing comma after very last image element! ], displaymode: {type:'auto', pause:2500, cycles:0, wraparound:false}, persist: false, //remember last viewed slide and recall within same session? fadeduration: 500, //transition duration (milliseconds) descreveal: "ondemand", togglerid: "" }) </script>
Annonceindlæg fra Hitachi
”Forskellighed gør os stærkere!”
Diversitet er ikke kun buzzwords og politisk korrekthed, men et spørgsmål om at alle føler sig godt tilpas og kan yde deres bedste.
31. januar 2025
<script type="text/javascript"> var mygallery=new fadeSlideShow({ wrapperid: "fadeshow1", //ID of blank DIV on page to house Slideshow dimensions: [300, 350], //width/height of gallery in pixels. Should reflect dimensions of largest image imagearray: [ <?php $files = glob("billeder/*"); $first = true; foreach($files as $file){ if(is_file($file)){ if(!$first){ echo ",\n"; }else{ echo "\n"; $first = false; } echo "['" . $file . "', '', '', '']"; } } ?> ], displaymode: {type:'auto', pause:2500, cycles:0, wraparound:false}, persist: false, //remember last viewed slide and recall within same session? fadeduration: 500, //transition duration (milliseconds) descreveal: "ondemand", togglerid: "" }) </script>burde virke...
Du kan selvfølgelig også bare bruge jQuery til det, og så få det til at sende det til din database via en anden php fil - Så bruger du bare 'Load' funktionen. Ligesom når du laver Ajax i dit Javascript :]
rigtigt godt splazz , ingen problem =) tusind tak smid svar
hov, lige en misforståelse den skal tage billede navnet inde fra databasen og ikke bare alle billederne i mappen.. hvordan er det muligt?
så i stedet for at hente alle filerne i mappen, skal den bare lave mysql-query?
ja, hvor billednavn ikke er tomt. $sql = "SELECT billednavn FROM table where billednavn != ''; Mener at jeg prøvede, men er det muligt at lave mysql_query på den måde inde i java? for så prøver jeg da bare igen =)
det kan du på samme måde som med glob-tingen bare med et db-udtræk i stedet for selvfølgelig, men stadig inde i dit javaSCRIPT husk der er stor forskel på java og javascript...
Ja okay =) Javascript.. Kan du komme med at eksempel?
jamen det er jo mere eller mindre magen til det eksempel jeg har lavet, du skal bare smide indholdet af min for-løkke over i en anden løkke hvor du løber dit db-udtræk igennem... while($imgs = mysql_fetch_assoc($res)){ //indhold af for-løkke }
Har prøvet nu men den skriver ingen navne ud.. Skal selfølgelig nok give dig flere points, det har du fortjent..! [code]imagearray: [ <?php $sqli = "SELECT * FROM op_ingredienser where opskrift_id = '$_GET[opskrift_id]'"; $result = mysql_query($sqli); $row = mysql_fetch_array($result); $files = glob( $sql = "SELECT billedenavn FROM ingredienser WHERE navn = '$row[ingrediens_navn]' "); $res = mysql_query($sql); while($imgs = mysql_fetch_assoc($res)){ ; $first = true; if(is_file($file)){ if(!$first){ echo ",\n"; }else{ echo "\n"; $first = false; } echo "['" . $file . "', '', '', '']"; } } ?> ], [/code]
(code) gør min kode mærkelig , her er den igen <?php $sqli = "SELECT * FROM op_ingredienser where opskrift_id = '$_GET[opskrift_id]'"; $result = mysql_query($sqli); $row = mysql_fetch_array($result); $files = glob( $sql = "SELECT billedenavn FROM ingredienser WHERE navn = '$row[ingrediens_navn]' "); $res = mysql_query($sql); while($imgs = mysql_fetch_assoc($res)){ ; $first = true; if(is_file($file)){ if(!$first){ echo ",\n"; }else{ echo "\n"; $first = false; } echo "['" . $file . "', '', '', '']"; } } ?>
prøv at ret:
while($imgs = mysql_fetch_assoc($res)){ ; $first = true; if(is_file($file)){ if(!$first){ echo ",\n"; }else{ echo "\n"; $first = false; } echo "['" . $file . "', '', '', '']"; } }til
while($imgs = mysql_fetch_assoc($res)){ $first = true; if(!$first){ echo ",\n"; }else{ echo "\n"; $first = false; } echo "['" . $file . "', '', '', '']"; }
Sådan ser den ud nu koden, men $file får intet billede navn $files = glob( $res = mysql_query("SELECT billedenavn FROM ingredienser")); while($imgs = mysql_fetch_assoc($res)){ $first = true; if(!$first){ echo ",\n"; }else{ echo "\n"; $first = false; } echo "['" . $file . "', '', '', '']"; }
starter lige forfra:
<?php $sqli = "SELECT * FROM op_ingredienser where opskrift_id = '".$_GET['opskrift_id']."'"; $result = mysql_query($sqli); $row = mysql_fetch_array($result); $sql = "SELECT billedenavn FROM ingredienser WHERE navn = '".$row['ingrediens_navn']."' "); $res = mysql_query($sql); while($imgs = mysql_fetch_assoc($res)){ $first = true; if(!$first){ echo ",\n"; }else{ echo "\n"; $first = false; } echo "['" . $imgs['billedenavn'] . "', '', '', '']"; } ?> og så kunne du jo læse lidt om joins i mysql, så du kan nøjes med ét db-kald...
pisse fedt!! men der er stadig en ting, den viser ikke billederne pga. der mangler et komma efter alle ] (pånær den sidste)
ændrede: if(!$first){ til if($first == true){ også virker det.. Mange tak for hjælpen splazz =)
god dammit! nu sætter den , foran [ ved det første billede!
så fik jeg det til at virke, tak for hjælpen splazz =) $first = 1; $sqli = "SELECT * FROM op_ingredienser where opskrift_id = '".$_GET['opskrift_id']."'"; $result = mysql_query($sqli); while ($row = mysql_fetch_array($result)) { $sql = "SELECT billedenavn FROM ingredienser WHERE navn = 'ananas' && billedenavn != '' limit 1"; $res = mysql_query($sql); while($imgs = mysql_fetch_assoc($res)){ if ($first == 1) { echo '["billeder/' . $imgs['billedenavn'] . '.jpg", "", "", ""]'; } $first = 2; if($first == 2){ echo ",\n"; }else{ echo "\n"; $first = 3; } echo '["billeder/' . $imgs['billedenavn'] . '.jpg", "", "", ""]'; } }
$first = true; if(!$first){ echo ",\n"; }else{ echo "\n"; $first = false; } echo "['" . $imgs['billedenavn'] . "', '', '', '']"; burde netop gøre at den sætter et komma foran alle linjer, undtaget den første...
fik du det til at spille?
jep , det gjorde jeg :) Mange tak for hjælpen!! Hvordan gør vi hvis du skulle ha lidt ekstra points for det?
super, 200 er rigeligt :) og selv tak...
Vi tilbyder markedets bedste kurser inden for webudvikling