| Autor | Zpráva | ||
|---|---|---|---|
| Gabo Profil * |
#1 · Zasláno: 31. 8. 2011, 17:00:22
Ahojte, chcel by som nahravat fotky na web s moznostou vyberu adresaru kam sa ma dana fotka nahrat, poradite????
|
||
| ReVolt Profil |
#2 · Zasláno: 31. 8. 2011, 17:16:19
udělej si <select>s možnostmi kam lze uloadnout a při zpracování použij pro cílový adresář hodnotu ze selecu
víc ti říct nemůžu, nevím jak máš strukturován kód, přidej sem kód, aby se dalo říct více |
||
| Gabo Profil * |
subory vyzeraju takto: upload.php
<?php
if ($pokracuj == 1)
{ // uživatel je přihlášený tak mu dovolíme nahrát fotky
echo '<span class="small">Maximálna šírka obrázku je 1280 px., väčší obrázok nie je možné uložiť.<br>Uložiť je možné len obrázok vo formáte JPG.<br>Obrázok sa uloží do albumu "SIAF".<br><br>V názve obrázku nepoužívajte špeciálne znaky!</span>'."\n";
echo '<hr>'."\n";
if ( isset($_GET['upload']) ) { $send = $_GET['upload']; }
if ( (isset($send)) && ($send == "ok") )
{
$slozka = "vsetky/";
$soubor = $_FILES["file"]["tmp_name"];
$type = $_FILES["file"]["type"];
if ($type == "image/jpeg")
{
if (is_uploaded_file($soubor))
{
$velikost=getimagesize($soubor);
$sirka=$velikost[0];
$vyska=$velikost[1];
if ($sirka <= 1280)
{
$foto = $_FILES["file"]["name"];
$rename_foto = strtr($foto,"äëiöüáčďéěíňóřšťúůýž ÄËIÖÜÁČĎÉĚÍŇÓŘŠŤÚŮÝŽ.","aeiouacdeeinorstuuyz_aeiouacdeeinorstuuyz-");
if (!file_exists($slozka.$rename_foto))
{
move_uploaded_file($_FILES["file"]["tmp_name"], $slozka.$rename_foto);
header('location: index.php?kapitola=siaf_watermark&image='.$foto);
/*echo '<script type="text/javascript" language="javascript" event="onLoad()">';
echo '//<![CDATA[
window.setTimeout("window.location.href=\"thumb800.php?image='.$foto.'\"", 1000)';
echo '//]]>
</script>';*/
}
else { echo "<p><span class='red'>Nahrávanie fotografie zlyhalo, súbor s rovnakým názvom už existuje.</span></p>"; }
}
else { echo "<p><span class='red'>Nahrávanie fotografie zlyhalo, veľký obrázok! (".$sirka."x".$vyska."px)</span></p>"; }
}
}
else { echo "<p><span class='red'>Nahrávanie fotografie zlyhalo, len súbor jpg je možné nahrať!</span></p>"; }
}
// formular pro upload
echo "<form action='index.php?kapitola=fotosutaz&upload=ok' method='post' enctype='multipart/form-data'>";
echo '<input type="file" name="file"><br>'."\n";
echo "<br>"."\n";
echo '<input type="submit" value="Vložit"></form>'."\n";
echo "<br>"."\n"; echo "<br>"."\n";
if ( (isset($_GET['up'])) && ($_GET['up'] == "ok") ) { echo "Súbor bol nahratý"; }
}
else {
echo "Pre upload obrázku musíte byť prihlásený!";
}
?>a thumb800.php <?php
if ($pokracuj == 1) {
header('Content-type: image/jpeg');
/**********************************************
script na zmenšení fotky s přidáním vodoznaku
***********************************************/
$galerie = $_GET['pict']; // získání složky kam se má zmenšená fotka uložit
$jmeno= $_GET['image']; // získání názvu fotky
$adresa = "./photos/SIAF/".$jmeno; // cílová složka
$adresa_org = "./vsetky/".$jmeno; // zdrojový obrázek
$font_size = 14; // velikost textu
$font = "./verdana.ttf";
$datum = Date("j.m.Y");
$obr = "preklad.png";
$podklad = ImageCreateFromPNG($obr);
$color = ImageColorAllocate($podklad, 200, 200, 200);
$velikost=getimagesize($adresa_org);
$sirka=$velikost[0];
$vyska=$velikost[1];
if ( $sirka < 1280 ) // Nezvetsuj mensi fotky
{
$tn_sirka = $sirka;
$tn_vyska = $vyska;
}
else // fotka má 1280px
{
$tn_sirka=1280; // požadovaná šířka fotografie
$tn_vyska=1280*($vyska/$sirka); // dopočítání správné výšky v poměru
}
if ( $tn_sirka <= 1024 ) // velikost písma podle velikosti obrázku
{
$font_size = 11;
$font = "./verdanab.ttf";
if ( $tn_sirka < 800 )
{
$font_size = 9;
if ( $tn_sirka < 400 )
{
$font_size = 6;
}
}
}
$zhora = $tn_vyska - 20;
$bbox = imagettfbbox ($font_size,0,$font,"upload by:".$_SESSION['login']);
$zlava = ($tn_sirka / 2)-($bbox[2] / 2);
$org=ImageCreateFromJpeg($adresa_org);
$tn=ImageCreateTrueColor($tn_sirka,$tn_vyska);
umask(0000);
ImageCopyResampled($tn,$org,0,0,0,0,$tn_sirka,$tn_vyska,$sirka,$vyska);
ImageTTFText ($tn, $font_size, 0, $zlava, $zhora, $color, $font,"upload by: ".$_SESSION['login']);
ImageJpeg($tn, $adresa, 95);
//ImageJpeg($tn);
ImageDestroy($tn);
ImageDestroy($org);
header("HTTP/1.1 301 Moved Permanently");
header('location: index.php?kapitola=upload_picture_complete_siaf');
header("Connection: close");
}
else
{
echo "Pre nahranie fotiek musíte byť prihlásený!";
}
?>Obrazky teraz nahrava do adresaru SIAF... ja by som chcel aby sa tento adresar dal zmenit... a nejak to nejdem rozchodit DAKUJEM Moderátor Joker: Vkládej prosím kódy mezi značky [>pre] a [>/pre] (stačí kliknout na
). |
||
| ReVolt Profil |
#4 · Zasláno: 31. 8. 2011, 17:43:17
tak dej to toho formuláře možnost výběru adresáře např.:
<select name="adresar"> <option value="adresar_1">adresář 1</option> <option value="adresar_2">adresář 2</option> . . . <option value="adresar_n">adresář n</option> </select> a tam kde zpracováváš data doplň $vybrany_adresar = $_POST['adresar']; a v tomto případě vypadá kód pro vložení do vybraného adresáře takto: $adresa = "./photos/" . $vybrany_adresar . "/".$jmeno; // cílová složka |
||
| Gabo Profil * |
#5 · Zasláno: 31. 8. 2011, 17:55:16
mozete to tam doplnit nejak sa mi to nedari rozchodit dakujem
|
||
| ReVolt Profil |
#6 · Zasláno: 31. 8. 2011, 18:03:15
aha, jsem si nevšiml, že to jsou dva různé soubory, zkus to udělat takhle:
upload.php formulář echo "<form action='index.php?kapitola=fotosutaz&upload=ok' method='post' enctype='multipart/form-data'>";
echo '<input type="file" name="file"><br>'."\n";
echo "<br>"."\n";
echo "Složka: <select name=\"adresar\">";
echo "<option value=\"adresar_1\">adresář 1</option>";
echo "<option value=\"adresar_2\">adresář 2</option>";
.
.
.
echo "<option value=\"adresar_n\">adresář n</option>";
echo "</select>";
echo '<input type="submit" value="Vložit"></form>'."\n";
echo "<br>"."\n"; echo "<br>"."\n";
if ( (isset($_GET['up'])) && ($_GET['up'] == "ok") ) { echo "Súbor bol nahratý"; }
}
else {
echo "Pre upload obrázku musíte byť prihlásený!";
}potom místo $vybrany_adresar = $_POST['adresar']; zkus použít relaci $_SESSION['vybrany_adresar'] = $_POST['adresar']; v souboru thumb800.php $vybrany_adresar = $_SESSION['vybrany_adresar']; a potom už by měl fungovat tento kód $adresa = "./photos/" . $vybrany_adresar . "/".$jmeno; // cílová složka |
||
|
Časová prodleva: 14 let
|
|||
0
).