/ Forside/ Teknologi / Udvikling / PHP / Tip
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
PHP
#NavnPoint
rfh 3959
natmaden 3372
poul_from 3310
funbreak 2700
stone47 2230
Jin2k 1960
Angband 1743
Bjerner 1249
refi 1185
10  Interkril.. 1146
Multi billede upload med SQL
DBSS har modtaget 10 point for dette tip
Fra : DBSS
Vist : 2285 gange

Dato : 03-11-05 10:30

Her er Filen til den billede upload du ønsker at lave husk at lave SQL tableren til MySQL som følger med under dette script filen har jeg kaldt galleri.php men det er ikke et krav den skal hede det. Ønsker alle held og lykke med dette script


<?

// Start Upload config fil
$DB_Host = "host";
$DB_User = "user";
$DB_Pass = "pass";
$DB_DB = "database";

$AntalBilleder = 3; // Hvor mange billeder du ønsker at folk kan uploade
$MapName = "img"; // Hvad din billede mappe er
$ThumbMapName = "thumb"; // Hvilken mappe der skal være thumb inde i billede mappen
$FileName = time(); // Filnavnet før _ nr på billedet
$ImgBigSize = 500; // Hvor brad dit store billeder skal være
$ImgSmallW = 75; // Hvor brad dit thumb skal være
$ImgSmallH = 75; // Hvor høj dit thumb skal være

// Slutter upload config delen

mysql_pconnect($DB_Host,$DB_User,$DB_Pass);
mysql_select_db($DB_DB);

function MakeImgInput ($AntalImg) {
$i = 1;
while ($i++ <= $AntalImg) {
$ii = $i - 1;
echo '
<tr>
<td>Billede '. $ii .'</td>
<td><input type="file" name="img'.$ii.'"></td>
</tr>
';
}
}
function Billede_ReSize($FileFeltName,$FileUploadName,$UploadMappeName,$ThumbMap,$BigImgSize_W,
$SmallImgSize_W,$SmallImgSize_H) {
$Upload_FileName = $_FILES[$FileFeltName]['tmp_name'];
$Upload_FileType = $_FILES[$FileFeltName]["type"];
$upload_bibliotek = $UploadMappeName;

$fra = $Upload_FileName;

$til1 = $upload_bibliotek . "/" . $FileUploadName;
$til2 = $upload_bibliotek . "/". $ThumbMap ."/" . $FileUploadName;

$size = getimagesize($Upload_FileName);

$new_w1 = $BigImgSize_W;

$Hojde = $new_w1 / $size[0] * $size[1];
$new_h1 = $Hojde;

$new_w2 = $SmallImgSize_W;
$new_h2 = $SmallImgSize_H;

$dst_img1 = ImageCreateTrueColor($new_w1,$new_h1);
$dst_img2 = ImageCreateTrueColor($new_w2,$new_h2);

$src_img = ImageCreateFromJpeg($Upload_FileName);

ImageCopyResampled($dst_img1,$src_img,0,0,0,0,$new_w1,$new_h1,ImageSX($src_img),ImageSY($src_img));
ImageCopyResampled($dst_img2,$src_img,0,0,0,0,$new_w2,$new_h2,ImageSX($src_img),ImageSY($src_img));

ImageJpeg($dst_img1, $til1);
ImageJpeg($dst_img2, $til2);
}

if ($_GET['UploadBillede'] == "Ok") {
if ($_POST['Kategori'] == "") {
echo 'Der er sket en fejl. Du skal vælge en kategori inden upload';
}
else {
$i = 1;
while ($i++ <= $AntalBilleder) {
$ii = $i - 1;

$NowFile = 'img'. $ii;
$NowFileName = $FileName .'_'. $ii .'.jpg';
$Upload_FileName = $_FILES[$NowFile]['tmp_name'];
$ImgKategori = $_POST['Kategori'];

if(is_uploaded_file($Upload_FileName)) {
Billede_ReSize($NowFile,$NowFileName,$MapName,$ThumbMapName,
$ImgBigSize,$ImgSmallW,$ImgSmallH);
mysql_query("INSERT INTO galleri_img SET name = '$NowFileName', img_kat = '$ImgKategori'");
}
}
}
}

echo '
<table>
<form action="'. $_SERVER['PHP_SELF'] .'?UploadBillede=Ok" method="post" enctype="multipart/form-data">
<tr>
<td>Kategori</td>
<td>
<select name="Kategori">
<option value="" />- Vælg -
';

$res_kat = mysql_query("SELECT * FROM galleri_kat ORDER BY name");
while ($row_kat = mysql_fetch_array($res_kat)) {
echo '<option value="'. $row_kat[id] .'" />'. $row_kat[name];
}
echo '
</select>

</td>
</tr>
';

MakeImgInput($AntalBilleder);

echo '
<tr>
<td></td>
<td><input type="submit" value="Upload"></td>
</tr>
</table>
';
?>


MySQL tableren er her sådan som jeg har lavet dem.


CREATE TABLE `galleri_img` (
`id` int(11) NOT NULL auto_increment,
`name` varchar(50) default NULL,
`img_kat` int(11) default NULL,
PRIMARY KEY (`id`)
) TYPE=MyISAM AUTO_INCREMENT=5 ;

CREATE TABLE `galleri_kat` (
`id` int(11) NOT NULL auto_increment,
`name` varchar(32) default NULL,
PRIMARY KEY (`id`)
) TYPE=MyISAM AUTO_INCREMENT=4 ;


 
 
Bedømmelse

Fra : pyllle


Dato : 03-11-05 11:01



Bedømmelse

Fra : vil.du


Dato : 03-11-05 11:27



Bedømmelse

Fra : maj_britt


Dato : 03-11-05 11:28



Bedømmelse

Fra : dk


Dato : 03-11-05 11:16



Bedømmelse

Fra : Rina2


Dato : 03-11-05 11:42



Du har følgende muligheder
Eftersom du ikke er logget ind i systemet, kan du ikke lave en bedømmelse til dette tip.

Hvis du ikke allerede er registreret, kan du gratis blive medlem, ved at trykke på "Bliv medlem" ude i menuen.
Søg
Reklame
Statistik
Spørgsmål : 177414
Tips : 31962
Nyheder : 719565
Indlæg : 6407845
Brugere : 218876

Månedens bedste
Årets bedste
Sidste års bedste