Avatar billede aquafisken Nybegynder
22. juli 2005 - 21:51 Der er 13 kommentarer og
1 løsning

Tilfældig billede med tilhørende tekst (Random image/text)

Hej!
Jeg har bygget en lille boks op via <table> i den ene side skal der være et billede og i den anden side af boksen skal der være en tekst som høre sammen med billedet (billede data).
Når man så kommer ind på siden eller opdatere siden så skal der komme et nyt billede frem med tilhørende tekst.
Jeg har et problem, og det er at jeg ikke kan få lavet en kode som viser et tilfældigt billede i den ene side af tabellen med en tilhørende tekst i den anden side.
Her er den kode som jeg har prøvet at stykke sammen:
<?php

srand((float) microtime() * 10000000);
// Quotes go inside the array
$quote = array("Text 1", "Text 2", "Text 3","Text 4");
// Random quote is generated by array_rand and the variable is assigned to it
//The number in the parenthesis = number of quotes you have in total
$echo = array_rand($quote,4);

?>

<?php

// Change this to the total number of images in the folder
$total = "4";
// Change to the type of files to use eg. .jpg or .gif
$file_type = ".jpg";
// Change to the location of the folder containing the images
$image_folder = "random";
// You do not need to edit below this line
$start = "1";
$random = mt_rand($start, $total);
$image_name = $random . $file_type;

?>
<table width="32%"  border="0" cellspacing="0" cellpadding="0">
  <tr>
    <td colspan="3"><img src="ArmySpottop.jpg" width="314" height="34"></td>
  </tr>
  <tr>
    <td width="8"><img src="ArmySpotleft.jpg" width="8" height="111"></td>
    <td width="111" height="111" align="left" valign="top"><? echo "<img src=\"$image_folder/$image_name\" alt=\"$image_name\" width=\"111\" height=\"111\" />"; ?></td>
    <td width="197" align="left" valign="top" background="ArmySpotcontent.jpg">
<?

echo $quote[$echo[1]];

?>

    </td>
  </tr>
  <tr>
    <td colspan="3"><img src="ArmySpotbottom.jpg" width="314" height="14"></td>
  </tr>
</table>

Det som den kode gør er at vise et tilfældigt billede og en tilfældig tekst, og de to dele køre ved siden af hinanden, altså de passer ikke sammen, og det skulle de jo meget gerne. Håber der er nogen der kan hjælpe mig.
Avatar billede kdjweb Nybegynder
22. juli 2005 - 21:54 #1
Har du en mysql database?
Avatar billede aquafisken Nybegynder
22. juli 2005 - 22:47 #2
Ja, det har jeg, jeg havde tænkt lidt på at bruge den, men jeg var ikke sikker på hvad der vil være nemmest, men det er vel ved brug af database, fordi så ka der vel også laves en admin afdeling så der kan tilføjes billeder med tilhørende tekst, ik ?
Avatar billede kdjweb Nybegynder
22. juli 2005 - 23:07 #3
Lav en tabel hvor der er billedets navn, tekst osv. og så lav en query og lav f.eks. random med id
Avatar billede kdjweb Nybegynder
22. juli 2005 - 23:09 #4
du kan jo også tilføje fra PHPAdmin.. billederne kan du bare ligge ind på ftp eller så kan du lave dit eget lille "system" som du ville kunne bruge igen og igen
Avatar billede aquafisken Nybegynder
22. juli 2005 - 23:41 #5
OK, tak, kan jeg evt. få dig til at lave et lille eksempel hvor der bruges query funktionen, jeg har prøvet at lave en mindre admin afdeling hvor der bare skulle tilføjes en nyhed med tilhørende link og har lige lavet en afstemning, men jeg er stadig ik så stærk til PHP.
Det sidste som du skriver vil nok være mere besværligt i brug.
Avatar billede kdjweb Nybegynder
23. juli 2005 - 13:38 #6
kan jeg da godt :)

$q = mysql_query("SELECT * FROM tabelnavn");
$a = mysql_num_rows($q);

$random = mt_rand(1, $a);

$d = mysql_query("SELECT * FROM tabelnavn WHERE id = '$random");
while($r = mysql_fetch_array($d)){
  echo "dit billede f.eks";
  echo "den medørende tekst";
}
Avatar billede kdjweb Nybegynder
23. juli 2005 - 13:41 #7
måske forstår du den her bedre

$q = mysql_query("SELECT * FROM tabelnavn");
$a = mysql_num_rows($q);

$random = mt_rand(1, $a);

$d = mysql_query("SELECT * FROM tabelnavn WHERE id = '$random");
while($r = mysql_fetch_array($d)){
  echo "<img src="random/$r[billede]>";
  echo $tekst;
}
Avatar billede aquafisken Nybegynder
23. juli 2005 - 22:36 #8
mange tak...jeg må se om jeg ka få det til at virke nu...har du ellers nogle gode sider hvor man kan se lidt mere omkring php kodning så jeg ka få det lært...jeg har været de tutorials igennem på webcafe.dk (tror jeg det var) ?
Avatar billede aquafisken Nybegynder
23. juli 2005 - 23:26 #9
Yes det virker! Mange tak for hjælpen...lige en ting mere; jeg sad og tænkte lidt på at hvis man lavede en admin afdeling så man kan tilføje et billede og tekst dertil, hvordan vil det så være lettest at lave det sådan at man kan gå ind og redigere i det, altså man skal redigere i databasen?
Avatar billede kdjweb Nybegynder
24. juli 2005 - 15:10 #10
du laver en formular:
<form name="form" method="post" action="<? $PHP_SELF; ?>" enctype="multipart/form-data">
<textarea name="tekst"></textarea>
<input type="submit" name="upload" value="Upload">
</form>

sådan skal den se ud og så skal du bare lave upload system, og indsætte infomationer i database.

jeg ved der er en guide til et godt upload system på webcafe.dk og at du sikker godt kan finde ud af at indsætte i databasen.

Du siger bare til hvis jeg skal hjælpe med mere :P :)
Avatar billede kdjweb Nybegynder
24. juli 2005 - 15:13 #11
undskyld jeg tror jeg læste forkert..

hvis du skal redigere skal du bare hente infomationer fra databasen hvor VALUE er "teksten" :) og så når man submiter, så skal du bare lave en UPDATE query

hvis du har svært ved query's kan du kigge her:
http://dev.mysql.com/doc/mysql/en/update.html
Avatar billede kdjweb Nybegynder
24. juli 2005 - 15:16 #12
jeg vil personligt selv anbefale http://www.php.net som det bedste sted at lære at kode, ellers skal man læse nogle bøger :) men jeg har også fundet en rigtig god php bog lige til at printe ud.
http://www.chbs.dk/kurser/php/
Avatar billede aquafisken Nybegynder
24. juli 2005 - 18:34 #13
OK, mange tak for hjælpen, jeg har nu givet dig point.
Avatar billede kdjweb Nybegynder
24. juli 2005 - 18:40 #14
takker for point :)
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