Brugernavn:




Kodeord: Husk
Forside Forum Artikler Downloads Sřg
 

Indsætter ikke i DB?

Godeftermiddag!

Er rimelig ny inden for php/sql, og lige nu roder jeg med at lægge et billede + beskrivelse ind i databasen. Mine filer:

upload.php
  1. <form method="POST" enctype="multipart/form-data" action="load.php">

  2. <p>

  3. Billedbeskrivelse:<br />
  4. <textarea name="beskrivelse" cols="30" rows="5" type="text"></textarea><br>

  5. Billede:<br />
  6. <input type="file" name="fil" size="21">

  7. <input type="submit" value="Upload!" name="submit">

  8. </p>

  9. </form>

load.php
  1. <?php

  2. include ('connect.php');

  3. $billede = "$_POST[billede]";
  4. $beskrivelse = "$_POST[beskrivelse]";

  5. mysql_query("INSERT INTO billeder (billeder,beskrivelser)VALUES('$billede','$beskrivelse')");

  6. echo "Billedet er blevet uploadet";

  7. ?>

mysql
  1. CREATE TABLE billeder (
  2. id int not null primary key auto_increment,
  3. billede blob,
  4. beskrivelse text
  5. );

Når jeg prøver at uploade et billede, skriver den: "Billedet er blevet uploadet", men der kommer intet ind i databasen?

Nogen der kan se problemet?
Håber i kan hjælpe!

Mvh
Kristoffer
Sidst redigeret 13:43 02/05/2010

Pointfordeling

Forfatteren har lukket trĺden og har valgt at fordele de 10 point sĺledes:
Perfektion 3 point
tv2-fyn 3 point
bmla 4 point
Oprettet af:

MySQL

Point afsat: 10

Lukket
13:41 02/05/2010
  1. <?php
  2. include ('connect.php');
  3. $billede = $_POST[billede];
  4. $beskrivelse = $_POST[beskrivelse];
  5. mysql_query("INSERT INTO billeder (billeder,beskrivelser)VALUES('$billede','$beskrivelse')");
  6. echo "Billedet er blevet uploadet";
  7. ?>

Prøv det
Oprettet af:

Accepteret svar

Point modtaget: 3
13:47 02/05/2010
  1. 1.<?php

  2. 2.

  3. 3.include ('connect.php');

  4. 4.

  5. 5.$billede = "$_POST[billede]";

  6. 6.$beskrivelse = "$_POST[beskrivelse]";

  7. 7.

  8. 8.mysql_query("INSERT INTO billeder(billede,beskrivelse)VALUES('$billede','$beskrivelse')");

  9. 9.

  10. 10.echo "Billedet er blevet uploadet";

  11. 11.

  12. 12.?>

Hvis det ikke virker, siger du bare til.. for jeg synes at du har kodet det ret mærkeligt :D Men det jeg har gjort er at rette navnene "billeder, beskrivelser" til "billede,beskrivelse" - Fordi at din mysql dump hedder, altså felterne hedder "beskrivelse" "billede"... forstår hvad jeg mener? de skal have samme navn inden de kan finde hinanden :p
Oprettet af:

Accepteret svar

Point modtaget: 3
13:52 02/05/2010
Hmm, stadig det samme

EDIT:
Så lige hvad du skrev tv2, fååååck en fail fra min side! :D Ja, jeg koder nok ret mærkeligt :b Tester lige når det er rettet :D

EDIT EDIT:
Nu kan jeg få beskrivelsen ind i databasen, men det ser ikke umiddelbart ud som om der kommer et billede ind..?
Kan i se problemet?
Sidst redigeret 13:58 02/05/2010
Oprettet af:

Kommentar
13:53 02/05/2010
Skriv endelig hvad du får af resultat :D
Oprettet af:

Kommentar
13:58 02/05/2010
vis gerne din nuværende kode. :) - så jeg tager udgangspunkt i noget der er rettet ;P
Oprettet af:

Kommentar
14:03 02/05/2010
load.php
  1. <?php

  2. include ('connect.php');

  3. $billede = $_POST[billede];

  4. $beskrivelse = $_POST[beskrivelse];

  5. mysql_query("INSERT INTO billeder (billede,beskrivelse)VALUES('$billede','$beskrivelse')");

  6. echo "Billedet er blevet uploadet";

  7. ?>
