login  Naam:   Wachtwoord: 
Registreer je!
 Forum

Hoe insert ik een img in de database (Opgelost)

Offline kingpos - 03/11/2008 11:28
Avatar van kingposNieuw lid Excuses als dit al eerder is gevraagd maar ik heb werkelijk geen idee waar ik op moet zoeken =].

ik ben al een tijdje bezig met mijn eigen portfolio en wil graag dynamisch portfolio items toevoegen. ik wil 3 velden toevoegen.
Titel - text - Image.

Titel: de naam van het project.
Text: uitleg over het project.
Image: een bijbehorend plaatje.


Nu is text in de database zetten geen probleem, maar een plaatje toevoegen is voor mij helemaal nieuw. Nu heb ik eigenlijk 2 vragen.

-Kan je text en image tegelijk toevoegen?
-Hoe ga ik te werk?

XOXO
Matthias.

11 antwoorden

Gesponsorde links
Offline Kr4nKz1n - 03/11/2008 11:47
Avatar van Kr4nKz1n Onbekend Hoe wil je een afbeelding in de database opslaan?

Je moet gewoon de naam van het plaatje in de database opslaan en het plaatje uploaden naar de server.

En hierover is genoeg te vinden.
Offline nemesiskoen - 03/11/2008 12:00
Avatar van nemesiskoen Gouden medaille

PHP expert
Je kan ook een image opslaan, daarvoor bestaat het blob data type. Je slaat dan wat er in het bestandje staat op in de database.
Offline Wim - 03/11/2008 12:01
Avatar van Wim Crew algemeen Het gaat wel zeker, maar ik raad het je ten sterkste af (zeker in dit geval).

Je kan bvb het bestand uitlezen (PHP.net: fopen/PHP.net: fread), coderen met een base64 (PHP.net: base64_encode) en in je databank opslaan. Om het uit te lezen kan je zo bvb te werk gaan:
  1. if($_GET['view'] == 'image')
  2. {
  3. $plaatje = "base64 codering";
  4. echo base64_decode($plaatje);
  5. }
  6. echo '<img src="?view=image" border="0" />';


Nogmaals, bij dit voorbeeld raad ik je deze manier af!! Makkelijker is om een map images te maken en hier alle images inzetten met de naam <ID>.ext, zo kan je het id uit je db lezen en heb je onmiddelijk de correcte afbeelding!
Offline Kr4nKz1n - 03/11/2008 12:01
Avatar van Kr4nKz1n Onbekend Ja dan krijg je die vage code van je plaatje.
Offline kingpos - 03/11/2008 13:20 (laatste wijziging 03/11/2008 13:21)
Avatar van kingpos Nieuw lid Ok! Bedank voor de reacties!

Is het dan mogelijk om die handeling in een keer te doen?

En uploaden en de naam inserten?

XOXO
Matthias.
Offline Kr4nKz1n - 03/11/2008 13:26
Avatar van Kr4nKz1n Onbekend Ja, ik zou het ook niet anders gaan doen.

Zoek naar een foto-uploader.
Offline kingpos - 03/11/2008 13:31 (laatste wijziging 03/11/2008 14:12)
Avatar van kingpos Nieuw lid
  1. <?php
  2. include "../inc/connect.php";
  3. $alias=$_GET['alias'];
  4. $Toevoegen = "INSERT INTO portfolio(titel, url, text, img) VALUES('" . $_POST['titel'] . "', '" . $_POST['url'] . "', '" . $_POST['text'] . "', '" . $_POST['file'] . "')";
  5. $uToevoegen = mysql_query( $Toevoegen );
  6. if( $uToevoegen )
  7. {
  8. if(isset($_POST['img'])) {
  9. // If action is add.
  10. if($_POST['img'] == 'add') {
  11. // Define the folder where the file will be uploaded.
  12. $upload_path = '../uploads/' . $_FILES['file']['name'];
  13. // Check if the file already exists in the folder.
  14. if(!file_exists($upload_path)) {
  15. // Check the size of the file.
  16. // The file should be under 100 kb. But OVER 0 bytes.
  17. if($_FILES['file']['size'] < 1000000 && $_FILES['file']['size'] > 0) {
  18. // If there are any errors.
  19. if($_FILES['file']['error']) {
  20. echo "Error: " . $_FILES['file']['error'];
  21. } else {
  22. // Success!
  23. echo "File successfully uploaded.<br /><br />";
  24. echo "The filename is: <strong>" . $_FILES['file']['name'] . "</strong><br />";
  25. echo "The filesize is: <strong>" . $_FILES['file']['size'] . "</strong><br />";
  26. echo "The filetype is: <strong>" . $_FILES['file']['type'] . "</strong><br />";
  27. echo "The file is temporary saved in: <strong>" . $_FILES['file']['tmp_name'] . "</strong><br />";
  28. echo "You will be return to the CMS automatecly";
  29. // Move uploaded file to upload folder.
  30. move_uploaded_file($_FILES['file']['tmp_name'], $upload_path);
  31. }
  32. } else {
  33. echo $_FILES['file']['size'] < 1 ? 'Incorrect filename.' : 'File size is too big';
  34. }
  35. } else {
  36. echo "File already exists in your folder. ";
  37. }
  38. }
  39. }
  40.  
  41. }
  42. else
  43. {
  44. echo 'Er is een fout! ' . mysql_error();
  45. }
  46.  
  47. ?>

Zo heb ik het nu, maar dit werkt half: hij insert alles in de database , dit gaat helemaal goed, maar hij upload geen plaatjes:(. hoe en wat is mijn volgende stap?

XOXO
Matthias.
Offline Kr4nKz1n - 03/11/2008 14:41
Avatar van Kr4nKz1n Onbekend Ik raad je aan niet alles met if/else te doen maar ook elseif te gebruiken.

6 if-jes achter elkaar...
Offline kingpos - 03/11/2008 14:54
Avatar van kingpos Nieuw lid Oke, daar zal ik naar kijken. Maar, als ik het met if'jes zou willen doen. Doe ik het dan wel goed zo? want hij komt wel over $uToevoegen heen maar verder gaat hij ook niet :<

XOXO
Matthias.
Offline Kr4nKz1n - 03/11/2008 14:56
Avatar van Kr4nKz1n Onbekend Tja je gebruikt inderdaad erg intensief de if`s 

Gebruik dingen zoals
  1. if(isset($_POST['img']) && $_POST['img'] == 'add')


Scheelt alweer 1 if, plus een else (foutmelding).
Offline kingpos - 03/11/2008 14:59
Avatar van kingpos Nieuw lid Ok Thx! ik heb hem werkend gekregen!

Bedank voor de hulp!

XOXO
Matthias.

Gesponsorde links
Dit onderwerp is gesloten.
Actieve forumberichten
© 2002-2024 Sitemasters.be - Regels - Laadtijd: 0.214s