Afbeelding uploaden + in database zetten

Door Cynthia Fridsma, 22 jaar geleden, 25.877x bekeken

Naar aanleiding van een vraag over een file upload, hier op het forum, had ik een script gemaakt en deze heb ik nu verbeterd en voorzien van een filter om te checken of het wel om een afbeelding gaat.

De gegevens worden, indien het om een afbeelding gaat ( er wordt gecontrolleerd op de bestands extensie, een 100% controlle bestaat niet voor zover ik weet), op de server geplaatst en in de database.

Het gaat in totaal om 4 scripts.

P.s. ik vind het trouwens lastig om aan te geven wat het niveau is....

... kleine wijziging in het script upload_afbeelding.php:
Regel 14 was :
$go=$_POST[go];

En is nu geworden :
$go=$_POST['go'];

(ik heb het al in de onderstaande code aangepast ;-) ).

Gesponsorde koppelingen

PHP script bestanden

  1. afbeelding-uploaden-in-database-zetten

 

Er zijn 49 reacties op 'Afbeelding uploaden in database zetten'

PHP hulp
PHP hulp
0 seconden vanaf nu
 

Gesponsorde koppelingen
Bo az
Bo az
22 jaar geleden
 
0 +1 -0 -1
Notice: Use of undefined constant go - assumed 'go' in E:\server\webserver\htdocs\phphulp\upload_afbeelding.php on line 14

Notice: Undefined index: go in E:\server\webserver\htdocs\phphulp\upload_afbeelding.php on line 14

$go = $_POST[go]; => $go = $_POST['go'];
Cynthia Fridsma
cynthia Fridsma
22 jaar geleden
 
0 +1 -0 -1
Welke php versie heb je? Want bij mij werkt het gewoon.... zowel op mijn locale server, alsmede op mijn dedicated linux server. Versies 4.2 en 4.3

De variabel $go krijgt via $_POST[go] de waarde 'go', daarvoor is $go gewoon leeg en wordt er niets mee gedaan....

Je kan $go = $_POST['go']; ook weglaten en in plaats daarvan op regel 51 het volgende te plaatsen :
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
if ($_POST['go'] =="go"):


Per slot van rekening gaat het erom dat het script weet dat het formulier wordt verzonden.

Edit : voorbeeld hierboven heb ik ook ff gewijzigd.
Remco van Arkelen
Remco van Arkelen
22 jaar geleden
 
0 +1 -0 -1
Die melding heeft niet zo zeer met de PHP-versie te maken maar met het niveau waarop errors worden getoond. Dit gaat meer om de netheid van programmeren. Je gebruikt go als index van een array, go is een string en hoort dus tussen quotes:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
<?php
$_POST
['go']
?>


Leer jezelf aan om tijdens het ontwikkelen alle errors te tonen, door bovenin je PHP-bestand error_reporting( E_ALL ); te zetten kun je dit soort meldingen ook zien.
Cynthia Fridsma
cynthia Fridsma
22 jaar geleden
 
0 +1 -0 -1
Ik zal het meteen aanpassen.... thanks!
Peter Wessels
Peter Wessels
22 jaar geleden
 
0 +1 -0 -1
kun je ook een limiet aan de bestandsgrote vaststellen
Cynthia Fridsma
cynthia Fridsma
22 jaar geleden
 
0 +1 -0 -1
Ja, dat doe je door de code MAx_FILE_SIZE in het formulier op te nemen.

Bijvoorbeeld :
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
<input type="hidden"name="MAX_FILE_SIZE" value="51200">


Hierdoor geef je aan dat een bestand niet groter mag zijn dan 51 kb.
Arjan Kapteijn
Arjan Kapteijn
22 jaar geleden
 
0 +1 -0 -1
Ik zou gewoon de functie filesize() gebruiken, zo'n formulier is erg gemakkelijk 'omheen' te wandelen.
Arjan Kapteijn
Arjan Kapteijn
22 jaar geleden
 
0 +1 -0 -1
Nog mooier word als je gewoon de $_FILES['size'] uitleest en vergelijk overigens.

