Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP][MySQL] pliki do bazy danych
Forum PHP.pl > Forum > Przedszkole
-alvarofun-
Witam

Mógł by mi ktoś napisać skrypt który będzie mi dodawał wszystkie zdjęcia z serwera do bazy danych mysql

Szukałem na google i nie mogę znaleźć sad.gif
Korab
A ma sens wrzucanie zdjęć do bazy danych (binarnie)?
-alvarofun-
no oki, ale jak do bazy wrzucić choć same nazwy plików??
pedro84
Google.pl => mysql insert...

Zainteresuj się też takim terminem jak... interpunkcja...
17misiek09
plik form.php
  1. <form method="POST" action="upload.php" enctype="multipart/form-data">
  2. Wybierz plik który chcesz umieścić na serwerze:<br>
  3. <input type="file" name="plik" ><br>
  4. <input type="submit" value="Wgraj plik">
  5. </form>


plik galeria.php
  1. <?php
  2. $Lista = glob("./pliki/*.*");
  3. foreach ($Lista as $Nazwa){
  4. $tekst = $Nazwa;
  5. $fragment = substr($tekst, 8);
  6.  
  7. // echo $Nazwa;
  8. echo ' '.$fragment.': <a href="'.$Nazwa.'" target="_blank" rel="lightbox[roadtrip]"><img src="'.$Nazwa.'" alt="" height="120" width="160" ></a>';
  9. echo '<br>'; //tylko po to by ci sie nie zlały nazwy
  10. }
  11. ?>


plik showimage.php
  1. <?php
  2. header("Content-type: image/jpg;");
  3.  
  4. include "connect.php";
  5.  
  6. $result = mysql_query("SELECT zdjecie FROM zdjecia WHERE id=".$_GET['id']);
  7. if (mysql_num_rows($result) != 0)
  8. {
  9. $row = mysql_fetch_assoc($result);
  10. echo base64_decode($row['zdjecie']);
  11. }
  12.  
  13. ?>


plik upload.php
  1. <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"><html>
  2. <head>
  3. <meta http-equiv="Content-type" content="text/html; charset=utf-8">
  4. <meta name="Description" content=" [wstaw tu opis strony] ">
  5. <meta name="Keywords" content=" [wstaw tu slowa kluczowe] ">
  6. <meta name="Author" content=" [dane autora] ">
  7. <meta name="Generator" content="kED2">
  8.  
  9. <title> upload plików </title>
  10.  
  11. <link rel="stylesheet" href=" [nazwa_arkusza_stylow.css] " type="text/css">
  12. <link rel="stylesheet" href="css/lightbox.css" type="text/css" media="screen" />
  13.  
  14. <script type="text/javascript" src="javascript/prototype.js"></script>
  15. <script type="text/javascript" src="javascript/scriptaculous.js?load=effects,builder"></script>
  16. <script type="text/javascript" src="javascript/lightbox.js"></script>
  17.  
  18. </head>
  19. <body>
  20.  
  21. <?php
  22. $size = $_FILES['plik']['size'];
  23. $tmp = $_FILES['plik']['tmp_name'];
  24. $name = $_FILES['plik']['name'];
  25. $source = 'pliki/'.$_FILES['plik']['name'];
  26.  
  27.  
  28.  
  29. include "connect.php";
  30. $fhandle = fopen($_FILES['plik']['tmp_name'], "r");
  31. $content = base64_encode(fread($fhandle, $size));
  32. fclose($fhandle);
  33. $zapytanie = mysql_query("INSERT INTO zdjecia (zdjecie) VALUES (\"".$content."\")");
  34. $adres = "showimage.php?id=".mysql_insert_id();
  35. $zapytanie2 = mysql_query("UPDATE zdjecia SET sciezka = '".$source."' WHERE id=".mysql_insert_id());
  36. echo "Twoje zdjęcie otrzymało adres do bazy danych: ".$adres;
  37. echo "<br>2 Twoje zdjęcie otrzymało adres do folderu na serwerze: ".$source;
  38. echo "<br>plik w bazie danych <a href='".$adres."' rel='lightbox[roadtrip]'><img width='160' height='120' src=\"".$adres."\"/></a>";
  39. echo "<br><br>plik w folderze na serwerze <a href='".$source."' rel='lightbox[roadtrip]'><img width='160' height'120' src=\"".$source."\"/></a>";
  40. echo "<br><br>";
  41.  
  42.  
  43. $max_size=0; // Maksymalny rozmiar w bajtach
  44. if($size<$max_size){
  45. echo 'Maksymalny rozmiar to '.$max_size.' bajtów'; }else{
  46. if(is_uploaded_file($tmp)) {
  47. move_uploaded_file($tmp, "pliki/$name");
  48. echo 'Pomyslnie przeslano plik! Mozna go pobrac stad: <a href="pliki/'.$name.'" target="_blank" rel="lightbox[roadtrip]"><img src="pliki/'.$name.'" alt="" height="120" width="160" ></a><br><br>';
  49. echo "<br><br><br>pozostale pliki: ";
  50. } }
  51.  
  52. ?>
  53.  
  54. <?php
  55. $Lista = glob("./pliki/*.*");
  56. foreach ($Lista as $Nazwa){
  57. $tekst = $Nazwa;
  58. $fragment = substr($tekst, 8);
  59. // echo $Nazwa;
  60. echo '<br>';
  61. echo ' '.$fragment.': <a href="'.$Nazwa.'" target="_blank" rel="lightbox[roadtrip]"><img src="'.$Nazwa.'" alt="" height="120" width="160" ></a>';
  62. echo '<br>'; //tylko po to by ci sie nie zlały nazwy
  63. }
  64. ?>
  65.  
  66. </body>
  67. </html>
  68.  


od razu masz wszystko czego potrzebujesz do moim zdaniem fajnego wyswietlania galerii wink.gif
potrzebujesz plików z: lightbox2

  1. include "connect.php";

oznacza, ze dane do logowania mam w osobnym pliku:

plik connect.php
  1. <?
  2. $uzytkownik = "wpisz nazwe uzytkownika"; //
  3. $haslo = "wpisz haslo do bazy danych"; // Rzecz jasna wszystkie te dane zależą od naszej konkretnej bazy!
  4. $db = "nazwa bazy danych"; //
  5. $adres = "host";
  6. $link = mysql_connect( $adres, $uzytkownik, $haslo);
  7. ?>



  1. CREATE TABLE `obrazki` (
  2. `id` int(11) NOT NULL AUTO_INCREMENT,
  3. `zdjecie` MEDIUMBLOB NOT NULL,
  4. `sciezka` varchar(255) NOT NULL,
  5. PRIMARY KEY (`id`)
  6. ) ENGINE=MyISAM;


na serwerze musisz miec folder pliki i nadac mu chmod 777

masz tu troche opcji wyswietlania: z bazy i z folderu, wrzucanie sciezki do pliku i samego pliku.
jak chwilke pomyslisz to i zmiane nazwy zrobisz, zebys mogl wrzucac 1 plik milion razy biggrin.gif tylko po co? biggrin.gif

korzystalem z 2 stron...3 minuty na google, ale no sam wiem jak to jest pytac i sie nie dowiedziec wink.gif

obrazek do folderu, a sciezka do bazy danych
obrazek do bazy danych
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.