login  Naam:   Wachtwoord: 
Registreer je!
 Forum

toevoegen van een afbeelding

Offline Gust - 25/08/2008 15:09
Avatar van GustMySQL interesse Eerder had ik een hotelier script waarbij je bij de index oa een afbeelding kon toevoegen, wat ook lukte. Maar deze indexpagina is nu opgesplitst:

- een beperkte indexpagina (dus minder invulvelden)
- een aanvulpagina: de overige invulvelden, waaronder ook de foto's

Deze aanvulpagina update nu zichzelf, en niet via een toevoegpagina. Hierdoor lukt het niet meer om mijn foto's toe te voegen.

Dit is de pagina (alle rommel is eruitgehaald):

Plaatscode: 19509

Weet er iemand wat ik tekort of teveel doe?

8 antwoorden

Gesponsorde links
Offline Stijn - 25/08/2008 21:33
Avatar van Stijn PHP expert
  1. <form name="form1" action="<?php echo($_SERVER["PHP_SELF"]);?>" method="post">

Je hebt een optie vergeten.
Offline Gust - 26/08/2008 08:41
Avatar van Gust MySQL interesse Welke optie?

Die regel die je aanhaalt staat in regel 100
Offline Ontani - 26/08/2008 09:07
Avatar van Ontani Gouden medailleGouden medailleGouden medailleGouden medaille

-1
je form moet het volgende bevatten:
  1. enctype="multipart/form-data"


Dus:

  1. <form name="form1" enctype="multipart/form-data" action="..." >...</form>
Offline Gust - 26/08/2008 09:17
Avatar van Gust MySQL interesse Ik krijg Warning: Invalid argument supplied for foreach() in /usr/www/users/dotserv/gazelle/pro/gaz_main/gaz_main_bewerken1.php on line 10


Dit is de code vanaf lijn 10:
  1. foreach ($_FILES["pictures"]["error"] as $key => $error) {
  2. if ($error == UPLOAD_ERR_OK) {
  3. $tmp_name = $_FILES["pictures"]["tmp_name"][$key];
  4. $name = $_FILES["pictures"]["name"][$key];
  5. move_uploaded_file($tmp_name, "images/$name");
  6. array_push($files, $name);
  7. }
}
Offline Ontani - 26/08/2008 09:31
Avatar van Ontani Gouden medailleGouden medailleGouden medailleGouden medaille

-1
Al eens een print_r van $_FILES gedaan? Dit om te kijken of $_FILES['pictures']['error'] wel bestaat of wel een array is.
Offline Gust - 26/08/2008 09:36 (laatste wijziging 26/08/2008 11:30)
Avatar van Gust MySQL interesse Een print_r? Ik zie nog steeds dezelfde fout dan hoor.

Ik weet niet hoe ik dat moet toepassen, maar heb het alsvolgt gedaan:
  1. foreach ($_FILES["pictures"]["error"] as $key => $error) {
  2. if ($error == UPLOAD_ERR_OK) {
  3. $tmp_name = $_FILES["pictures"]["tmp_name"][$key];
  4. $name = $_FILES["pictures"]["name"][$key];
  5. move_uploaded_file($tmp_name, "images/$name");
  6. array_push($files, $name);
  7. }
  8. }
  9. )


Ok, ik heb nu een print_r() toegepast.
Maar het probleem is dat een print_r hier niet gaat omdat er al teveel () in deze code zitten  

Misschien een aparte module met "Klik hier om afbeeldingen toe te voegen"? Alleen weet ik niet hoe dit toe te passen en of het wel in dezelfde regel van de database verschijnt.
Offline jc2 - 26/08/2008 15:56
Avatar van jc2 PHP interesse Probeer het eens zo:
  1. print_r($_FILES);


Een print_r functie print arrays, geen hele functiereeks!
Offline Gust - 27/08/2008 09:03 (laatste wijziging 01/09/2008 09:48)
Avatar van Gust MySQL interesse Ik heb even de code van plaats veranded en nu krijg ik geen foutmelding meer, maar het fotosysteem werkt nog altijd niet.

  1. <?php
  2. // variabelen initialiseren:
  3. $username = "geheim";
  4. $password = "geheim";
  5. $host="localhost";
  6. $dbnaam="geheim";
  7.  
  8. $db=mysql_connect($host, $username, $password) or die (mysql_error());
  9. mysql_select_db($dbnaam, $db) or die (mysql_error());
  10.  
  11. //gegevens doorgegeven door de vorige pagina
  12. $id = $_GET["id"];
  13.  
  14.  
  15. // verbinding met database invoegen
  16. //include("inc_connect.php");
  17. // controleren of pagina zichzelf heeft aangeroepen
  18. // via hidden-field uit het formulier
  19. if (isset($_POST["bevestiging"])){
  20.  
  21. $files = array();
  22.  
  23. foreach ($_FILES["pictures"]["error"] as $key => $error) {
  24. if ($error == UPLOAD_ERR_OK) {
  25. $tmp_name = $_FILES["pictures"]["tmp_name"][$key];
  26. $name = $_FILES["pictures"]["name"][$key];
  27. move_uploaded_file($tmp_name, "images/$name");
  28. array_push($files, $name);
  29. }
  30. }
  31.  
  32. // query samenstellen
  33. $query="UPDATE gaz_main_algemeen SET
  34. Name = '". $_POST["Name"] ."',
  35. pass1 = '". $_POST["pass1"] ."',
  36.  
  37. enzovoort


Het zou aan deze code liggen, maar weet niet of het juist is:

  1. file1 = '". $_POST["file1"] ."',
  2. file2 = '". $_POST["file2"] ."',
  3. file3 = '". $_POST["file3"] ."',
  4. file4 = '". $_POST["file4"] ."',


zou moeten zijn:

  1. file1 = '". $_FILES["file1"]['name'] ."',
  2. file2 = '". $_FILES["file2"]['name'] ."',
  3. file3 = '". $_FILES["file3"]['name'] ."',
  4. file4 = '". $_FILES["file4"]['name'] ."',


maar weet niet of het juist geschreven is.

Geplaatst: Ma Sep 01, 2008 8:43 am Onderwerp:

--------------------------------------------------------------------------------

Op deze engelstalige website heb ik het ook gevraagd omdat er meer bezoekers komen, maar mijn engels is niet zo goed.

Er staat het volgende:

If you use the var_dump() function on $_FILES[0], you will see that it is an array. This array contains details about that file, which you can use to find the file stored in a temporary folder.

what you probably want to do is upload the file contents into the database, right?

  1. <?php $_FILES[0]['tmp_name'] ?>


Holds the path to the uploaded file. You use file_get_contents() in PHP to load that file, then store it in a string. Put this string into the MySQL query to upload the file into it.

Another option would be to move the image to a chosen folder, and you can simply tell MySQL what it's file name is. Your PHP script can locate the image.

Iemand een idee wat ie bedoelt?
Gesponsorde links
Dit onderwerp is gesloten.
Actieve forumberichten
© 2002-2024 Sitemasters.be - Regels - Laadtijd: 0.259s