Autor Zpráva
Pajda
Profil *
Před pár dny jsem Vás prosil zda nemá někdo nějaký script na upload obrázků, bylo mi doporučeno vyhledat "upload", což jsem udělal, ale nic co by se hodilo jsem nenašel. Script, který uploaduje obrázky na server mám, ale uloží ho tak jak je. Ale jak ho smazat nebo přejmenovat aby byl jedinečný to nevím. Našel (vykuchal) jsem scrit, který by to měl umět, ale zase nejede. Myslím, že pokud by ho někdo rozjel, tak by nebyl jen pro mne, ale určitě by se hodil i ostatním návštěvníkům. Takže díky všem :-))


<?php

function gettemplate($template,$endung="html") {
$templatefolder = "templates";
return str_replace(""","\"",implode("",file($templatefolder."/".$template."." .$endung)));
}

if($_POST['submit']) {

$userpic = $_FILES['userpic'];
$id = $_SESSION['login'];;


if($_POST['deluserpic']) {
$filepath = "./images/userpics/";
if(file_exists($filepath.$id.'.jpg')) @unlink($filepath.$id.'.jpg');
if(file_exists($filepath.$id.'.gif')) @unlink($filepath.$id.'.gif');
safe_query("UPDATE ".prefix."user SET userpic='' WHERE userID='$id' ");
}


$filepath = "./images/userpics/";
if ($userpic[name] != "" OR ($_POST['userpic_url'] != "" AND $_POST['userpic_url'] != "http://")) {
if($userpic[name] != "") {
move_uploaded_file($userpic[tmp_name], $filepath.$userpic[name].".tmp");
} else {
$userpic[name] = strrchr($_POST['userpic_url'],"/");
if(!copy($_POST['userpic_url'],$filepath.$userpic[name].".tmp")) {
$error = "can not copy file from server";
die('ERROR: '.$error.'<br><br><input type="button" class="button" onClick="javascript:history.back()" value="Back">');
}
}
@chmod($filepath.$userpic[name].".tmp", 0755);
$info = getimagesize($filepath.$userpic[name].".tmp");
if($info[0] < 231 && $info[1] < 211) {
if($info[2] == 2) {
$pic=$id.'.jpg';
if(file_exists($filepath.$pic)) @unlink($filepath.$pic);
if(file_exists($filepath.$id.'.gif')) @unlink($filepath.$id.'.gif');
rename($filepath.$userpic[name].".tmp", $filepath.$pic);
safe_query("UPDATE ".prefix."user SET userpic='$pic' WHERE userID='$id' ");
}
elseif($info[2] == 1) {
$pic=$id.'.gif';
if(file_exists($filepath.$pic)) @unlink($filepath.$pic);
if(file_exists($filepath.$id.'.jpg')) @unlink($filepath.$id.'.jpg');
rename($filepath.$userpic[name].".tmp", $filepath.$pic);
safe_query("UPDATE ".prefix."user SET userpic='$pic' WHERE userID='$id' ");
}
else {
if(unlink($filepath.$userpic[name].".tmp")) {
$error = "invalid picture-format (allowed: gif or jpg)";
die('ERROR: '.$error.'<br><br><input type="button" class="button" onClick="javascript:history.back()" value="Back">');
} else {
$error = "upload failed";
die('ERROR: '.$error.'<br><br><input type="button" class="button" onClick="javascript:history.back()" value="Back">');
}
}
}
else {
@unlink($filepath.$userpic[name].".tmp");
$error = "picture is to big max 230/210px";
die('ERROR: '.$error.'<br><br><input type="button" class="button" onClick="javascript:history.back()" value="Back">');
}
}

}
eval ("$myprofile = "".gettemplate("myprofile")."";");
echo $myprofile;
?>






myprofile: (uloženo ve šložce templates)


<form method="post" name="post" action="index.php?site=myprofile" enctype="multipart/form-data">

<table width="100%" border="0" cellspacing="1" cellpadding="2">

<tr>
<td</td>
<td><input name="userpic" type="file" size="30">
<input class="input" name="deluserpic" type="checkbox" value="1">
delete (max230/210)</span><br>or<br><input name="userpic_url" type="text" size="30" class="form_off" value="http://"></td>
</tr>

<tr height="24">
<td></td>
<td height="24"><input type="submit" name="submit" value="update profile">
</td>
</tr>
</table>
</form>
djlj
Profil
Úžasný. A my máme teď za tebe hledat tu chybu? Projev trochu vlastní iniciativy.
Pajda
Profil *
djlj
tu už projevuju druhej den :(
djlj
Profil
Pajda
Promiň, ale i dement sem umí hodit tříkilometrový kód se slovy: tak mi to opravte.
Kdybys alespoň napsal, v jaké části skriptu je problém, co to vypisuje za chyby atd., může ti někdo poradit.
Pajda
Profil *
djlj
dement možná jsem, nikdo tě nenutí aby jsi to opravoval nebo mi pomáhal!!
Pajda
Profil *
Warning: move_uploaded_file(./images/userpics/pic.gif.tmp) [function.move-uploaded-file]: failed to open stream: No such file or directory in myprofile.php on line 25

Warning: move_uploaded_file() [function.move-uploaded-file]: Unable to move '/tmp/phpFyN3X3' to './images/userpics/pic.gif.tmp' in myprofile.php on line 25

Warning: getimagesize() [function.getimagesize]: Unable to access ./images/userpics/pic.gif.tmp in myprofile.php on line 34

Warning: getimagesize(./images/userpics/pic.gif.tmp) [function.getimagesize]: failed to open stream: No such file or directory in myprofile.php on line 34

Warning: unlink(./images/userpics/pic.gif.tmp) [function.unlink]: No such file or directory in myprofile.php on line 51
temistokles
Profil
Warning: move_uploaded_file(./images/userpics/pic.gif.tmp) [function.move-uploaded-file]: failed to open stream: No such file or directory in myprofile.php on line 25 


Warning: move_uploaded_file() [function.move-uploaded-file]: Unable to move '/tmp/phpFyN3X3' to './images/userpics/pic.gif.tmp' in myprofile.php on line 25


Existuje adresár ./images/userpics? Ak nie, nezabudni mu nastaviť práva na zápis (ak nevieš ako, najlepšie to spravíš, keď nastavíš 777).

Vaše odpověď

Mohlo by se hodit


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm:

0