Witam
kod który dodaje zdjęcia do galeri:
<?php
header("location:logowanie.php"); // Przekierowanie do index.php }
?>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<head>
<title>ADM - edycja galeri</title>
<link rel="stylesheet" href="../css/style.css" type="text/css">
<meta http-equiv="content-type" content="text/html; charset=utf-8">
</head>
<body>
<?php
include("menu.php");
?>
<div id="tresc">
<fieldset><legend>Galeria</legend>
<?php
// potrzebne foldery (chmod 777) galeria, galeria/orginal, galeria/miniatury
include('config.php'); //łącze się z bazą
$f = $_FILES['zdj'];
$spr= '../galeria/orginal/'.$data; //ścieżka (tam gdzie mają znajdować się zdjęcia)
$zdj=$f['name'];
$opi=$_POST['opi'];
$kat=$_POST['kat'];
if (is_dir($spr)) //sprawdzam czy plik istnieje {
{
if ($f['type']=='image/bmp')
$typ='bmp';
elseif ($f['type']=='image/jpeg' || $f['type']=='image/pjpeg') //sprawdza format jpg lub dla Internet Explorera pjpg
$typ='jpg';
elseif ($f['type']=='image/png' || $f['type']=='image/x-png') //sprawdza format png lub dla Internet Explorera x-png
$typ='png';
elseif ($f['type']=='image/gif')
$typ='gif';
else $tekst='Niepoprawny format obrazu.<br><br>';
}
elseif(!$tekst) $tekst='Nie wczytano obrazu<br>';
if (!$tekst) {
if ($typ=='jpg') $img=imagecreatefromjpeg('../galeria/orginal/'.$zdj);
elseif ($typ=='png') $img=imagecreatefrompng('../galeria/orginal/'.$zdj);
elseif ($typ=='gif') $img=imagecreatefromgif('../galeria/orginal/'.$zdj);
elseif ($typ=='bmp') $img=imagecreatefromwbmp('../galeria/orginal/'.$zdj);
$x = imagesx($img);
$y = imagesy($img);
if($x > $y){
$nx = 200;
$ny = 200 * ($y / $x);
$mx = 800;
$my = 800 * ($y / $x);
}
elseif($x < $y){
$nx = 200 * ($x / $y);
$ny = 200;
$mx = 800 * ($x / $y);
$my = 800;
}
else{
$nx = 200;
$ny = 200;
$mx = 800;
$my = 800;
}
$mini_img = imagecreatetruecolor($nx, $ny);
imagecopyresampled($mini_img, $img, 0, 0, 0, 0, $nx, $ny, $x, $y);
$new_img = imagecreatetruecolor($mx, $my);
imagecopyresampled($new_img, $img, 0, 0, 0, 0, $mx, $my, $x, $y);
if ($typ=='jpg') imagejpeg($mini_img, '../galeria/miniatury/'.$zdj) && imagejpeg($new_img, '../galeria/'.$zdj) ;
elseif ($typ=='png') imagepng($mini_img, '../galeria/miniatury/'.$zdj) && imagepng($new_img, '../galeria/'.$zdj);
elseif ($typ=='gif') imagegif($mini_img, '../galeria/miniatury/'.$zdj) && imagegif($new_img, '../galeria/'.$zdj);
elseif ($typ=='bmp') imagewbmp($mini_img, '../galeria/miniatury/'.$zdj) && imagewbmp($new_img, '../galeria/'.$zdj);
zdjecie='$zdj',opis='$opi',
kategoryID='$kat'"); //dodaje nazwę pliku i nazwę kategori do bazy danych
}
}
}
echo '<b>zdjęcia w twojej galeri:</b><br><br>'; echo '<table border="1" align="center" cellspacing="5"> ';
$i = 1;
$rezultat=mysql_query('SELECT g.*,k.kategoria FROM gallery AS g LEFT JOIN kategory AS k ON(g.kategoryID=k.kategoryID)ORDER BY id desc'); {
echo '<td width="220" height="220" bgcolor="grey" align="center">'; echo '<img src="../galeria/miniatury/'.$wiersz['zdjecie'].'" alt="'.$wiersz['kategoryID'].'"></a>'; echo '<td width="220" height="20" valign="top" align="center">' ; echo '<b>'.$wiersz['zdjecie'].'</b>'; echo '<td width="220" height="50" valign="top" align="center">' ; echo $wiersz['kategoria']; echo '<td width="220" height="50" valign="top" align="center">' ; echo '<td width="220" height="20" valign="top" align="center">' ; echo '<a href="gallery_edycja.php?galeria=usun&id='.$wiersz['id'].'">Usuń</a>';
if($i % 2 == 0){
}
$i++;
}
if(isset($_GET['galeria']) && $_GET['galeria']=='usun' && isset($_GET['id'])) {
$id=$_GET['id'];
$rezultat=mysql_query("select zdjecie FROM gallery WHERE id='$id' ") ;
$plik= $row ['zdjecie'] ;
unlink('../galeria/orginal/'.$plik); unlink('../galeria/miniatury/'.$plik); $zapytanie="DELETE FROM gallery WHERE id='$id'";
echo 'Pomyślnie usunąłem zdjęcie.'; }
else{
echo "Zdjęcie zostało usunięte" ; }
}
?>
<fieldset>
<legend>Dodaj zdjęcie</legend>
<form action="gallery_edycja.php?page=addzdj" enctype="multipart/form-data" method="post">
<div><label for="plik">Wybierz zdjęcie:</label><br>
<input id="plik" name="zdj" size="32" type="file" /></div>
<div>
<div><label for="opi">Opis:</label><br>
<input id="kat" name="opi" size="32" type="text" /></div><br>
<div><label for="kat">Kategoria:</label><br>
<select id="kat" name="kat">
<option value="1">projektor</option>
<option value="2">lampa</option>
<option value="3">laptop</option>
</select>
</div><br>
<div><input class="submit" type="submit" value="Wyślij" /></div>
</div>
</form>
</fieldset>
</fieldset>
</div>
</body>
oraz tabele
gallery z polami : id, zdjecie, kategoryID, opis
kategory z polami : kategoryID, kategoria
połączone tak
ALTER TABLE `gallery` ADD FOREIGN KEY ( `kategoryID` ) REFERENCES `thor_thor`.`kategory` (
`kategoryID`
) ON DELETE CASCADE ON UPDATE CASCADE ;
problem mam z selektem w formularzu. jest możliwość żeby wartości pobierane były automatycznie do niego z tabeli "kategory"
tzn zamiast wpisywać ręcznie
samo by sie wypełniało.
drugi problem to jeśli dodaje zdjęcie to dodać moge tylko trzy zdjęcia i to każde musi mieć inne "kategoryID" jeśli chce dodać np z kategoryID = 1 a w tabeli gallery jest już rekord z taką wartością to nie dodaje rekordu i wywala błąd że już rekord z ta wartością jest.