upload script
kenzo - 21/06/2006 14:48
PHP beginner
Hallo...
ik heb een upload script wat ook waardes in de database toevoegt.
Alles doet het goed, alleen als ik niets wil uploaden krijg ik fouten dat de extensie niet klopt of de foto te groot is.
Kan ik iets doen dat als de <input...> leeg is, hij gewoon geen foto upload?
Code:
if(!$_FILES['bestand']['type'] == "image/jpeg" && !$_FILES['bestand']['type'] == "image/jpg" && !$_FILES['bestand']['type'] == "image/gif" && !$_FILES['bestand']['type'] == "image/png"&& !$_FILES['bestand']['type'] == "image/bmp")
{
echo top("Er is een fout opgetreden");
echo "<table cellpadding='1' cellspacing='1' width='100%'><td width='100%'>De afbeelding heeft een ongeldige extensie. (.jpg/.png/.gif..)<BR><BR>Klik <a href='javascript:history.go(-1)'><b>hier</b></a> om terug te gaan.</td></table>";
echo bottom();
}
ElseIf($grote[0] > 950 || $grote[1] > 700 || $grote[0] < 350 || $grote[1] < 350)
{
echo top("Er is een fout opgetreden");
echo "<table cellpadding='1' cellspacing='1' width='100%'><td width='100%'>De afbeelding is groter dan 950/700 pixels of hij is kleiner dan 350/350/ pixels.<BR><BR>Klik <a href='javascript:history.go(-1)'><b>hier</b></a> om terug te gaan.</td></table>";
echo bottom();
}
Else
{
@mysql_query("INSERT INTO markt (id,kop,beschrijving,prijs,user,plaats,email,telefoon,cat_id,provincie,omschrijving,afbeelding,datum) VALUES ('','".$_POST['kop']."','".$_POST['beschrijving']."','".$_POST['prijs']."','".$gebruiker['gebruikersnaam']."','".$_POST['plaats']."','".$gebruiker['email']."','".$_POST['telefoon']."','".$_POST['cat_id']."','".$_POST['provincie']."','".$_POST['omschrijving']."','".date("d_m_Y-H_i_s")."','".date("d-m-Y")."')")or die(mysql_error());
move_uploaded_file($_FILES['bestand']['tmp_name'], "modules/markt/image/".date("d_m_Y-H_i_s").".gif")or die("error");
echo top ("Advertentie Toegevoegd!");
echo table("De advertentie is succesvol toegevoegd aan onze database. (u wordt doorgestuurd naar de markt homepage!)");
echo bottom();
header('Refresh: 2; Url=index.php?sg=markt/index.php');
}
}
Else
{
echo top("Advertentie Toevoegen");
echo "<table width='100%' cellpadding='1' cellspacing='1'>
<td width='1%'>Titel: </td><td width='99%'><input name='kop' type='text' id='kop' size='50'></td><TR>
<td width='1%' valign='top'>Beschrijving: </td><td width='99%'><textarea name='beschrijving' cols='60' rows='8' id='beschrijving'></textarea></td><TR>
<td width='1%'>Categorie: </td><td width='99%'><select name='cat_id'>";
$sl = @mysql_query("SELECT id,titel from markt_cats ORDER BY id ASC")or die(mysql_error());
while($c = mysql_fetch_assoc($sl))
{
If($_GET['cat'] == $c['id'])
echo "<option value='".$c['id']."' selected>".ucfirst($c['titel'])."</option>";
Else
echo "<option value='".$c['id']."'>".ucfirst($c['titel'])."</option>";
}
echo"</select></td><TR>
<td width='1%'>Provincie: </td><td width='99%'><select name='provincie'><option value='' style='COLOR: #bbbbbb'>Kies een provincie..</option>";
$sl2 = @mysql_query("SELECT id,titel from provincie ORDER BY id ASC")or die(mysql_error());
while($prov = mysql_fetch_assoc($sl2))
{
echo "<option value='".$prov['titel']."'>".ucfirst($prov['titel'])."</option>";
}
echo"</select> </td><TR>
<td width='1%'>Woonplaats: </td><td width='99%'><input name='plaats' type='text' id='plaats' size='50'></td><TR>
<td width='1%'>Prijs: </td><td width='99%'><input name='prijs2' type='text' disabled id='prijs2' style='border-right: 0px solid' value='€' size='1'><input name='prijs' style='border-left: 0px solid' type='text' id='prijs' size='47'></td><TR>
<td width='1%'>Telefoon: </td><td width='99%'><input name='telefoon' type='text' id='telefoon' size='50'></td><TR>
<td width='1%'>Omschrijving Foto: </td><td width='99%'><input name='omschrijving' type='text' id='omschrijving' size='50'></td><TR>
<td width='1%'>Selecteer een Afbeelding: </td><td width='99%'><input type='file' name='bestand' size='37'></td><TR>
<td width='1%'> </td><td width='99%'><input type='submit' name='submit' value='Voeg toe!'></td><TR>
</table>";
if ( ! $_FILES [ 'bestand' ] [ 'type' ] == "image/jpeg" && ! $_FILES [ 'bestand' ] [ 'type' ] == "image/jpg" && ! $_FILES [ 'bestand' ] [ 'type' ] == "image/gif" && ! $_FILES [ 'bestand' ] [ 'type' ] == "image/png" && ! $_FILES [ 'bestand' ] [ 'type' ] == "image/bmp" )
{
echo top
( "Er is een fout opgetreden" ) ; echo "<table cellpadding='1' cellspacing='1' width='100%'><td width='100%'>De afbeelding heeft een ongeldige extensie. (.jpg/.png/.gif..)<BR><BR>Klik <a href='javascript:history.go(-1)'><b>hier</b></a> om terug te gaan.</td></table>" ; }
ElseIf ( $grote [ 0 ] > 950 || $grote [ 1 ] > 700 || $grote [ 0 ] < 350 || $grote [ 1 ] < 350 )
{
echo top
( "Er is een fout opgetreden" ) ; echo "<table cellpadding='1' cellspacing='1' width='100%'><td width='100%'>De afbeelding is groter dan 950/700 pixels of hij is kleiner dan 350/350/ pixels.<BR><BR>Klik <a href='javascript:history.go(-1)'><b>hier</b></a> om terug te gaan.</td></table>" ; }
Else
{
@ mysql_query ( "INSERT INTO markt (id,kop,beschrijving,prijs,user,plaats,email,telefoon,cat_id,provincie,omschrijving,afbeelding,datum) VALUES ('','" . $_POST [ 'kop' ] . "','" . $_POST [ 'beschrijving' ] . "','" . $_POST [ 'prijs' ] . "','" . $gebruiker [ 'gebruikersnaam' ] . "','" . $_POST [ 'plaats' ] . "','" . $gebruiker [ 'email' ] . "','" . $_POST [ 'telefoon' ] . "','" . $_POST [ 'cat_id' ] . "','" . $_POST [ 'provincie' ] . "','" . $_POST [ 'omschrijving' ] . "','" . date ( "d_m_Y-H_i_s" ) . "','" . date ( "d-m-Y" ) . "')" ) or
die ( mysql_error ( ) ) ;
echo top
( "Advertentie Toegevoegd!" ) ; echo table
( "De advertentie is succesvol toegevoegd aan onze database. (u wordt doorgestuurd naar de markt homepage!)" ) ; header ( 'Refresh: 2; Url=index.php?sg=markt/index.php' ) ;
}
}
Else
{
echo top
( "Advertentie Toevoegen" ) ; echo "<table width='100%' c ellpadding='1' cellspacing='1'> <td width='1%'>Titel: </td><td width='99%'><input name='kop' type='text' id='kop' size='50'></td><TR>
<td width='1%' valign='top'>Beschrijving: </td><td width='99%'><textarea name='beschrijving' cols='60' rows='8' id='beschrijving'></textarea></td><TR>
<td width='1%'>Categorie: </td><td width='99%'><select name='cat_id'>" ;
{
If ( $_GET [ 'cat' ] == $c [ 'id' ] )
echo "<option value='" . $c [ 'id' ] . "' selected>" . ucfirst ( $c [ 'titel' ] ) . "</option>" ; Else
echo "<option value='" . $c [ 'id' ] . "'>" . ucfirst ( $c [ 'titel' ] ) . "</option>" ; }
<td width='1%'>Provincie: </td><td width='99%'><select name='provincie'><option value='' style='COLOR: #bbbbbb'>Kies een provincie..</option>" ;
{
echo "<option value='" . $prov [ 'titel' ] . "'>" . ucfirst ( $prov [ 'titel' ] ) . "</option>" ; }
<td width='1%'>Woonplaats: </td><td width='99%'><input name='plaats' type='text' id='plaats' size='50'></td><TR>
<td width='1%'>Prijs: </td><td width='99%'><input name='prijs2' type='text' disabled id='prijs2' style='border-right: 0px solid' value='€' size='1'><input name='prijs' style='border-left: 0px solid' type='text' id='prijs' size='47'></td><TR>
<td width='1%'>Telefoon: </td><td width='99%'><input name='telefoon' type='text' id='telefoon' size='50'></td><TR>
<td width='1%'>Omschrijving Foto: </td><td width='99%'><input name='omschrijving' type='text' id='omschrijving' size='50'></td><TR>
<td width='1%'>Selecteer een Afbeelding: </td><td width='99%'><input type='file' name='bestand' size='37'></td><TR>
<td width='1%'> </td><td width='99%'><input type='submit' name='submit' value='Voeg toe!'></td><TR>
</table>" ;
12 antwoorden
Gesponsorde links
Dark_Paul - 21/06/2006 14:55 (laatste wijziging 21/06/2006 15:03)
PHP ver gevorderde
controleer of 't veld leeg is. zoja, zet niets in de db, zonee, zet de invoer in de db.
if ($_FILES['bestand']['tmp_name'] != "")
{
move_uploaded_file($_FILES['bestand']['tmp_name'], "modules/markt/image/".date("d_m_Y-H_i_s").".gif")or die("error");
echo top ("Advertentie Toegevoegd!");
echo table("De advertentie is succesvol toegevoegd aan onze database. (u wordt doorgestuurd naar de markt homepage!)");
echo bottom();
header('Refresh: 2; Url=index.php?sg=markt/index.php');
}
if ( $_FILES [ 'bestand' ] [ 'tmp_name' ] != "" )
{
echo top
( "Advertentie Toegevoegd!" ) ; echo table
( "De advertentie is succesvol toegevoegd aan onze database. (u wordt doorgestuurd naar de markt homepage!)" ) ; header ( 'Refresh: 2; Url=index.php?sg=markt/index.php' ) ; }
zoiets misschien? dit stukje in je else-statement waar 't al upgeload werd..
svm - 21/06/2006 14:58
PHP ver gevorderde
Misschien iets met if en else?
kenzo - 21/06/2006 15:00 (laatste wijziging 21/06/2006 15:04)
PHP beginner
ik ha dit:
if (!empty($_POST['bestand']))
if ( ! empty ( $_POST [ 'bestand' ] ) )
maar die staat voor de else, dus hij voegt ook niets in, maar geeft geen foutmelding.
ik zou iets moeten hebben als:
if (!empty($_POST['bestand'])) go to @mysql_query
hier klopt niets van, maar iets in die richting...
@mysql_query is de insurt query
@Dark_Paul
Hij geeft nog steeds een fout van dat de verkeerde ext is.
maar met die if zou hij de goede melding moeten geven, maar ook in de database zetten?
Thomas - 21/06/2006 15:04
Moderator
Staat in je form-tag het attribuut enctype="multipart/form-data"?
kenzo - 21/06/2006 15:05 (laatste wijziging 21/06/2006 15:05)
PHP beginner
nee...
dit heb ik:
If($_SERVER['REQUEST_METHOD'] == "POST")
If ( $_SERVER [ 'REQUEST_METHOD' ] == "POST" )
xSc - 21/06/2006 15:06
Onbekend
Kenzo, FangorN bedoelt je HTML-tag <form> als je daar niet de juiste enctype aan meegeeft, wordt er ook geen bestand geupload.
kenzo - 21/06/2006 15:08
PHP beginner
sorry... ik heb die in een andere pagina staan...
maar hij upload wel...
alleen als ik het balkje voor te uploaden leeg laat (als ik niets hoef te uploaden), geeft hij ook een fout
Dark_Paul - 21/06/2006 19:19 (laatste wijziging 21/06/2006 19:23)
PHP ver gevorderde
je kan je hele ding in een if-statement zetten..
<?php
if (isset(jepost) && (jepost) != "")
{
if(!$_FILES['bestand']['type'] == "image/jpeg" && !$_FILES['bestand']['type'] == "image/jpg" && !$_FILES['bestand']['type'] == "image/gif" && !$_FILES['bestand']['type'] == "image/png"&& !$_FILES['bestand']['type'] == "image/bmp")
{
echo top("Er is een fout opgetreden");
echo "<table cellpadding='1' cellspacing='1' width='100%'><td width='100%'>De afbeelding heeft een ongeldige extensie. (.jpg/.png/.gif..)<BR><BR>Klik <a href='javascript:history.go(-1)'><b>hier</b></a> om terug te gaan.</td></table>";
echo bottom();
}
ElseIf($grote[0] > 950 || $grote[1] > 700 || $grote[0] < 350 || $grote[1] < 350)
{
echo top("Er is een fout opgetreden");
echo "<table cellpadding='1' cellspacing='1' width='100%'><td width='100%'>De afbeelding is groter dan 950/700 pixels of hij is kleiner dan 350/350/ pixels.<BR><BR>Klik <a href='javascript:history.go(-1)'><b>hier</b></a> om terug te gaan.</td></table>";
echo bottom();
}
Else
{
@mysql_query("INSERT INTO markt
(id,
kop,
beschrijving,
prijs,
user,
plaats,
email,
telefoon,
cat_id,
provincie,
omschrijving,
afbeelding,
datum)
VALUES ('',
'".$_POST['kop']."',
'".$_POST['beschrijving']."',
'".$_POST['prijs']."',
'".$gebruiker['gebruikersnaam']."',
'".$_POST['plaats']."',
'".$gebruiker['email']."',
'".$_POST['telefoon']."',
'".$_POST['cat_id']."',
'".$_POST['provincie']."',
'".$_POST['omschrijving']."',
'".date("d_m_Y-H_i_s")."',
'".date("d-m-Y")."')")or die(mysql_error());
move_uploaded_file($_FILES['bestand']['tmp_name'], "modules/markt/image/".date("d_m_Y-H_i_s").".gif")or die("error");
echo top ("Advertentie Toegevoegd!");
echo table("De advertentie is succesvol toegevoegd aan onze database. (u wordt doorgestuurd naar de markt homepage!)");
echo bottom();
header('Refresh: 2; Url=index.php?sg=markt/index.php');
}
} ?>
<?php
if ( isset ( jepost
) && ( jepost
) != "" ) {
if ( ! $_FILES [ 'bestand' ] [ 'type' ] == "image/jpeg" && ! $_FILES [ 'bestand' ] [ 'type' ] == "image/jpg" && ! $_FILES [ 'bestand' ] [ 'type' ] == "image/gif" && ! $_FILES [ 'bestand' ] [ 'type' ] == "image/png" && ! $_FILES [ 'bestand' ] [ 'type' ] == "image/bmp" )
{
echo top
( "Er is een fout opgetreden" ) ; echo "<table cellpadding='1' cellspacing='1' width='100%'><td width='100%'>De afbeelding heeft een ongeldige extensie. (.jpg/.png/.gif..)<BR><BR>Klik <a href='javascript:history.go(-1)'><b>hier</b></a> om terug te gaan.</td></table>" ; }
ElseIf ( $grote [ 0 ] > 950 || $grote [ 1 ] > 700 || $grote [ 0 ] < 350 || $grote [ 1 ] < 350 )
{
echo top
( "Er is een fout opgetreden" ) ; echo "<table cellpadding='1' cellspacing='1' width='100%'><td width='100%'>De afbeelding is groter dan 950/700 pixels of hij is kleiner dan 350/350/ pixels.<BR><BR>Klik <a href='javascript:history.go(-1)'><b>hier</b></a> om terug te gaan.</td></table>" ; }
Else
{
(id,
kop,
beschrijving,
prijs,
user,
plaats,
email,
telefoon,
cat_id,
provincie,
omschrijving,
afbeelding,
datum)
VALUES ('',
'" . $_POST [ 'kop' ] . "',
'" . $_POST [ 'beschrijving' ] . "',
'" . $_POST [ 'prijs' ] . "',
'" . $gebruiker [ 'gebruikersnaam' ] . "',
'" . $_POST [ 'plaats' ] . "',
'" . $gebruiker [ 'email' ] . "',
'" . $_POST [ 'telefoon' ] . "',
'" . $_POST [ 'cat_id' ] . "',
'" . $_POST [ 'provincie' ] . "',
'" . $_POST [ 'omschrijving' ] . "',
'" . date ( "d_m_Y-H_i_s" ) . "',
echo top
( "Advertentie Toegevoegd!" ) ; echo table
( "De advertentie is succesvol toegevoegd aan onze database. (u wordt doorgestuurd naar de markt homepage!)" ) ; header ( 'Refresh: 2; Url=index.php?sg=markt/index.php' ) ; }
} ?>
uiteraard 'jepost' nog ff goedzetten..
kenzo - 21/06/2006 19:36 (laatste wijziging 21/06/2006 19:37)
PHP beginner
Parse error: syntax error, unexpected T_STRING, expecting T_VARIABLE or '$' in
c: \appserv\www\deknagertjes.nl\modules\markt\toev2.php on line 2
deze fout krijg ik
kenzo - 22/06/2006 08:53 (laatste wijziging 22/06/2006 11:26)
PHP beginner
ik heb het nu. Bedankt
Nog een vraag.
Als het veld leeg is moet hij of niets invoeren, of een andere waarde.
Ik heb dit geprobeerd, maar in bijde gevallen voegt hij in de database toe: //geen//foto (dit heb ik opgegeven in de qeury bij : if (!empty($_FILES['bestand'])) {
dus...
Als ik geen foto wil uploaden upload hij ook niets, en voegt //geen//foto in de database toe (goed
als ik wel een foto wil uploaden upload hij ook een foto, maar voegt ook //geen//foto toe in de database (dat is dus fout).
Dit is de code:
Code:
Hele script: http://www.plaatscode.be/825 /
{
if (!empty($_FILES['bestand'])) {
mysql_query("INSERT INTO markt (id,kop,beschrijving,prijs,user,plaats,email,telefoon,cat_id,provincie,omschrijving,afbeelding,datum) VALUES ('','".$_POST['kop']."','".$_POST['beschrijving']."','".$_POST['prijs']."','".$gebruiker['gebruikersnaam']."','".$_POST['plaats']."','".$gebruiker['email']."','".$_POST['telefoon']."','".$_POST['cat_id']."','".$_POST['provincie']."','".$_POST['omschrijving']."','//geen//foto','".date("d-m-Y H:i:s")."')")or die(mysql_error());
}
Else
{
mysql_query("INSERT INTO markt (id,kop,beschrijving,prijs,user,plaats,email,telefoon,cat_id,provincie,omschrijving,afbeelding,datum) VALUES ('','".$_POST['kop']."','".$_POST['beschrijving']."','".$_POST['prijs']."','".$gebruiker['gebruikersnaam']."','".$_POST['plaats']."','".$gebruiker['email']."','".$_POST['telefoon']."','".$_POST['cat_id']."','".$_POST['provincie']."','".$_POST['omschrijving']."','".date("d_m_Y-H_i_s")."','".date("d-m-Y H:i:s")."')")or die(mysql_error());
}
if(!empty($_FILES['bestand']['tmp_name']))
{
move_uploaded_file($_FILES['bestand']['tmp_name'], "modules/markt/image/".date("d_m_Y-H_i_s").".gif")or die("error");
}
echo top ("Advertentie Toegevoegd!");
echo table("De advertentie is succesvol toegevoegd aan onze database. (u wordt doorgestuurd naar de markt homepage!)");
echo bottom();
header('Refresh: 2; Url=index.php?deknagertjes=markt/index.php');
{
if ( ! empty ( $_FILES [ 'bestand' ] ) ) { mysql_query ( "INSERT INTO markt (id,kop,beschrijving,prijs,user,plaats,email,telefoon,cat_id,provincie,omschrijving,afbeelding,datum) VALUES ('','" . $_POST [ 'kop' ] . "','" . $_POST [ 'beschrijving' ] . "','" . $_POST [ 'prijs' ] . "','" . $gebruiker [ 'gebruikersnaam' ] . "','" . $_POST [ 'plaats' ] . "','" . $gebruiker [ 'email' ] . "','" . $_POST [ 'telefoon' ] . "','" . $_POST [ 'cat_id' ] . "','" . $_POST [ 'provincie' ] . "','" . $_POST [ 'omschrijving' ] . "','//geen//foto','" . date ( "d-m-Y H:i:s" ) . "')" ) or
die ( mysql_error ( ) ) ; }
Else
{
mysql_query ( "INSERT INTO markt (id,kop,beschrijving,prijs,user,plaats,email,telefoon,cat_id,provincie,omschrijving,afbeelding,datum) VALUES ('','" . $_POST [ 'kop' ] . "','" . $_POST [ 'beschrijving' ] . "','" . $_POST [ 'prijs' ] . "','" . $gebruiker [ 'gebruikersnaam' ] . "','" . $_POST [ 'plaats' ] . "','" . $gebruiker [ 'email' ] . "','" . $_POST [ 'telefoon' ] . "','" . $_POST [ 'cat_id' ] . "','" . $_POST [ 'provincie' ] . "','" . $_POST [ 'omschrijving' ] . "','" . date ( "d_m_Y-H_i_s" ) . "','" . date ( "d-m-Y H:i:s" ) . "')" ) or
die ( mysql_error ( ) ) ; }
if ( ! empty ( $_FILES [ 'bestand' ] [ 'tmp_name' ] ) ) {
}
echo top
( "Advertentie Toegevoegd!" ) ; echo table
( "De advertentie is succesvol toegevoegd aan onze database. (u wordt doorgestuurd naar de markt homepage!)" ) ; header ( 'Refresh: 2; Url=index.php?deknagertjes=markt/index.php' ) ;
Gesponsorde links
Dit onderwerp is gesloten .