Verder, kijk eens naar mijn voorbeeld:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
<form form action="" method="post" enctype="multipart/form-data">
<p>Afbeeldingen uploaden, max 1024kb (1mb) per afbeelding:</p>
<input type="hidden" name="MAX_FILE_SIZE" value="1024000">
<input type="file" name="afbeelding1"><br>
<input type="file" name="afbeelding2"><br>
<input type="file" name="afbeelding3"><br>
<input type="file" name="afbeelding4"><br>
<input type="file" name="afbeelding5"><br>
<input type="file" name="afbeelding6"><br>
<input type="file" name="afbeelding7"><br>
<input type="file" name="afbeelding8"><br>
<input type="file" name="afbeelding9"><br>
<input type="file" name="afbeelding10"><br>
<br>
<input type="submit" value="Uploaden!">
</form>

<?
if($_SERVER['REQUEST_METHOD'] == 'POST')
{
    function
randomgenerator($aantaltekens)
    {

        $kleineletters     = range('a','z');
        $groteletters     = range('A','Z');
        $cijfers        = range(0,9);
        
        $karakters     = array_merge($kleineletters, $groteletters, $cijfers);
        $aantal     = count($karakters)-1;
          $random     = null;
          
          for($i=0; $i < $aantaltekens; $i++) {
               $random .= $karakters[mt_rand(0, $aantal)];
          }

          return $random;
    }

    
    foreach($_FILES as $afbeelding)
    {

        $naam         = $afbeelding['name'];
        $type         = $afbeelding['type'];
        $temp         = $afbeelding['tmp_name'];
        $error        = $afbeelding['error'];
        $size        = $afbeelding['size'];
        
        switch($error)
        {
            case
0:
                if(is_uploaded_file($temp))
                {

                    if($type == 'image/jpeg' || $type == 'image/gif' || $type == 'image/png')
                    {

                        if($size >= 1024000)
                        {

                            echo '<p>Sorry, dit bestand is te groot om te worden geupload!</p>';
                        }
else{
                            $random = randomgenerator(5);
                            $verplaats = move_uploaded_file($temp, 'afbeeldingen/'.$random.'-'.$naam);
                        
                            if($verplaats == 1)
                            {

                                echo '<p>Er is geen error opgetreden. Het bestand is met success geupload</p>';
                            }
else{
                                echo '<p>Er ging iets mis met het uploaden van '.$naam.', neem contact op met de webmaster.</p>';
                            }
                        }
                    }
else{
                        echo '<p>Sorry, dit bestandsformaat accepteer ik niet!</p>';
                    }                
                }
else{
                    echo '<p>Sorry, dit accepteer ik niet!</p>';
                }

                break;
                
            case
1:
                echo '<p>Error: De grootte van het bestand is groter dan wat de server aankan!</p>';
                break;
            
            case
2:
                echo '<p>Error: De grootte van het bestand is groter dan 1024kb!</p>';
                break;
            
            case
3:
                echo '<p>Error: Het bestand is maar gedeeltelijk geupload!</p>';
                break;
            
            case
4:
                //Geen bestand geupload, we doen niks!
                break;
        }
    }
}

?>
Jelle Posthuma
Jelle Posthuma
22 jaar geleden
 
0 +1 -0 -1
Deze zal ik eens proberen.
Bastiaan
Bastiaan
22 jaar geleden
 
0 +1 -0 -1
Eindelijk een helder en overzichtelijk script dat niet alleen foto's upload maar ook toevoegt aan een database. Werkt goed. Bedankt Cynthia!
Killerpuppy
Killerpuppy
22 jaar geleden
 
0 +1 -0 -1
Jammer dat je de foto niet toevoegt aan de database.

Dat is ook wel leuk/handig
Cynthia Fridsma
cynthia Fridsma
22 jaar geleden
 
0 +1 -0 -1
Ben blij dat jullie er wat aan hebben :-) maar foto's toevoegen aan de database? Dan maak je volgens mij je database onnodig groot
Killerpuppy
Killerpuppy
22 jaar geleden
 
0 +1 -0 -1
Ligt er aan.
Ken zat gratis webhosts die wel een ftp limiet hebben maar geen database limiet hebben.

