login  Naam:   Wachtwoord: 
Registreer je!
 Forum

optioneel plaatje

Offline PeterBuring - 14/09/2005 11:50
Avatar van PeterBuringHTML beginner Ik heb nu een formuliertje waarin men wat gegevens invult en men zelf kan kiezen of er een afbeelding bij moet komen.. dus wanneer men op de submit knop klikt moet er eerst gechecked worden of er een plaatje is geselecteerd.. hieronder de code..

  1. if(empty($_POST['afbeelding']))
  2. {
  3. $afzender = $_POST['afzender'];
  4. $onderwerp = $_POST['onderwerp'];
  5. $oproep = $_POST['oproep'];
  6. $reactie = $_POST['reactie'];
  7. $datum = date("d-m-Y");
  8. if(mysql_query("INSERT INTO oproepen (Afzender, Onderwerp, Oproep, Reactie, Datum) values ('".$afzender."', '".$onderwerp."', '".$oproep."', '".$reactie."', '".$datum."')"))
  9. {
  10. echo "<center><h3>Gegevens Toegevoegd..</h3></center>";
  11. }
  12. else
  13. {
  14. echo "Fout in de DB, kon info niet toevoegen";
  15. }
  16. }
  17. else
  18. {
  19. // controle van plaatje en plaatsen in de juiste map..
  20. //deze code maar ff achterwege gelaten.. werkt wel.. heeft al eens gewerkt
  21.  
  22. $foto = $_FILES['afbeelding']['name'];
  23. $afzender = $_POST['afzender'];
  24. $onderwerp = $_POST['onderwerp'];
  25. $oproep = $_POST['oproep'];
  26. $reactie = $_POST['reactie'];
  27. $datum = date("Y-m-d");
  28.  
  29. if(mysql_query("INSERT INTO oproepen (Afzender, Onderwerp, Oproep, Reactie, Image, Datum) values ('".$afzender."', '".$onderwerp."', '".$oproep."', '".$reactie."', '".$foto."', '".$datum."')"))
  30. {
  31. echo "<center><h3>Gegevens Toegevoegd..</h3></center>";
  32. }
  33. else
  34. {
  35. echo "Fout in de DB, kon info niet toevoegen";
  36. }
  37. }
  38. else
  39. {
  40. echo "Het uploaden is mislukt";
  41. }


op de een of andere manier komt er nooit een plaatje bij te staan.. ook al is er wel 1 geselecteerd..
code is uitgebreider dan nodig ik weet het..
iemand enig idee wat er fout is..

6 antwoorden

Gesponsorde links
Offline marten - 14/09/2005 11:55
Avatar van marten Beheerder hij controleert dus hetvolgende

wanneer de query INSERT INTO oproepen (Afzender enz is dan echo't hij Gegevens toegevoegd.

Dit word dus niet toegevoegd..... de query moet dus niet gecontroleert worden maar uitgevoerd worden.... dit kan door de query buiten de if te zetten
Offline PeterBuring - 14/09/2005 11:59
Avatar van PeterBuring HTML beginner hij word wel uitgevoerd.. want alle gegevens worden verder wel naar de databse geschreven... behalve het plaatje.. wat in de eerste query ook de bedoeling is maar bij de 2e niet..
Offline Thomas - 14/09/2005 12:04 (laatste wijziging 14/09/2005 12:04)
Avatar van Thomas Moderator Er staat:
// controle van plaatje en plaatsen in de juiste map...

Die lokatie (map + bestandsnaam) komt waarschijnlijk niet overeen met $_FILES['afbeelding']['name'] - hierin ontbreekt de mapnaam nog?

Waarschijnlijk heeft het veld Image wel een waarde, maar deze is onvolledig?
Je zou ook kunnen controleren of het plaatje "fysiek" is geupload.
Offline Button - 14/09/2005 13:10 (laatste wijziging 14/09/2005 13:11)
Avatar van Button PHP ver gevorderde wat wil je dan eigenlijk in de database? het hele plaatje dus in de db, niet alleen de naam? Want zou je dan niet deze moeten gebruiken?
$foto = $_FILES['afbeelding']['tmp_name'];
Offline Thomas - 14/09/2005 13:27
Avatar van Thomas Moderator Nee, tmp_name is een tijdelijke naam die heel kort wordt gebruikt - deze is na afloop van het script waarschijnlijk al weer weg (net als het geuploade bestand).
Offline PeterBuring - 16/09/2005 08:51 (laatste wijziging 19/09/2005 09:36)
Avatar van PeterBuring HTML beginner het is al opgelost...
ik heb het gehele
  1. if(empty($_POST['afbeelding']))
  2. {
  3. //blabla
  4. }

deel weggehaald en op de plaats waar stond:
het uploaden is mislukt
een nieuwe insertquery geplaatst.. nu werkt het wel..
bedankt voor het meedenken though!
Gesponsorde links
Dit onderwerp is gesloten.
Actieve forumberichten
© 2002-2025 Sitemasters.be - Regels - Laadtijd: 0.224s