Autor Zpráva
-Pe-
Profil *
Ahojte. Neviete niekto poradiť návod na jednoduchú fotogalériu v php a mysql. Jednalo by sa o fotogalériu, do ktorej budem prispievať fotkami zatiaľ len ja. Napadlo ma niečo také, že budem do databázy ukladať linky na jednotlivé obrázky a potom ich zobrazovať pomocou php skriptu. Napr. tabuľka: id, nazov, veľkosť, komentar, datum. Zobrazenie podľa id alebo datumu priadania. Nemám s tým skúsenosti. Je to blbý nápad?
gajdynator
Profil
zdrojový kód z jedného časopisu COMPUTER
je to so súbormi a prispievať môžu všetci:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>Galerie obrázků</title>
<meta http-equiv="Content-Type" content="text/html; charset=windows-1250">
</head>
<body>
<script language="JavaScript" type="text/JavaScript">
function zobrazit_exif()
{
if (document.getElementById('exifinfo').style.display == 'block')
document.getElementById('exifinfo').style.display='none'
else
document.getElementById('exifinfo').style.display='block'
}
</script>
<?php
if ($_FILES['soubor']['name'] != "")
{
$uploadDir = 'obrazky/';
$uploadFile = $uploadDir . $_FILES['soubor']['name'];
if (move_uploaded_file($_FILES['soubor']['tmp_name'], $uploadFile))
{
$nahrani = 'Obrázek byl přidán do galerie.';
}
else
{
$nahrani = 'Přidání obrázku se nezdařilo. Zkontrolujte velikost souboru.';
}
$_FILES['soubor']['name'] = "";
}

function seznam()
{
echo "<h3>Seznam obrázků</h3>";
$obrazky_adresar = opendir('./obrazky');
while ($obrazek = readdir($obrazky_adresar))
{
if (($obrazek != '.') and ($obrazek != '..'))
{
$obrazky[] = $obrazek;
}
}
closedir($obrazky_adresar);

if (Count($obrazky) > 0)
{
sort($obrazky);
for($i=0;$i<Count($obrazky);$i++)
echo '<a href="galerie.php?pic=obrazky/'.$obrazky[$i].'">'.$obrazky[$i].'</a><b r>';
}
else
echo 'K dispozici není žádný obrázek<br>';
};

function nahledy()
{
$obrazky_adresar = opendir('./obrazky');
while ($obrazek = readdir($obrazky_adresar))
{
if (($obrazek != '.') and ($obrazek != '..'))
{
$obrazky[] = $obrazek;
}
}
closedir($obrazky_adresar);
if (Count($obrazky) > 0)
{
sort($obrazky);
for($i=0;$i<Count($obrazky);$i++)
echo '<a href="galerie.php?pic=obrazky/'.$obrazky[$i].'"><img src="obrazky/'.$obrazky[$i].'" width="100" border="0" /></a> ';
}
else
echo 'K dispozici není žádný obrázek<br>';
};

function zobrazit($ke_zobrazeni)
{
if ($ke_zobrazeni == "")
{
echo 'Vyberte obrázek klepnutím na náhled';
}
else
{
echo '<img src="'.$ke_zobrazeni.'" />';
}
}

function informace($ke_zobrazeni)
{
if ($ke_zobrazeni != "")
{
$exif = exif_read_data($ke_zobrazeni, 0, true);
echo 'Obrázek: '.$exif["FILE"]["FileName"].'<br />';
echo 'Datum pořízení: '.$exif["EXIF"]["DateTimeOriginal"].'<br />';
echo 'Použitý fotoaparát: '.$exif["IFD0"]["Model"].'<br />';
echo '<span onMouseOver="this.style.cursor=\'pointer\'" onClick="zobrazit_exif()" onMouseOut="this.style.cursor=\'default\'">
Klepněte pro více/méně informací</span>';
echo '<div id="exifinfo" style="display:none">';
foreach ($exif as $key => $section) {
foreach ($section as $name => $val) {
echo "$key.$name: $val<br />\n";
}
}
echo '</div>';
}
}

?>
<table border="1" cellspacing="0" cellpadding="1" summary="" width="600px">
<tr>
<td valign="top" align="left"><?php seznam(); ?></td>
<td valign="top"> <table border="1" cellspacing="0" cellpadding="2" summary="">
<tr>
<td><?php zobrazit($pic); ?></td>
</tr>
<tr>
<td><?php informace($pic); ?></td>
</tr>
<tr>
<td><?php nahledy(); ?> </td>
</tr>
</table></td>
</tr>
</table>
<p> Přidejte další obrázek do galerie (max. 500kB)
<form enctype="multipart/form-data" action="galerie.php" method="post">
<input type="hidden" name="MAX_FILE_SIZE" value="500000" />
Vyberte obrázek v počítači:
<input name="soubor" type="file" />
<input type="submit" value="Přidat" />
</form>
</p>
<?php
echo $nahrani;
?>
</body>
</html>
Lukáš M
Profil
-Pe- stačí hledat:
http://diskuse.jakpsatweb.cz/index.php?action=vthread&forum=11&topic=4 602
http://www.root.cz/diskuse/64

gajdynator
uvádějte prosím vždy zdroj citace.
-Pe-
Profil *
Ahoj Lukáš. Díky za linky. Skôr som chcel poradiť, ako si naprogramovať vlastnú. Učím sa php a mysql a rád by som to spravil sám, aj keď ma to bude stáť dosť námahy a času. Chcel som vedieť, ako podobné galérie fungujú. Na princípe uploadu a downloadu súborov zo servera? Možno nevhodná otázka.
Lukáš M
Profil
ale ano, je to vhodná otázka, ale pak nepotřebujete mysql, a vystačíte si se soubory. vyšel o tom celkem pěkný článek na intervalu. http://interval.cz/clanek.asp?article=647
Toto téma je uzamčeno. Odpověď nelze zaslat.

0