Ik heb een paar problemen met mijn script

ik wil graag namelijk plaatjes uploaden en dan tegelijk de naam in de DB toevoegen zodat een ander script (die wel werkt) het er uit kan halen en netjes plaatjes kan weergeven.

kunnen jullie mij met mijn probleem helpen?

hier het script dat ik nu heb (en niet werkt) :


<?php
 
include("connect.php");
 
$uploaddir = 'uploads/';
$uploadfile = $uploaddir . basename($_FILES['userfile']['name']);
 
$file_name = basename($_FILES['userfile']['name']);
$spatie = '&nbsp;&nbsp;&nbsp;';
$datum = date('Y-m-d H:i:s');

$filesize     = $_FILES['userfile']['size'];
 
 
 
if     (is_uploaded_file($_FILES['userfile']['tmp_name'])) {
		move_uploaded_file($_FILES['userfile']['tmp_name'], $uploadfile);
		
		mysql_query ("INSERT INTO jeroen_foto (`naam`,`dir`,`size`,`spatie`,`datum`) VALUES ('".$file_name."','".$uploaddir."','".$filesize."','".$spatie."','".$datum."')") or die (mysql_error()); 
		mysql_close();
		
 		echo "Afbeelding staat op de server<br><br>";
    
    }
	
else 
{
	echo "Possible file upload attack!\n";
}
 

?>
 

<form action="foto-toevoegen.php" method="post">
Foto: <input type="file" name="userfile" /><br />
<input type="submit" value="Upload File" />
</form>
Wat werkt er niet? En dit script is hartstikke onveilig... En backticks horen niet thuis in een query.
Wat gaat er fout? Krijg je foutmeldingen? Wat gaat er niet zoals je verwacht?

Kortom, geef eens meer informatie over wat je probleem nu eigenlijk is...
Hij upload het plaatje niet en voegt de naam niet in de database!

geen foutmeldingen!
maar dat komt waarschijnlijk omdat het script nog niet helemaal klopt

maar in ieder geval geen foutmeldingen van mysql


@ Douwe

de beveiliging voeg ik later apart in met mijn loginscript
geen foutmeldingen!
Lijkt me logisch aangezien de foutafhandeling in je script volledig ontbreekt!

Begin je script eens met:
<?php
ini_set('display_errors', 1);
error_reporting(E_ALL);
?>
En ga vervolgens ook eens degelijke foutafhandeling van je SQL queries toepassen...
Zet dit bovenin je script.
<?php
error_reporting(E_ALL);
ini_set("display_errors", 1);

// rest
?>

En de beveiliging die wordt bedoeld
de beveiliging voeg ik later apart in met mijn loginscript

heeft niets met inloggen te maken maar met mysql-injection.
Notice: Undefined index: userfile in ... on line 6

Notice: Undefined index: userfile in ... on line 8

Notice: Undefined index: userfile in ... on line 12

Notice: Undefined index: userfile in ... on line 16

dat geeft ie dan weer


maar kun je niet een stukje voorbeeld geven van wat ik het beste zou kunnen doen?

ben namelijk een totale NOOB
Begin eens met de <form> tag compleet te maken.
<form action="foto-toevoegen.php" method="post">

Moet zijn:
<form action="foto-toevoegen.php" method="post" enctype="multipart/form-data">
Gedaan!

maar het help niet tegen die foutmeldingen...


Wat moet ik nog meer veranderen om het werkend te krijgen?
@ jeroen: wat weerhoudt me ervan om iets anders dan een foto te uploaden? LET OP: mensen die een beetje zwak van geest zijn kunnen zo wel eens je db binnen raken!
alloewel hij nu wel het plaatje heeft geupload en de naam enz in de database heeft gebracht

Reageren