De 3de regel moet de directe link weergeven.PHP Code:
echo "Het bestand ".$_FILES['bestand']['name']." is geupload<br>
<a href='".$locatie."".$_FILES['bestand']['name']."' target='_blank'>Klik hier om het te bekijken</a><br>
echo "Dit is de directlink http://www.onlinecrimineel/".$locatie.$_FILES['bestand']['name'].";
Maar ik krijg steeds deze error.
Parse error: syntax error, unexpected T_STRING, expecting ',' or ';' in /home/cxdmrzbh/domains/onlinecrimineel.nl/public_html/upload.php on line
Wie kan dit fixen?
- Hulp met php upload script
-
16-01-2009, 15:53 #1
- Berichten
- 1.907
- Lid sinds
- 16 Jaar
Hulp met php upload script
-
-
16-01-2009, 16:23 #2
- Berichten
- 1.197
- Lid sinds
- 17 Jaar
PHP Code:echo "Het bestand ".$_FILES['bestand']['name']." is geupload<br>
<a href='".$locatie."".$_FILES['bestand']['name']."' target='_blank'>Klik hier om het te bekijken</a><br>";
echo "Dit is de directlink http://www.onlinecrimineel/".$locatie.$_FILES['bestand']['name'].";
-
17-01-2009, 17:30 #3
- Berichten
- 82
- Lid sinds
- 17 Jaar
PHP Code:echo "Het bestand ".$_FILES['bestand']['name']." is geupload<br>
<a href='".$locatie.$_FILES['bestand']['name']."' target='_blank'>Klik hier om het te bekijken</a><br>";
echo "Dit is de directlink http://www.onlinecrimineel.nl/".$locatie.$_FILES['bestand']['name'];
-
17-01-2009, 17:45 #4
- Berichten
- 1.670
- Lid sinds
- 16 Jaar
Sowieso zal dit niet werken omdat het geüploade bestand eerst vanuit de temp directory naar een andere directory gekopieerd moet worden. Nu doe je niks met het bestand en verwijderd de server deze direct.
Overigens kan je de locatie van de file hiermee opvragen: $_FILES['bestand']['tmp_name']
Zo kan je het kopiëren:
copy($_FILES['bestand']['tmp_name'],"map_waar_het_naar_toe_moet_in_dezelfde_directory _als_dit_php_bestand");
De functie geeft true terug als het gelukt is en false als het bestand niet verplaatst is.Zie http://nl2.php.net/copy voor meer info.
-
18-01-2009, 08:59 #5
- Berichten
- 1.907
- Lid sinds
- 16 Jaar
Het werkt nu wel goed.
Alleen heb ik geen rename functie dus als 2 mensen iets uploaden met dezelfde naam is de eerste het kwijt.
Hoe bou ik dit het simpels in?
Dit is het script,:
<?
//verander de onderstaande gegevens
$locatie="upload/"; //of een andere map, vergeet niet de w-rechten
$toegestaan = "jpg, gif, png, bmp"; // extensies die toegestaan zijn
$max_size = 524288; //maximale grootte van het bestand in bytes
//stop met veranderen
set_time_limit(0);
if(isset($_POST['upload']))
{
if(is_uploaded_file($_FILES['bestand']['tmp_name']))
{
$extensie_bestand = pathinfo($_FILES['bestand']['name']);
$extensie_bestand = $extensie_bestand[extension];
$extensies_toegestaan = explode(", ", $toegestaan);
for($i = 0; $i < count($extensies_toegestaan); $i++)
{
if($extensies_toegestaan[$i] == "$extensie_bestand")
{
$ok = 1;
}
}
if($ok == 1)
{
if($_FILES['bestand']['size']>$max_size)
{
echo "Het bestand is te groot, de maximale grootte is: <b>$max_size</b>";
exit;
}
if(!move_uploaded_file($_FILES['bestand']['tmp_name'],
$locatie.$_FILES['bestand']['name']))
{
echo "het bestand kan niet worden verplaatst";
exit;
}
echo "Het bestand <b>".$_FILES['bestand']['name']." </b>is geupload. <br><br>";
echo "Dit is de directe link:<br> <a href='http://www.onlinecrimineel.nl/" .$locatie . $_FILES['bestand']['name'] . "'>http://www.onlinecrimineel.nl/" .$locatie . $_FILES['bestand']['name'] . "</a>.";
}
else
{
echo "Verkeerde extentie, de toegestane extensies zijn: <b>$toegestaan</b>";
}
}
else
{
echo "Het uploaden is mislukt";
}
}
?> <br><br> <form method="post" action="<?=$_SERVER['PHP_SELF']?>" enctype="multipart/form-data"> <input type="file" name="bestand"><br> <input type="submit" name="upload" value="uploaden"> </div>
-
18-01-2009, 09:55 #6
- Berichten
- 1.670
- Lid sinds
- 16 Jaar
Je hebt dit:
Code:if(!move_uploaded_file($_FILES['bestand']['tmp_name'], $locatie.$_FILES['bestand']['name']))
-
18-01-2009, 09:59 #7
- Berichten
- 1.907
- Lid sinds
- 16 Jaar
Kan ik niet iets maken met de datum erachter dus:
if(!move_uploaded_file($_FILES['bestand']['tmp_name']['date'],Aanvullend bericht:
$locatie.$_FILES['bestand']['name']['date']))
Of een getal dat steeds oploopt?
Het moet een uniek iets zijnLaatst aangepast door Wouterjan S : 18-01-2009 om 09:59 Reden: Automatisch samengevoegd.
-
18-01-2009, 10:02 #8
- Berichten
- 1.670
- Lid sinds
- 16 Jaar
Je kan time() gebruiken maar zonder een mysql tabel zal dit nooit uniek worden. Overigens gebruik je wat ik hierboven bedoel verkeerd.
if(!move_uploaded_file($_FILES['bestand']['tmp_name'],
$locatie.time().$_FILES['bestand']['name']['date']))
Onderstaande code is nog unieker.
if(!move_uploaded_file($_FILES['bestand']['tmp_name'],
$locatie.time().rand(1,10000).$_FILES['bestand']['name']['date']))
-
18-01-2009, 10:13 #9
- Berichten
- 1.907
- Lid sinds
- 16 Jaar
Maar later in het script komt word de link weergegeven.
Krijg je dan niet 2 verschillende unieke cijfers?
-
18-01-2009, 10:14 #10
- Berichten
- 1.670
- Lid sinds
- 16 Jaar
Dan doe je dit:
$nieuw_naam = time().rand(1,10000).$_FILES['bestand']['name']['date'];
if(!move_uploaded_file($_FILES['bestand']['tmp_name'],
$locatie.$nieuw_naam))
en je gebruikt $nieuw_naam voor de link.
-
18-01-2009, 10:18 #11
- Berichten
- 1.907
- Lid sinds
- 16 Jaar
Ik heb het nu zo gedaan.
Alleen het werkt niet goed.
Op onlinecrimineel.nl/upload.php kun je heb zien.
Maar ik snap niet hoe de fout kan.
<link rel="stylesheet" type="text/css" href="http://www.onlinecrimineel.nl/layout...01/css/css.css">
<title><? echo $sitelink;?></title>
<link rel="stylesheet" type="text/css" href="css-v1.css">
<body style="; margin: 0px;">
<table width=100%>
<link href="<? echo $sitelink;?>/layout/layout<?php echo $page->layout; ?>/style.css" type="text/css" rel="stylesheet">
</head>
<table align=center width=100%>
<tr><td class="subTitle"><b>upload plaatjes</b></td></tr>
<tr><td class="mainTxt" align="center">
<table cellpadding=0 cellspacing=0>
<br>
<br>
<div class="script">
<?
//verander de onderstaande gegevens
$locatie="upload/"; //of een andere map, vergeet niet de w-rechten
$toegestaan = "jpg, gif, png, bmp"; // extensies die toegestaan zijn
$max_size = 524288; //maximale grootte van het bestand in bytes
//stop met veranderen
set_time_limit(0);
if(isset($_POST['upload']))
{
if(is_uploaded_file($_FILES['bestand']['tmp_name']))
{
$extensie_bestand = pathinfo($_FILES['bestand']['name']);
$extensie_bestand = $extensie_bestand[extension];
$extensies_toegestaan = explode(", ", $toegestaan);
for($i = 0; $i < count($extensies_toegestaan); $i++)
{
if($extensies_toegestaan[$i] == "$extensie_bestand")
{
$ok = 1;
}
}
if($ok == 1)
{
if($_FILES['bestand']['size']>$max_size)
{
echo "Het bestand is te groot, de maximale grootte is: <b>$max_size</b>";
exit;
}
$nieuw_naam = time().rand(1,10000).$_FILES['bestand']['name']['date'];
if(!move_uploaded_file($_FILES['bestand']['tmp_name'],
$locatie.$nieuw_naam))
{
echo "het bestand kan niet worden verplaatst";
exit;
}
echo "Het bestand <b>".$_FILES['bestand']['name']." </b>is geupload. <br><br>";
echo "Dit is de directe link:<br>
<a href='http://www.onlinecrimineel.nl/" .$nieuw_naam . "'>http://www.onlinecrimineel.nl/" .$nieuw_naam. "</a>.";
}
else
{
echo "Verkeerde extentie, de toegestane extensies zijn: <b>$toegestaan</b>";
}
}
else
{
echo "Het uploaden is mislukt";
}
}
?>
<br><br>
<form method="post" action="<?=$_SERVER['PHP_SELF']?>" enctype="multipart/form-data">
<input type="file" name="bestand"><br>
<input type="submit" name="upload" value="uploaden">
</div>
<br>
<br>
<br>
<br>
<br>
</table>
</td></tr>
</table>
</table>
</html>
-
18-01-2009, 10:20 #12
- Berichten
- 1.670
- Lid sinds
- 16 Jaar
Sorry, ik was vergeten date weg te halen:
$nieuw_naam = time().rand(1,10000).$_FILES['bestand']['name'];
if(!move_uploaded_file($_FILES['bestand']['tmp_name'],
$locatie.$nieuw_naam))
-
18-01-2009, 10:24 #13
- Berichten
- 1.907
- Lid sinds
- 16 Jaar
Thanks het werkt!!!
Heb ik nog een vraag.
Als je nu de link wil copieren, lukt dat niet zonder de halve site ook mee te selecteren.
Hoe kan ik dat beter maken?
-
18-01-2009, 10:25 #14
- Berichten
- 1.670
- Lid sinds
- 16 Jaar
<input type="text" value="Hier de link" />
-
18-01-2009, 10:30 #15
- Berichten
- 1.907
- Lid sinds
- 16 Jaar
echo "Het bestand <b>".$_FILES['bestand']['name']." </b>is geupload. <br><br>";
<a href='http://www.onlinecrimineel.nl/upload/" .$nieuw_naam . "'target=blank>klik hier op je plaatje te bekijken"</a>.";
echo "Dit is de directe link:<br>
<input type="text" value=" http://www.onlinecrimineel.nl/upload/" .$nieuw_naam." />
Plaats een
- + Advertentie
- + Onderwerp
Marktplaats
Webmasterforum
- Websites algemeen
- Sitechecks
- Marketing
- Domeinen algemeen
- Waardebepaling
- CMS
- Wordpress
- Joomla
- Magento
- Google algemeen
- SEO
- Analytics
- Adsense
- Adwords
- HTML / XHTML
- CSS
- Programmeren
- PHP
- Javascript
- JQuery
- MySQL
- Ondernemen algemeen
- Belastingen
- Juridisch
- Grafisch ontwerp
- Hosting Algemeen
- Hardware Info
- Offtopic