Sommige hebben dan ook nog een vreselijk snelle database toegang
Jessy
jessy
22 jaar geleden
 
0 +1 -0 -1
Warning: mysql_db_query(): supplied argument is not a valid MySQL-Link resource in / on line 122
Jessy
jessy
22 jaar geleden
 
0 +1 -0 -1
foutje zat em hhier zo werkt hij wel bij mij

if(mysql_query($query)) die(mysql_error());
Michael VDR
Michael VDR
22 jaar geleden
 
0 +1 -0 -1
Amai dit script had ik juist nodig !
Zeer goed gemaakt.
Roy Bongers
Roy Bongers
22 jaar geleden
 
0 +1 -0 -1
$file_name=str_replace("'", "_", $file_array['name']);
$file_name=str_replace(" ", "_", $file_array['name']);
$file_name=stripslashes ($file_name);
De eerste regel word overschreven door de 2de.

Verder moet je natuurlijk niet alleen op extensie controlleren omdat je een .php script oid ook kan renamen naar .jpg en dan staat ie ineens bij jou op de server!
Verder controlleer je nergens op mime type. Arjan doet dit wel maar hij controlleert die van de geuploade file en voor zover ik weet stuurt de browser die info en dus kan een hacker die wijzigen. Als dat 't geval is kun je dus beter getimagesize() gebruiken om 't mime type te bepalen.
P de B
P de B
22 jaar geleden
 
0 +1 -0 -1
Wel geinig, maar hoe lees ik het uit van MySQL en hoe prop ik dat zeg maar op een pagina?
PHP Newbie
PHP Newbie
22 jaar geleden
 
0 +1 -0 -1
Nou, dan staat er een php script met een jpg extensie op mijn server, so what, de parser parst toch geen jpg bestanden.
DonCorleo
DonCorleo
22 jaar geleden
 
0 +1 -0 -1
Erg handig script. Ik heb er alleen 1 probleem mee: De afbeeldingen worden met chmod 600 op de server gezet. Ze worden dus niet zichtbaar.
Kees
kees
21 jaar geleden
 
0 +1 -0 -1
Ziet er zeer handig uit en is precies wat ik nodig heb. Ik krijg echter deze foutmelding... Snap hier niks van want ben nog beginner.

Warning: move_uploaded_file(/var/www/g26001/joljol.nl/HTML/images/roek.jpg) [function.move-uploaded-file]: failed to open stream: Permission denied in /var/www/g26001/joljol.nl/HTML/uploadafbeelding.php on line 64

Warning: move_uploaded_file() [function.move-uploaded-file]: Unable to move '/var/www/g26001/joljol.nl/tmp/phpyz5xxe' to '/var/www/g26001/joljol.nl/HTML/images/roek.jpg' in /var/www/g26001/joljol.nl/HTML/uploadafbeelding.php on line 64
Couldn't copy

Zou je me kunnen helpen?
Ferdi R
Ferdi R
21 jaar geleden
 
0 +1 -0 -1
@kees: Euhm ik ben ook nog maar een beginner.
Maar volgens mij moet je de map cmodden waar je uit download.

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
Permission denied / Couldn't copy


Dat lijkt me toch
Remco
Remco
21 jaar geleden
 
0 +1 -0 -1
je moet de permission op 777 zetten.
Ronny
ronny
21 jaar geleden
 
0 +1 -0 -1
Ik heb het ook in gebruik en het werkt perfect. Nu zou ik alleen nog een functie er bij willen zetten dat de afbeelding resize. kan iemand mijn daar bij helpen.
Danny
danny
21 jaar geleden
 
0 +1 -0 -1
Kan ik dit script gebruiken in mijn Profiel systeem?? voor het uploaden van een foto op een profiel ?? en kan ik die tabel makkelijk in voegen??
Fred
Fred
21 jaar geleden
 
0 +1 -0 -1
Hello !

Machtig goed script van Cynthia !
Evenals Ronny zou ik willen vragen of iemand mij kan helpen om een resize-functie toe te voegen aan het script ? Ik wil nml graag een thumbnail maken van de afbeelding die wordt geupload.
Moet ik die functie in Filter.php plaatsen ?

