Visualizzazione risultati 1 fino 11 di 11

Discussione: Uploader in php

  1. #1
    Guest

    Question Uploader in php

    Salve a tutti volevo creare un uploader su altervista ho trovato questo codice già fatto il tutto funziona tranne che quando provo ad uploadare mi da questo messaggio "Couldn't copy avatar.png to server, please make sure ./uploads/ is chmod 777 and the path is correct." Non ne capisco niente di linguaggi php XD...
    Codice PHP:
    <?
    error_reporting
    (7);
    $max_file_size="30720";
    $max_combined_size="61440";
    $file_uploads="2";
    $websitename="file uploader";
    $random_name=false;
    $allow_types=array("jpg","gif","png","swf");
    $folder="./uploads/";
    $full_url="http://arcadeprehacks.altervista.org/uploads/";
    $fullpath="";
    $password="";
    $password_md5=md5($password);
    If(
    $password) {
    If(
    $_POST['verify_password']==true) {
    If(
    md5($_POST['check_password'])==$password_md5) {
    setcookie("phUploader",$password_md5,time()+86400);
    sleep(1); //seems to help some people.
    header("Location: http://".$_SERVER['HTTP_HOST'].$_SERVER['PHP_SELF']);
    exit;

    }
    }
    }
    $password_form="";
    If(
    $password) {
    If(
    $_COOKIE['phUploader']!=$password_md5) {
    $password_form="<form method=\"POST\" action=\"".$_SERVER['PHP_SELF']."\">\n";
    $password_form.="<table align=\"center\" class=\"table\">\n";
    $password_form.="<tr>\n";
    $password_form.="<td width=\"100%\" class=\"table_header\" colspan=\"2\">Password Required</td>\n";
    $password_form.="</tr>\n";
    $password_form.="<tr>\n";
    $password_form.="<td width=\"35%\" class=\"table_body\">Enter Password:</td>\n";
    $password_form.="<td width=\"65%\" class=\"table_body\"><input type=\"password\" name=\"check_password\" /></td>\n";
    $password_form.="</tr>\n";
    $password_form.="<td colspan=\"2\" align=\"center\" class=\"table_body\">\n";
    $password_form.="<input type=\"hidden\" name=\"verify_password\" value=\"true\">\n";
    $password_form.="<input type=\"submit\" value=\" Verify Password \" />\n";
    $password_form.="</td>\n";
    $password_form.="</tr>\n";
    $password_form.="</table>\n";
    $password_form.="</form>\n";
    }
    }
    function
    get_ext($key) {
    $key=strtolower(substr(strrchr($key, "."), 1));
    $key=str_replace("jpeg","jpg",$key);
    return
    $key;
    }
    $ext_count=count($allow_types);
    $i=0;
    foreach(
    $allow_types AS $extension) {
    If(
    $i <= $ext_count-2) {
    $types .="*.".$extension.", ";
    } Else {
    $types .="*.".$extension;
    }
    $i++;
    }
    unset(
    $i,$ext_count); // why not
    $error="";
    $display_message="";
    $uploaded==false;
    If(
    $_POST['submit']==true AND !$password_form) {
    For(
    $i=0; $i <= $file_uploads-1; $i++) {
    If(
    $_FILES['file']['name'][$i]) {

    $ext=get_ext($_FILES['file']['name'][$i]);
    $size=$_FILES['file']['size'][$i];
    $max_bytes=$max_file_size*1024;

    If(
    $random_name){
    $file_name[$i]=time()+rand(0,100000).".".$ext;
    } Else {
    $file_name[$i]=$_FILES['file']['name'][$i];
    }


    If(!
    in_array($ext, $allow_types)) {

    $error.= "Invalid extension for your file: ".$_FILES['file']['name'][$i].", only ".$types." are allowed.<br />Your file(s) were <b>not</b> uploaded.<br />";


    } Elseif(
    $size > $max_bytes) {

    $error.= "Your file: ".$_FILES['file']['name'][$i]." is to big. Max file size is ".$max_file_size."kb.<br />Your file(s) were <b>not</b> uploaded.<br />";

    // Check if the file already exists on the server..
    } Elseif(file_exists($folder.$file_name[$i])) {

    $error.= "The file: ".$_FILES['file']['name'][$i]." exists on this server, please rename your file.<br />Your file(s) were <b>not</b> uploaded.<br />";

    }

    }
    // If Files

    } // For
    $total_size=array_sum($_FILES['file']['size']);
    $max_combined_bytes=$max_combined_size*1024;
    If(
    $total_size > $max_combined_bytes) {
    $error.="The max size allowed for all your files combined is ".$max_combined_size."kb<br />";
    }
    // If there was an error take notes here!
    If($error) {
    $display_message=$error;
    } Else {
    // No errors so lets do some uploading!

    For($i=0; $i <= $file_uploads-1; $i++) {
    If(
    $_FILES['file']['name'][$i]) {
    If(@
    move_uploaded_file($_FILES['file']['tmp_name'][$i],$folder.$file_name[$i])) {
    $uploaded=true;
    } Else {
    $display_message.="Couldn't copy ".$file_name[$i]." to server, please make sure ".$folder." is chmod 777 and the path is correct.\n";
    }
    }
    }
    //For
    } // Else
    } // $_POST AND !$password_form
    ?>
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
    <head>
    <meta http-equiv="Content-Language" content="en-us" />
    <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
    <title><?php echo $websitename; ?> - Powered By phUploader</title>
    <style type="text/css">
    body{
    background-color:#FFFFFF;
    font-family: Verdana, Arial, sans-serif;
    font-size: 12pt;
    color: #000000;
    }
    .error_message{
    font-family: Verdana, Arial, sans-serif;
    font-size: 11pt;
    color: #FF0000;
    }

    .uploaded_message{
    font-family: Verdana, Arial, sans-serif;
    font-size: 11pt;
    color: #000000;
    }

    a:link{
    text-decoration:none;
    color: #000000;
    }
    a:visited{
    text-decoration:none;
    color: #000000;
    }
    a:hover{
    text-decoration:none;
    color: #000000;
    }


    .table {
    border-collapse:collapse;
    border:1px solid #000000;
    width:450px;
    }
    .table_header{
    border:1px solid #070707;
    background-color:#C03738;
    font-family: Verdana, Arial, sans-serif;
    font-size: 11pt;
    font-weight:bold;
    color: #FFFFFF;
    text-align:center;
    padding:2px;
    }

    .upload_info{
    border:1px solid #070707;
    background-color:#EBEBEB;
    font-family: Verdana, Arial, sans-serif;
    font-size: 8pt;
    color: #000000;
    padding:4px;
    }


    .table_body{
    border:1px solid #070707;
    background-color:#EBEBEB;
    font-family: Verdana, Arial, sans-serif;
    font-size: 10pt;
    color: #000000;
    padding:2px;
    }


    .table_footer{
    border:1px solid #070707;
    background-color:#C03738;
    text-align:center;
    padding:2px;
    }


    input,select,textarea {
    font-family: Verdana, Arial, sans-serif;
    font-size: 10pt;
    color: #000000;
    background-color:#AFAEAE;
    border:1px solid #000000;
    }

    .copyright {
    border:0px;
    font-family: Verdana, Arial, sans-serif;
    font-size: 9pt;
    color: #000000;
    text-align:right;
    }

    form{
    padding:0px;
    margin:0px;
    }
    </style>

    <?
    If($password_form) {

    Echo
    $password_form;

    } Elseif(
    $uploaded==true) {?>

    <table align="center"class="table">

    <tr>
    <td class="table_header" colspan="2"><b>Your file(s) have been uploaded!</b> </td>
    </tr>
    <tr>
    <td class="table_body">
    <br />
    <?
    For($i=0; $i <= $file_uploads-1; $i++) {

    If(
    $_FILES['file']['name'][$i]) {
    $file=$i+1;

    Echo(
    "<b>File #".$file.":</b> <a href=\"".$full_url.$file_name[$i]."\" target=\"_blank\">".$full_url.$file_name[$i]."</a><br /><br />\n");
    }

    }

    ?>
    <br />
    <a href="<?=$_SERVER['PHP_SELF'];?>">Go Back</a>
    <br />
    </td>
    </tr>
    </table>

    <?} Else {?>

    <?If($display_message){?>
    <div align="center" class="error_message"><?=$display_message;?></div>
    <br />
    <?}?>
    <form action="<?=$_SERVER['PHP_SELF'];?>" method="post" enctype="multipart/form-data" name="phuploader">
    <table align="center"class="table">

    <tr>
    <td class="table_header" colspan="2"><b><?=$websitename;?></b> </td>
    </tr>
    <tr>
    <td colspan="2" class="upload_info">
    <b>Allowed Types:</b> <?=$types?><br />
    <b>Max size per file:</b> <?=$max_file_size?>kb.<br />
    <b>Max size for all files combined:</b> <?=$max_combined_size?>kb.<br />
    </td>
    </tr>
    <?For($i=0;$i <= $file_uploads-1;$i++) {?>
    <tr>
    <td class="table_body" width="20%"><b>Select File:</b> </td>
    <td class="table_body" width="80%"><form action="nome.php"><input type="file" name="file[]" size="30" /></form></td>
    </tr>
    <?}?>
    <tr>
    <td colspan="2" align="center" class="table_footer">
    <input type="hidden" name="submit" value="true" />
    <input type="submit" value=" Upload File(s) " /> &nbsp;
    <input type="reset" name="reset" value=" Reset Form " />
    </td>
    </tr>
    </table>
    </form>

    <?
    }
    ?>
    <table class="table" style="border:0px;" align="center">
    <tr>
    <td></td>
    </tr>
    </table>
    </body>
    </html>
    Ultima modifica di thekillerupload : 18-05-2014 alle ore 22.52.37

  2. #2
    L'avatar di saitfainder
    saitfainder non è connesso Sëniör Stäff
    Data registrazione
    06-12-2002
    Residenza
    Torino
    Messaggi
    8,715

    Predefinito

    Hai creato la cartella uploads?


    «È una mia peculiarità distorcere la verità e inventarne di nuove.»
    «I tuoi orientamenti hanno su di me un effetto prossimo allo zero.»


  3. #3
    Guest

    Predefinito

    Si ho provato a creare il file in php e la cartella uploads ma niente, poi ho provato a mettere il file php nella cartella ma stesso errore....

  4. #4
    L'avatar di saitfainder
    saitfainder non è connesso Sëniör Stäff
    Data registrazione
    06-12-2002
    Residenza
    Torino
    Messaggi
    8,715

    Predefinito

    Controlla anche via FTP che i permessi della cartella siano corretti.


    «È una mia peculiarità distorcere la verità e inventarne di nuove.»
    «I tuoi orientamenti hanno su di me un effetto prossimo allo zero.»


  5. #5
    Guest

    Predefinito

    Scusa la mia ignoranza in materia come si fa?

  6. #6
    L'avatar di alemoppo
    alemoppo non è connesso Staff AV
    Data registrazione
    24-08-2008
    Residenza
    PU / BO
    Messaggi
    22,266

  7. #7
    Guest

    Predefinito

    Grazie mille ecco il risultato ^_^

  8. #8
    L'avatar di saitfainder
    saitfainder non è connesso Sëniör Stäff
    Data registrazione
    06-12-2002
    Residenza
    Torino
    Messaggi
    8,715

    Predefinito

    Quindi, come immaginavo, da quel punto di vista è tutto a posto.

    La soluzione è invece che nello script hai indicato "uploads" e la cartella l'hai chiamata "Uploads", la maiuscola fa la differenza. E ovviamente lo script deve trovarsi fuori da quella cartella.


    «È una mia peculiarità distorcere la verità e inventarne di nuove.»
    «I tuoi orientamenti hanno su di me un effetto prossimo allo zero.»


  9. #9
    Guest

    Predefinito

    Ok grazie mille funziona ora però ho notato un altro problema http://thekillerupload.altervista.org/upload.php quando vado sul secondo spazio per inserire una foto non me la carica..

  10. #10
    Data registrazione
    20-04-2014
    Messaggi
    149

    Predefinito

    Hai detto di non saper nulla di PHP giusto?

  11. #11
    Guest

    Predefinito

    Giusto O.o il codice php era qui sul forum l'ho preso da un utente che lo dava ad un altro utente...

Regole di scrittura

  • Non puoi creare nuove discussioni
  • Non puoi rispondere ai messaggi
  • Non puoi inserire allegati.
  • Non puoi modificare i tuoi messaggi
  •