Lernes Skrevet 9. oktober 2006 Del Skrevet 9. oktober 2006 Jeg har et uploadscript på hjemmesiden min, alle som laster opp må være innlogget osv! Men det jeg lurer på er om noen vet et script som automatisk printer url adressen til filen som ble lastet opp?! Lenke til kommentar
Martin A. Skrevet 9. oktober 2006 Del Skrevet 9. oktober 2006 Post koden! Alltid post koden når du trenger hjelp. Trenger ikke et eget script til dette. Kun en enkel linje i filen din, så løser det seg. Lenke til kommentar
Lernes Skrevet 9. oktober 2006 Forfatter Del Skrevet 9. oktober 2006 Her er upload.php! Skjult tekst: (Marker innholdet i feltet for å se teksten): <?php //edit this $_max_file_size = '5000000'; //file size in bytes. $upload_dir = "uploads/"; //upload folder.. $_i = "3"; //number of files to upload at one time //end edit echo "Maximum file size : " . $_max_file_size/1000 . "MB<br>"; echo "<form enctype='multipart/form-data' action='?do=upload' method='post'>"; echo "<input type='hidden' name='MAX_FILE_SIZE' value='" . $_max_file_size , "'>"; echo "Choose your file(s): <br>"; //show number of files to select For($i=0; $i <= $_i-1;$i++) { echo "<input name='file" . $i . "' type='file'><br>"; } echo "<input type='submit' value='Upload File'>"; echo "</form>"; if($_GET['do'] == 'upload') { //upload all the fields until done For($i=0; $i <= $_i-1; $i++) { //create a random number $_random = rand(1, 1000000); //file with the upload folder $target_path = $upload_dir . $_random . basename($_FILES['file' . $i]['name']); //actual file name with the random number $_file_name = $_random . basename($_FILES['file' . $i]['name']); //do not upload the 'left blank' fields if(basename($_FILES['file' . $i]['name']) != '') { if(move_uploaded_file($_FILES['file' . $i]['tmp_name'], $target_path)) { //uploaded successfuly $_uploaded=1; } else { //error uploading $_error=1; } } else { $_check=$_check+1; } } //file(s) did upload if($_uploaded == '1') { $_uploaded=0; echo "The file(s) have been uploaded.<br>"; } //file uploaded? if($_error == '1') { $_error=0; echo "There was an error uploading some of the file(s), please try again! Maybe the file size. Maximum file size is " . $_max_file_size/1000 . "KB<br>"; } //user selected a file? if($_check == $_i) { $_check=0; echo "Select a file first than click 'Upload File'<br>"; } } ?> Lenke til kommentar
simenss Skrevet 9. oktober 2006 Del Skrevet 9. oktober 2006 (endret) Skjult tekst: (Marker innholdet i feltet for å se teksten): <?php //edit this $_max_file_size = '5000000'; //file size in bytes. $upload_dir = "uploads/"; //upload folder.. $_i = "3"; //number of files to upload at one time //end edit echo "Maximum file size : " . $_max_file_size/1000 . "MB<br>"; echo "<form enctype='multipart/form-data' action='?do=upload' method='post'>"; echo "<input type='hidden' name='MAX_FILE_SIZE' value='" . $_max_file_size , "'>"; echo "Choose your file(s): <br>"; //show number of files to select For($i=0; $i <= $_i-1;$i++) { echo "<input name='file" . $i . "' type='file'><br>"; } echo "<input type='submit' value='Upload File'>"; echo "</form>"; // create file name array $file_names = array(); if($_GET['do'] == 'upload') { //upload all the fields until done For($i=0; $i <= $_i-1; $i++) { //create a random number $_random = rand(1, 1000000); //file with the upload folder $target_path = $upload_dir . $_random . basename($_FILES['file' . $i]['name']); //actual file name with the random number $_file_name = $_random . basename($_FILES['file' . $i]['name']); //do not upload the 'left blank' fields if(basename($_FILES['file' . $i]['name']) != '') { if(move_uploaded_file($_FILES['file' . $i]['tmp_name'], $target_path)) { //uploaded successfuly $_uploaded=1; // put file name to array array_push($file_names, $_file_name); } else { //error uploading $_error=1; } } else { $_check=$_check+1; } } //file(s) did upload if($_uploaded == '1') { $_uploaded=0; echo "The file(s) have been uploaded.<br>"; // print links foreach($file_names as $file_name) { print('<a href="'.$upload_dir.$file_name.'">'.$upload_dir.$file_name.'</a><br />'); } } //file uploaded? if($_error == '1') { $_error=0; echo "There was an error uploading some of the file(s), please try again! Maybe the file size. Maximum file size is " . $_max_file_size/1000 . "KB<br>"; } //user selected a file? if($_check == $_i) { $_check=0; echo "Select a file first than click 'Upload File'<br>"; } } ?> EDIT: Endret 9. oktober 2006 av simenss Lenke til kommentar
Lernes Skrevet 9. oktober 2006 Forfatter Del Skrevet 9. oktober 2006 Takker Virket perfekt nå Lenke til kommentar
Martin A. Skrevet 10. oktober 2006 Del Skrevet 10. oktober 2006 Jeg håper du er klar over at alle nå kan laste opp php-koder til siden din, og kjøre den ettersom du gir en link til filen. Lenke til kommentar
Lernes Skrevet 10. oktober 2006 Forfatter Del Skrevet 10. oktober 2006 Hmm, er klar over det nå Eks. på hva som kan gå galt? har bare venner som er registrert ! Lenke til kommentar
Martin A. Skrevet 10. oktober 2006 Del Skrevet 10. oktober 2006 De kan faktisk akkurat det de vil. De kan kjøre all PHP-kode, og utføre linuxkommandoer som apache har lov til. De kan feks snoke i dine passordfiler(feks for tilbkobling til database) osv. Lag deg et array som innholder de filtypene du vil tillate/ikke tillate. Så sjekker du om filendelsen inneholder, eller ikke inneholder noe av det du har satt i arrayet. Lenke til kommentar
Peter Skrevet 10. oktober 2006 Del Skrevet 10. oktober 2006 Filendelser har ingen betydning på linux-maskiner. Lenke til kommentar
Martin A. Skrevet 10. oktober 2006 Del Skrevet 10. oktober 2006 Filendelser har ingen betydning på linux-maskiner. 7041042[/snapback] Stemmer det, men det betyr ikke at alt parses som PHP. Det jeg skulle frem til var egentlig at han ikke bør gi folk tilgang til å lase opp .php*, og andre filendelser som tilhører serversidescripting. Og om han skal det, bør han ikke gi ut filnavnet til opplasteren, eller ha opplastingsmappen utenfor webrota. Lenke til kommentar
Lernes Skrevet 10. oktober 2006 Forfatter Del Skrevet 10. oktober 2006 Okei! Men er det da noen som lager en liten kode jeg kan putte inn, så det blir umulig å laste opp .php osv... ? upload.php ligger ovenfor her ^ Lenke til kommentar
Peter Skrevet 10. oktober 2006 Del Skrevet 10. oktober 2006 Gjør det selv! Hvorfor skal vi gjøre det for deg? Det er ikke noe hokus pokus. her har du litt hjelp: http://no2.php.net/manual/en/function.pathinfo.php Lenke til kommentar
Anbefalte innlegg
Opprett en konto eller logg inn for å kommentere
Du må være et medlem for å kunne skrive en kommentar
Opprett konto
Det er enkelt å melde seg inn for å starte en ny konto!
Start en kontoLogg inn
Har du allerede en konto? Logg inn her.
Logg inn nå