Hallo, ik ben nieuw hier en zit compleet vast in een bepaalde ontwikkeling voor een website. Ik ben nooit echt ver in PHP gekomen behalve het maken van een webshopje etc.
Nu vroeg iemand mij om een systeem te maken om PDF documenten up te kunnen loaden.

Ik heb hier naar gezocht en het is mij gelukt om dit te doen (zonder MYSQL database).
Het zal niet de mooiste manier zijn maar op de volgende manier worden files geupload:

<?php
if(isset($_POST['submit'])) {
	// If action is add. 
	if($_POST['action'] == 'add') {
		// Define the folder where the file will be uploaded.
		$upload_path = './files/' . $_FILES['file']['name'];
		// Check if the file already exists in the folder.
		if(!file_exists($upload_path)) {
			// Check the size of the file. 
			// The file should be under 100 kb. But OVER 0 bytes.
			if($_FILES['file']['size'] < 10000000 && $_FILES['file']['size'] > 0) {
				// If there are any errors.
				if($_FILES['file']['error']) {
					echo "Error: " . $_FILES['file']['error'];
				} else {
					// Success!
					echo "File successfully uploaded.<br /><br />";
					echo "The filename is: <strong>" . $_FILES['file']['name'] . "</strong><br />";
					echo "The filesize is: <strong>" . $_FILES['file']['size'] . "</strong><br />";
					echo "The filetype is: <strong>" . $_FILES['file']['type'] . "</strong><br />";
					echo "The file is temporary saved in: <strong>" . $_FILES['file']['tmp_name'] . "</strong><br />"; 
 
					// Move uploaded file to upload folder.
					move_uploaded_file($_FILES['file']['tmp_name'], $upload_path);
				}
			} else {
				echo $_FILES['file']['size'] < 1 ? 'Incorrect filename.' : 'File size is too big';
			} 
		} else {
			echo "File already exists in your folder. ";
		}
	}
}
?>


En dan laat ik ze vervolgens op de volgende manier zien op een pagina:


 <?php
 if ($handle = opendir('files')) {
   while (false !== ($file = readdir($handle)))
      {
          if ($file != "." && $file != "..")
	  {
          	$thelist .= '<li><a href="files/'.$file.'">'.$file.'</a></li><br>';
          }
       }
  closedir($handle);
  }
?>


Dit werkt allemaal prima, ik zou alleen de mogelijkheid willen toevoegen om ze te verwijderen. Ik neem aan dat dit mogelijk is maar ik heb nog nooit deze functies gebruikt. Ik heb google afgestruind maar kon het niet vinden.

Bedankt!
Ontzettend bedankt voor de snelle reactie!
het gaat nu even om het weergeven van de items in de folder(waaruit we willen verwijderen).

$thelist .= '<li><a href="files/'.$file.'">'.$file.'</a></li><br>';

( dit laat alle bestanden zien, dus elk bestand een link)

Ik zou hier graag een 'x' bij printen en wanneer daar opgeklikt wordt de desbetreffende file deleten met 'unlink'. Ik heb dit wel gedaan met gewone SQL lines alleen ik ben een beetje huiverig om hier dingen uit te gaan proberen. Het zal wel niet mogelijk zijn maar wil niet mn hele map kwijt raken!

Kan iemand mij nog een stapje verder helpen?

Bedankt!
ALs je PDF's in de DB staan dan heb je een ID en een filename. Je zou iets kunnen van: delete.php?id=1 en dan id 1 uit de DB deleten en vervolgens unlinken.

Er is geen DB, de naam van de file wordt gewoon geprint en er wordt niks vast gelegd in een db. Het enige wat mijn script doet is een bestand naar een map sturen. Ik kan deze map uitlezen en als 'opslaan als' links er neer zetten.

Ik heb nu ook per item een delete knop(met de naam van het bestand), deze verwijst naar een delete script waar hij de naam post.

<?php

$dir = '../files'; 
unlink($dir.'/'.$_GET['file'];

?>


Ik zie op mijn hoofdpagina dat de juiste file naam gestuurd wordt naar dit script. Alleen in dit kleine stukje script gaat er iets fout.

Parse error: syntax error, unexpected ';' in /var/www/vhosts/blalblalblla.nl/httpdocs/verwijderdiespulletjes.php on line 4...

Ik zie hier iets duidelijk over het hoofd?
Slot erop, bedankt voor het op weg helpen Jurgen!

Gelieve Niet Bumpen:

Twee of meer keer achter elkaar in een topic posten heet bumpen. Bumpen is pas na 24 uur toegestaan en kan een reden zijn voor de admins en moderators om een topic te sluiten. Gebruik indien nodig de knop om je tekst aan te passen.

En slotjes doen we niet aan.

SanThe.

Reageren