webForumDet fria alternativet

Hur visar jag samtliga filer i min databas, for sats?

PHP

4 svar · 180 visningar · startad av grusell

Medlem sedan dec. 20028 inlägg
Frågan#1

Jag har en mysql-databas med en tabell "bildspel" i vilken det ligger ett antal bilder.
Nu arbetar jag med en sida som ska kunna uppdatera dessa bilder och mitt första steg är att kunna skriva ut samtliga bilder på sidan.

Så här ser scriptet ut just nu
------------------
<?
require("dbmanager.php");
if($id) {
$query = "select file_data,file_type from bildspel where id=$id";
$result = @MYSQL_QUERY($query);
$data = @MYSQL_RESULT($result,0,"file_data");
$type = @MYSQL_RESULT($result,0,"file_type");
Header( "Content-type: $type");
echo $data;

};
?>
<html>
<head>
<title>untitled</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</head>

<body>
<img src="<? echo "up_slideshow.php?id=$id"; ?>"><br>
</body>
</html>
-------------------

För att kunna se på en bild måste jag skriva in "up_slideshow.php?id=2" i adressfältet. Då visas ju en bild. Men hur gör jag för att kunna se alla bilder på sidan? Någon for/while sats? är lite förvirrad nu :q
tackar!

Medlem sedan jan. 2000372 inlägg
#2

Separera "visa-alla-bilder"-dokumentet från det dokument som visar en vald bild:

$result = mysql_query($query);
while($rows = mysql_fetch_array($result)) {
  echo "<img src=\"up_slideshow.php?id=" . $rows["id"] . "\">";
  }
Medlem sedan dec. 20028 inlägg
#3

mungo,

hmm är lite osäker på just vart i "min" kod jag ska placera din while sats. Den sidan jag har där hämtar ju 1) den binära datorn 2) skriver ut en bild beroende på id

  1. ska ju ersättas då med kod som visar alla bilder istället för en.

ursäkta om jag framstår som lite tokig, det här är relativt ny mark (php alltså) för mig.

Medlem sedan jan. 2000372 inlägg
#4

Tja, alltså du skulle ha ett PHP-dokument som kanske heter db_image.php och som bara innehåller:

<?
require("dbmanager.php"); 
if($id) { 
$query = "select file_data,file_type from bildspel where id=$id"; 
$result = @MYSQL_QUERY($query); 
$data = @MYSQL_RESULT($result,0,"file_data"); 
$type = @MYSQL_RESULT($result,0,"file_type"); 
Header( "Content-type: $type"); 
echo $data; 
?>

och sen ett annat dokument som loopar igenom din databas och anropar db_image.php:

<?
$query = "SELECT id FROM bildspel";
$result = mysql_query($query);
while($rows = mysql_fetch_array($result)) {
  echo "<img src=\"db_image.php?id=" . $rows["id"] . "\">";
  }
?>
Medlem sedan dec. 20028 inlägg
#5

haha... ja jäklar. Det funkade fint.
Tackar för hjälpen!! :birp

253 ms totalt · 4 externa anrop · v20260731065814-full.a51de22e
125 ms — deklarationer (db)
0 ms — hämta statistik (cache)
126 ms — hämta tråd, inlägg och bilagor (db)
124 ms — ändringar (db)