:-)
Sidst redigeret 14:23 02/05/2010
Oprettet af:

Kommentar
14:22 02/05/2010
upload.php

  1. 1.<form method="POST" enctype="multipart/form-data" action="load.php">

  2. 2.

  3. 3.<p>

  4. 4.

  5. 5.Billedbeskrivelse:<br />

  6. 6.<textarea name="beskrivelse" cols="30" rows="5" type="text"></textarea><br>

  7. 7.

  8. 8.Billede:<br />

  9. 9.<input type="file" name="billede" size="21">

  10. 10.

  11. 11.<input type="submit" value="Upload!" name="submit">

  12. 12.

  13. 13.</p>

  14. 14.

  15. 15.</form>

try that :D
Oprettet af:

Kommentar
14:28 02/05/2010
Virker heller ikke =D
Oprettet af:

Kommentar
14:35 02/05/2010
Lige off topic sorry :)
Men hvis det er et system som skal bruges af andre end dig, så anbefaler jeg kraftigt at du får noget sikkerhed på dit system der! Det er så let at "hacke" en side via et file input..
Oprettet af:

Kommentar
14:51 02/05/2010
Som sagt er jeg ny inden for php/mysql, så lige nu ville jeg blive glad hvis min kode virkede. Ellers er der ikke meget at beskytte :-) Men tak for oplysningen.
Oprettet af:

Kommentar
14:55 02/05/2010
  1. 1.1.<form method="POST" enctype="multipart/form-data" action="load.php">

  2. 2.

  3. 3.2.

  4. 4.

  5. 5.3.<p>

  6. 6.

  7. 7.4.

  8. 8.

  9. 9.5.Billedbeskrivelse:<br />

  10. 10.

  11. 11.6.<textarea name="beskrivelse" cols="30" rows="5" type="text"></textarea><br>

  12. 12.

  13. 13.7.

  14. 14.

  15. 15.8.Billede:<br />

  16. 16.

  17. 17.9.<input type="text" name="billede" size="21">

  18. 18.

  19. 19.10.

  20. 20.

  21. 21.11.<input type="submit" value="Upload!" name="submit">

  22. 22.

  23. 23.12.

  24. 24.

  25. 25.13.</p>

  26. 26.

  27. 27.14.

  28. 28.

  29. 29.15.</form>
Oprettet af:

Kommentar
15:00 02/05/2010
Kommer der ikke bare flere og flere linjeskift?
Oprettet af:

Kommentar
16:53 02/05/2010
Du vil have uploadet en fil? Godt så... $_FILES er svaret på dit spørgsmål. Du smider dit billede op på serveren og gemmer stien/filnavnet og beskrivelsen i databasen.. Den kode du har der skal rettes godt til hvis det skal virke. Her er lidt hjælp http://www.w3schools.com/PHP/php_file_upload.asp
Oprettet af:

Accepteret svar

Point modtaget: 4
02:23 03/05/2010
Med hjælp fra jer alle tre og nogle andre steder på nettet, endte jeg med denne kode som virker:
load.php
  1. <?php
  2. include ('connect.php');

  3. $BilledeNavn = strtolower($_FILES['fil']['name']);
  4. $beskrivelse = $_POST['beskrivelse'];
  5. $BilledeTmp = $_FILES['fil']['tmp_name'];

  6. $Destination = "billeder/".$BilledeNavn; // Så ender billedet i en mappe der hedder billeder

  7. // så længe vi ikke har en ny fil, kører vi dette loop og ændrer filnavnet.
  8. $oriBilledeNavn = $BilledeNavn;
  9. while (file_exists($Destination)) {
  10.   $BilledeNavn = rand(0,100000).$oriBilledeNavn;
  11.   $Destination = "billeder/".$BilledeNavn;
  12. }

  13. move_uploaded_file($BilledeTmp, $Destination);

  14. mysql_query("INSERT INTO billeder (billede,beskrivelse)VALUES('$BilledeNavn','$beskrivelse')");

  15. echo "Billedet er blevet uploadet";

  16. ?>
Oprettet af:

Kommentar
17:56 04/05/2010
Du skal vćre oprettet og logget ind for at svare pĺ en trĺd
Copyright © Rowl.dk v/ Michael Raagaard | 2005-12 | Alle rettigheder forbeholdes