Thanks !!
Ruud
ruud
21 jaar geleden
 
0 +1 -0 -1
heel erg mooi script!!

Alleen hoe kan ik ervoor zorgen dat de afbeeldingen naar een andere server worden geupload?
Jason de Ridder
Jason de Ridder
21 jaar geleden
 
0 +1 -0 -1
Mooi script?
Vind het erg tegenvallen, maar goed...
Naar een andere server...
Je action setten in je script... Maar je kan dan niet vanuit een andere server het bestand verplaatsen... Denk ik...
Thorbon
Thorbon
21 jaar geleden
 
0 +1 -0 -1
@Jason
Tis een duidelijk en simpel scriptje, dus perfect voor beginners..
Zeer goed gedaan Cynthia..
Doe zo verder
Twan
Twan
21 jaar geleden
 
0 +1 -0 -1
Hmm, geeft bij mij 2 fouten:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
Warning: move_uploaded_file(/home/Twan/domains/zerox-media.gratishosted.nl/public_html/admin/images//cijfers.gif) [function.move-uploaded-file]: failed to open stream: No such file or directory in /home/Twan/domains/zerox-media.gratishosted.nl/public_html/admin/upload_afbeelding.php on line 117

Warning: move_uploaded_file() [function.move-uploaded-file]: Unable to move '/tmp/phpwRGIa5' to '/home/Twan/domains/zerox-media.gratishosted.nl/public_html/admin/images//cijfers.gif' in /home/Twan/domains/zerox-media.gratishosted.nl/public_html/admin/upload_afbeelding.php on line 117
Couldn't copy

en
nog eentje
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
Warning: mkdir(/home/Twan/domains/zerox-media.gratishosted.nl/public_html/admin/images/) [function.mkdir]: Permission denied in /home/Twan/domains/zerox-media.gratishosted.nl/public_html/admin/upload_afbeelding.php on line 76
Maar dat komt denk ik door de server toch?
Cynthia Fridsma
cynthia Fridsma
21 jaar geleden
 
0 +1 -0 -1
Je moet natuurlijk wel lees & schrijf rechten op de directory images hebben (chmod 777)....
Pieter de Vries
Pieter de Vries
20 jaar geleden
 
0 +1 -0 -1
Erg mooi script

Gebruik het nu ook..

Alleen is het ook mogelijk om b.v.b. 10 foto's tegelijk toe te voegen??
Ik had al onderstaande gedaan maar dat lukte niet.

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
<?php
# De verwerking van de gegevens doen we gewoon
# met een eenvoudig formulier.

# Procedure geschreven door Cynthia Fridsma

// verbind de server

require_once("config.php");

// gebruik het filter voor de afbeeldingen
include ("filter.php");

// lees de waarde van 'go'
$go = $_POST['go'];


# als het formulier nog niet eerder is gebruikt dan
# wordt er een formulier getoond op je scherm.


if ($go ==""):

?>

<br><br><br>
<form name="form1" method="post" action="
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
<?php $_SERVER['PHP_SELF']; ?>
" enctype="multipart/form-data">

<!-- Hier komt het verborden veld 'go met de waarde 'go' -->
<input name="go" type="hidden" value="go">
<table width="450" border="0" bgcolor="#99CCFF" align="center">
<tr><td bgcolor="#99CCFF">Omschrijving</td>
<td><input name="omschrijving" type="text" id="omschrijving" size="50"></td>
</tr>
<tr>
<td bgcolor="#99CCFF">Afbeelding</td>
<td><input name="afbeelding" type="file" accept="image/jpeg" id="afbeelding" size="50">

</tr>
<tr>
<td bgcolor="#99CCFF">Afbeelding</td>
<td><input name="afbeelding" type="file" accept="image/jpeg" id="afbeelding" size="50">

</tr> <tr>
<td bgcolor="#99CCFF">Afbeelding</td>
<td><input name="afbeelding" type="file" accept="image/jpeg" id="afbeelding" size="50">

</tr> <tr>
<td bgcolor="#99CCFF">Afbeelding</td>
<td><input name="afbeelding" type="file" accept="image/jpeg" id="afbeelding" size="50">

</tr> <tr>
<td bgcolor="#99CCFF">Afbeelding</td>
<td><input name="afbeelding" type="file" accept="image/jpeg" id="afbeelding" size="50">

</tr> <tr>
<td bgcolor="#99CCFF">Afbeelding</td>
<td><input name="afbeelding" type="file" accept="image/jpeg" id="afbeelding" size="50">

</tr> <tr>
<td bgcolor="#99CCFF">Afbeelding</td>
<td><input name="afbeelding" type="file" accept="image/jpeg" id="afbeelding" size="50">

</tr> <tr>
<td bgcolor="#99CCFF">Afbeelding</td>
<td><input name="afbeelding" type="file" accept="image/jpeg" id="afbeelding" size="50">

</tr> <tr>
<td bgcolor="#99CCFF">Afbeelding</td>
<td><input name="afbeelding" type="file" accept="image/jpeg" id="afbeelding" size="50">

</tr> <tr>
<td bgcolor="#99CCFF">Afbeelding</td>
<td><input name="afbeelding" type="file" accept="image/jpeg" id="afbeelding" size="50">

</tr> <tr>
<td bgcolor="#99CCFF">Afbeelding</td>
<td><input name="afbeelding" type="file" accept="image/jpeg" id="afbeelding" size="50">

</tr> <tr>
<td bgcolor="#99CCFF">Afbeelding</td>
<td><input name="afbeelding" type="file" accept="image/jpeg" id="afbeelding" size="50">

</tr> <tr>
<td bgcolor="#99CCFF">Afbeelding</td>
<td><input name="afbeelding" type="file" accept="image/jpeg" id="afbeelding" size="50">

</tr> <tr>
<td bgcolor="#99CCFF">Afbeelding</td>
<td><input name="afbeelding" type="file" accept="image/jpeg" id="afbeelding" size="50">

</tr> <tr>
<td bgcolor="#99CCFF">Afbeelding</td>
<td><input name="afbeelding" type="file" accept="image/jpeg" id="afbeelding" size="50">

</tr> <tr>
<td bgcolor="#99CCFF">Afbeelding</td>
<td><input name="afbeelding" type="file" accept="image/jpeg" id="afbeelding" size="50">

</tr>
<tr>
<td bgcolor="#99CCFF">&nbsp;</td>
<td><input type="submit" name="Submit" value="Verzenden">
<input type="reset" name="Reset" value="Herstellen"></td>
</tr>
</table>
<p>&nbsp;</p>
</form>

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
<?php
endif;

// Deze procedure wordt aangeroepen nadat men op verzenden heeft gedrukt

if ($go =="go"):
# Deze procedure zordt ervoor dat de afbeeldingen
# op je server worden geplaatst en tevens in je
# mysql database.

// bepaal de huidige directory

$hello = getcwd();

# hier komen de afbeeldingen, als je
# het script in de directory hallo hebt geinstalleerd
# dan worden de afbeeldingen in hallo/images/
# geplaatst.


$file_dir = ($hello . "/images/");

# we moeten natuurlijk wel zeker weten
# dat de directory bestaat. Dit controleren wij
# met de opdracht is_dir via de volgende routine :


if (is_dir ($file_dir)) {
  print "<br><br>++directorty bestaat";  
  }
  else {  
  print "<br><br>--Directory bestaat nog niet" . $file_dir;  
    $newpage = $file_dir;
    echo ("<br>we gaan daarom de directory aanmaken");
    mkdir ($newpage, 0777);    
  }
  

// toon de systeem datum
echo date("m/d/y G.i:s");


echo ("<br><br>");

# Ik heb besloten om $_FILES als een array te
# laden, zodat je (eventueel) meer afbeeldingen via
# een formulier op je server kunt plaatsen.


foreach($_FILES as $file_name => $file_array) {
      
       # Verander de bestandsnaam zodat het een geldig bestandsnaam wordt
       # in een Linux omgeving. (Een Mac en een Windows omgeving zijn
       # veel relaxer met bestandsnaam m.b.t. spaties, hoofdletters en
       # een mengeling van beide, maar dit geldt niet voor Linux, bovendien
       # zijn bestanden in een Linux omgeving hoofdletter gevoelig.

      
       $file_name=str_replace("'", "_", $file_array['name']);
       $file_name=str_replace(" ", "_", $file_array['name']);
       $file_name=stripslashes ($file_name);
       $file_name=trim($file_name);      
       $file_name=strtolower($file_name);    
                
       echo "path: " .$file_array['tmp_name'] . "<br>\n";
       echo "name: " .$file_name . "<br>\n";    
       echo "type: " .$file_array['type'] ."<br>\n";
       echo "size: " .$file_array['size'] ."<br>\n";
      
       # gebruik de functie afbeeldingen (zie filter.php) om te
       # controleren of het om een afbeelding gaat.
       # de waarde van $test wordt 1 indien het een afbeelding betreft,
       # in alle andere gevallen is $test leeg.


       $test = afbeeldingen($file_name);
       if ($test !=""):
            echo $file_name . " dit is een afbeelding<br>";
            if (is_uploaded_file($file_array['tmp_name'])) {
                 move_uploaded_file($file_array['tmp_name'], "$file_dir/$file_name") or die ("Couldn't copy");
                 echo "Afbeelding staat op de server<br><br>";
                 // voeg de locatie + omschrijving van de afbeelding toe in de database
                 $afbeelding = "images/" . $file_name;
                 $query = "INSERT INTO afbeelding (nummer, omschrijving, afbeelding) VALUES ('', '$_POST[omschrijving]','$afbeelding')";    
                    if(!mysql_db_query($dbname,$query,$db)) die(mysql_error());                      
                        echo $afbeelding . " is toegevoegd aan de database met als omschrijving : <br>";                    
                        echo $_POST[omschrijving] ;
            }
       endif;
                    
       if ($test ==""):    
             echo $file_name . " dit is geen afbeelding en wordt daarom niet op de server geplaatst<br>\n";      
       endif;
  }
endif;


?>


</body></html>
Carel
Carel
20 jaar geleden
 
0 +1 -0 -1
Uhmmm zou echt tof zijn als je de upgeloade afbeelding ook zou kunnen oproepen en zichbaar te maken met de titel die in de database staat. Wellicht veel gevraagd, maar het zou leuk zijn als je ook iets met de foto's zou kunnen. Verder een top post. Je bent 1 van de weinigen die een script plaatst die ook aan de foto's gegevens koppeld in een database.
CaRRoLL
CaRRoLL
20 jaar geleden
 
0 +1 -0 -1
Mooi scriptje. Lekker eenvoudig ( zelf ik als beginnende phper snapt het).
Alleen loop ik vast net als Pieter de Vries bij meedere afbeeldingen opslaan en opvragen.

Kan iemand me opweg helpen ( als is het maar met een goede link)
Mike
mike
20 jaar geleden
 
0 +1 -0 -1
zeer goeie script, alleen als ik een plaatje upload geeft ie:

path: C:\wamp\tmp\php65.tmp
En als ik in die map kijk dan staat er geen php65.tmp
wat is het precies?

En is het ook mogelijk om met zo'n install script de database zelf aan te maken? dus niet via phpmyadmin.
laat maar heb zelf al gevonden.
Nico
Nico
20 jaar geleden
 
0 +1 -0 -1
Erg mooi script, alleen ik zou graag wat meer foto's tergelijk willen toevoegen zou je kunnen uitleggen hoe dat moet ?
Erwin
Erwin
20 jaar geleden
 
0 +1 -0 -1
Toppertje deze tutorial! prima uitgelegd in jip en janneke taal haha, hartstikke bedankt!
Zino
Zino
20 jaar geleden
 
0 +1 -0 -1
Knap script! Voor zij die willen, hier een scriptje om de content te deleten:
(Zou idd vet zijn moest je 2 of meer foto's gelijk kunnen uploaden...iemand? :))

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2//EN">
<HTML>
<HEAD>
<META HTTP-EQUIV="Content-Type" CONTENT="text/html;CHARSET=iso-8859-1">
<TITLE>verwijderen</TITLE>
<script language="JavaScript" type="text/javascript" src="wysiwyg.js"></script>
</HEAD>

<BODY TEXT="#333333" BGCOLOR="#F0F0F0" LINK="#333333" ALINK="#333333" VLINK="#333333">
<font face="verdana" size="1">
<H3>Content verwijderen:<br>...............................</H3>

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
<?
include ("config.php");

if(!isset($cmd))
{

   //toon content
   $result = mysql_query("select * from afbeelding order by nummer");
  
   while($r=mysql_fetch_array($result))
   {

      //toon titel en nummer
      $nummer=$r["nummer"];//toon nummer
      $omschrijving=$r["omschrijving"];//toon omschrijving
    
     //maak een link van de omschrijving

      echo "<font face='verdana' size='3'>$omschrijving </font> <br> <a href='del.php?cmd=delete&nummer=$nummer'>Delete</a> <hr> ";
      echo "<br>";
    }
}

?>


Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
<?
//confirmatie van het gedelete
if($_GET["cmd"]=="delete")
{

    $sql = "DELETE FROM afbeelding WHERE nummer=$nummer";
    $result = mysql_query($sql);
    echo "Inhoud verwijderd <a href=\"upload_afbeelding.php\">Wil u nieuwe inhoud toevoegen?</a>";
}

?>


</BODY>
</HTML>
Pierre
Pierre
19 jaar geleden
 
0 +1 -0 -1
Ik heb het script succesvol op een site van mij geplaatst (nog niet officieel online) en het werkt ook erg goed. Het enige waar ik problemen mee heb is het volgende: hoe kan ik meerdere afbeeldingen uploaden die bij één record horen? Wanneer ik nu een extra afbeelding in het formulier zet dan upload hij wel beide afbeeldingen, maar hij maakt dan voor beide afbeeldingen een eigen record aan. Dat is niet wat ik wil want ik wil gewoon een record met twee afbeeldingen.

Graag hulp!
Mitch
Mitch
19 jaar geleden
 
0 +1 -0 -1
hoe kan je dit script gebruiken als je 4 foto's wilt toevoegen? :S
Martijn
martijn
19 jaar geleden
 
0 +1 -0 -1
hartstikke top script!
ik heb hem gebruik voor mijn dvd beheer database wat ik voor school moest maken. Wou er nog een extraatje bij doen en toen kwam ik hier op uit.
Heb wel wat aangepast met het formulier, zodat je ook andere gegevens toevoegt aan de DB (titel, omschrijving e.d. )
al met al is dit een erg leuk script!
bedankt!

btw. is er ook iemand die een soort gelijk script heb alleen dan met een resize/tumbnail functie erin ? zodat je 1x foto upload en die in 2 mappen komt en op de index de thumbnail laat zien en dat je klikt op de film oid en dan de rest ziet + grote afbeelding ?
bedankt!
Pieter
Pieter
18 jaar geleden
 
0 +1 -0 -1
mooi scriptje, ik heb de database aangemaakt in phpmyadmin en het gaat goed als ik een plaatje geupload heb. Ik kan ook zien dat het aangemaakt is in de phpmyadmin grafische interface.

ik heb een tabel gemaakt en wil nu de plaatjes oproepen d.m.v. een script, ik wil graag dan de foto zien en niet de link waar de foto staat zoals ik die nu krijg:

<html>

<head> <title> --- </title> </head>

<body bgcolor="FFFFFF"><center>
<b>Agenda<b>
<br><br>




<table border="1" width="40%" bordercolor="#000000" bgcolor="#96a2d6">
<tr>
<td>

<b><p align="center">nummer<b>
</td>
<td>

<b><p align="center">omschrijving<b>
</td>
<td>

<b><p align="center">afbeelding<b>
</td>
<td>
</center>
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
<?php

    $db
=mysql_connect("localhost","root","") or die
    ("Kan niet verbinden");
    mysql_select_db("agenda",$db);
    $sql="SELECT * FROM afbeelding";
    $resultaat=mysql_query($sql);



    
    while($rij=mysql_fetch_array($resultaat)){
        
                
        echo "<tr>";
        echo ("<td>".$rij["nummer"]."</td>");
        echo ("<td>".$rij["omschrijving"]."</td>");
        echo ("<td>".$rij["afbeelding"]."</td>");
        echo "</tr>";    
        
    }

    
    mysql_close($db);
    



?>


</body></html>

Het zal best wel simpel zijn ben alleen nog niet zo heel bekend met alle mogelijkheden van PHP.

alvast bedankt.
Stephan de vries
stephan de vries
18 jaar geleden
 
0 +1 -0 -1
@ Pieter:
Dit stukje code gebruik ik al heel lang voor dit soort oplossingen:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
<?php
include ("verbinding_lijsten.php");
mysql_connect ("$dbhost","$username","$dbww");
mysql_select_db ("$db") or die ("Fout opgetreden");
$query = "SELECT * FROM reizen WHERE cat='foto' AND actief='1' ORDER BY uithits DESC LIMIT 10";
$uitvoer = mysql_query($query) or die (mysql_error());
while($lijst = mysql_fetch_object($uitvoer))
{

echo "
<a href=foto.php?uit="
.$lijst->id." target=\"_blank\"><img src=".$lijst->image." height=\"40\" width=\"78\" />".$lijst->naam."</a>
"
;
}

?>


Met dit stukje script lees je de inhoud van de database reizen uit en word er een afbeelding geplaatst met daarnaast de naam die beide klikbaar zijn naar een nieuwe pagina.
Hopelijk heb je hier wat aan.
Niels K
Niels K
18 jaar geleden
 
0 +1 -0 -1
@martijn en andere mensen

Ik heb een script gemaakt wat hem in 2 mappen zet (De foto). hij past ook de grote aan. Stuur maar een pm als je interesse hebt.. En zitten nog meer leuke functions in;)
Pieter
Pieter
18 jaar geleden
 
0 +1 -0 -1
ja alsnog bedankt, het is me inmiddels gelukt.
Gezienus Oldenkamp
Gezienus Oldenkamp
18 jaar geleden
 
0 +1 -0 -1
Ik gebruik onderstaande code om de afbeelding te tonen maar krijg de afbeelding niet te zien.

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
<?php
include ("config/config.php");

print "<table width=40%><tr><th>Naam</th><th>Telefoon</th></tr>";

    $sql_details = mysql_query("SELECT * FROM fotos");
    while ($row_detail = mysql_fetch_array($sql_details)) {
        $afbeelding = $row_detail['afbeelding'];
        $omschrijving = $row_detail['omschrijving'];
        $prijs = $row_detail['prijs'];

        echo "<td>" . $afbeelding->image . "</td>";
        print "<td>" . $omschrijving . "</td>";
        print "<td>" . $prijs . "</td>";
        print "</tr>";
    }

    print "</table>";
?>


Wie kan mij verder helpen.
Pieter
Pieter
18 jaar geleden
 
0 +1 -0 -1
Als je de rechten op 777 zet is het bereikbaar voor iedereen en ook voor mensen van buitenaf toch? is dit niet riskant voor mensen met kwade bedoelingen of kunnen ze nooit weten waar die map staat?
Ik hoop dat iemand mij hier wat meer over kan vertellen,

alvast bedankt.
Frank Franckx
Frank Franckx
18 jaar geleden
 
0 +1 -0 -1
Bedankt Cynthia voor dit knappe script, heeft me echt geholpen als beginner,
ook Stephan bedankt voor de tip om de foto's uit te lezen, werkt prima na wat aanpassingen aan mijn eigen database en stuff... :)
PHP hulp
PHP hulp
0 seconden vanaf nu
 

Gesponsorde koppelingen
Ricardo houweling
ricardo houweling
17 jaar geleden
 
0 +1 -0 -1
heel goed script werkt uitstekend bij mij
naar wat aanpassingen werkt en ziet het er uistekend uit bij mijn site bedankt

Om te reageren heb je een account nodig en je moet ingelogd zijn.

Inhoudsopgave

  1. afbeelding-uploaden-in-database-zetten

Labels

  • Geen tags toegevoegd.

Navigatie

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.