Gå til innhold

problem med opplastnings kode


Anbefalte innlegg

Videoannonse
Annonse

PHP
// Sjekker om filen blir flyttet ordentlig

$successful_moved_file = move_uploaded_file($old_path, $target_path) ? true : false;

if( $valid_type && $valid_size && $successful_moved_file) {

 echo "The file $filename has been uploaded";

} else{

 echo "There was an error uploading the file, please try again!";

}

 

Flytter du ikke her filen uansett filtype? Filen flyttes vel når du assigner $successful_moved_file? ikke når du bruker den i IF'en?

 

EDIT: "og .gif format funker vist også"

Endret av Kagee
Lenke til kommentar
// Sjekker om filen blir flyttet ordentlig
$successful_moved_file = move_uploaded_file($old_path, $target_path) ? true : false;
if( $valid_type && $valid_size && $successful_moved_file) {
echo "The file $filename has been uploaded";
} else{
echo "There was an error uploading the file, please try again!";
}

 

Flytter du ikke her filen uansett filtype? Filen flyttes vel når du assigner $successful_moved_file? ikke når du bruker den i IF'en?

8009228[/snapback]

 

Edit: Du postet akkurat i det jeg lurte på hvorfor du postet det du gjorde.

 

Nei, jeg sier hvis true og true og true, så skriv ut

 

Jeg innbilder meg iallfall at skriptet avbryter hvis det blir false på noen av de... Men kanskje det heller burde vært

 

if($valid_filetype && $valid_size){
if($successful_moved_file){
print //
}else{
print //
}
}

?

Endret av CruellaDeVille
Lenke til kommentar
// Sjekker om filen blir flyttet ordentlig
$successful_moved_file = move_uploaded_file($old_path, $target_path) ? true : false;
if( $valid_type && $valid_size && $successful_moved_file) {
echo "The file $filename has been uploaded";
} else{
echo "There was an error uploading the file, please try again!";
}

 

Flytter du ikke her filen uansett filtype? Filen flyttes vel når du assigner $successful_moved_file? ikke når du bruker den i IF'en?

8009228[/snapback]

 

Edit: Du postet akkurat i det jeg lurte på hvorfor du postet det du gjorde.

 

Nei, jeg sier hvis true og true og true, så skriv ut

8009244[/snapback]

 

Ligger det en zip-fil på disken din nå?

Lenke til kommentar

// Sjekker om filen blir flyttet ordentlig

if( $valid_type && $valid_size) {
echo "The file $filename has been uploaded";
$successful_moved_file = move_uploaded_file($old_path, $target_path) ? true : false;
if ($successful_moved_file) { echo "File ble flyttet"; }
} else{
echo "There was an error uploading the file, please try again!";
}

 

Funker bedre=?

Lenke til kommentar
// Sjekker om filen blir flyttet ordentlig

if( $valid_type && $valid_size) {
echo "The file $filename has been uploaded";
$successful_moved_file = move_uploaded_file($old_path, $target_path) ? true : false;
if ($successful_moved_file) { echo "File ble flyttet"; }
} else{
echo "There was an error uploading the file, please try again!";
}

 

Funker bedre=?

8009368[/snapback]

 

Jeg skjønner ikke dette her. Den bryr seg om størrelse, men ikke om mimetype. Er det kanskje bedre å se på etternavn til filen?

 

Og - header('location:url'); skulle ikke den redirigere?

if(!($valid_size || $valid_type)) {
// redirects
//var_dump(!$valid_size);
//var_dump(!$valid_type);
$_SESSION['message'] = "Error during uploading: " . $message;
 	header("location:$url");
 	exit;
}
print "fuck!";

 

Hmmmf, her skrives fuck ut, selv om jeg har sagt at den skal sende tilbake til url. Why? Why?

Lenke til kommentar
Ingen output før header?

 

Filendelser kan enkelt endres.

8009577[/snapback]

 

Da ville jeg iallfall fått en feilmelding. Men poenget er at den sier overhode ingenting, redirigerer ikke og skriver ut %&¤%& der hvor jeg trodde den ville redirigere.

 

Fy f - dette var dumt. Der røyk den fredelige kvelden i sofaen. Dette må jeg fikse :/

Lenke til kommentar
Ingen output før header?

 

Filendelser kan enkelt endres.

8009577[/snapback]

 

Da ville jeg iallfall fått en feilmelding. Men poenget er at den sier overhode ingenting, redirigerer ikke og skriver ut %&¤%& der hvor jeg trodde den ville redirigere.

 

Fy f - dette var dumt. Der røyk den fredelige kvelden i sofaen. Dette må jeg fikse :/

8009614[/snapback]

 

Lært noe nytt, som egentlig er ganske innlysende, men alikevel ikke

move_uploaded_file flytter faktisk filen...

 

:$

Lenke til kommentar
Så det var derfor du ikke skjønte hva jeg mente var feil :-)

 

Hvordan går det med opplastingsscriptet? Eventuelt - hvor er det dere tester det?

8009825[/snapback]

Jeg har gjort noe slikt:

<?php
session_start();
require('../wp-blog-header.php');
define('WP_USE_THEMES', FALSE);
$url = get_bloginfo('url')."?page_id=386";
// Mappe til å legge bildene i
$upload = "./uploads";
// Sjekker om det er en mappe og at den er skrivbar
$target_path =is_dir($upload) && is_writable($upload) ? $upload : chmod($upload, "0757");
// henter ut tmp-sti til bildet
$file = isset($_FILES['file']) ? $_FILES['file'] : null;
$old_path = $file['tmp_name'];
// Henter ut navnet til bildet (ikke nødvendig å bruke basename())
$filename = strip_tags($file['name']);
$target_path = "$target_path/$filename";
// Henter ut filtype
$filetype = strtolower($file['type']);

// Gyldige mime-types for jpg-bilder
$mimetypes = array("image/jpg", "image/jpeg", "image/pjpg", "image/pjgeg");

// Henter ut maks-størrelse
$max_size = $_POST['MAX_FILE_SIZE'];
// Finner filstørrelsen
$filesize = $file['size'];
// Sjekker gyldig mime-type
$valid_type = in_array($filetype, $mimetypes) ? true: false;
$valid_size = $filesize <=$max_size && $filesize >0 ? true: false;
$message = "";

// everything okay
if(!$valid_size || !$valid_type) {
$message .=  "Error during uploading: ";
if(!$valid_type) $message .= "Wrong filetype, only ". implode($mimetypes, ", ")." are allowed";
if(!$valid_size) $message .= "The uploaded file is too big, max size = ".$max_size/1024 ."KB";
}else if(!move_uploaded_file($old_path, $target_path)){
$message .= "Error during uploading: Unable to copy file to destination";
}else{
// changing file permissions on image
chmod($target_path, 0756);
$message .="your file is added";
$url .="?filename=$filename";	
}

$_SESSION['message'] = $message;
// redirects
 	header("location:$url");
 	exit();

?>

Edit: manglet et ! foran move_uploaded_file

Endret av CruellaDeVille
Lenke til kommentar

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 konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
×
×
  • Opprett ny...