Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP] Wyświetlanie obrazków z FTP
Forum PHP.pl > Forum > Przedszkole
boro11
Witam, zrobiłem sobie skrypt uploadu plików działa idealnie, ale niestety nie jestem w stanie dojść jak zrobić aby obrazki wgrywane do folderu wyświetlały się na jednej ze stron serwisu.
Dodatkowo chcę aby był podział na miesiące w którym dany obrazek został "zauploadowany" jest jakaś metoda na to?

Kolejnym problemem związanym z tym zagadnieniem jest to że chce udostępnić cześć serwisu, a raczej jeden button na innej podstronie dopiero gdy ktoś zauploaduje sobie obrazek na innej.


Skrypt odpowiedzialny za upload:
  1. <div id="TOS">
  2. <?php
  3.  
  4. $dir = "./proof/"; //Change this to the correct dir RELATIVE TO WHERE THIS SCRIPT IS, or /full/path/
  5.  
  6. //MIME types to allow, Gif, jpeg, zip ::Edit this to your liking
  7. $types = array("image/png","image/x-png","image/gif","image/jpeg","image/pjpeg","image/jpg","image/bmp");
  8.  
  9. // Nothing to edit below here.
  10.  
  11. //Function to do a directory listing
  12. function CPGscandir($dirstr) {
  13. echo "<pre>\n";
  14. passthru("ls -l -F $dirstr 2>&1 ");
  15. echo "</pre>\n";
  16. }
  17.  
  18. //Check to determine if the submit button has been pressed
  19. if(isset($_POST['submit'])){
  20.  
  21. //Shorten Variables
  22. $rand=rand(1,999999);
  23. $tmp_name = $_FILES['upload']['tmp_name'];
  24. $new_name = $rand.$_FILES['upload']['name'];
  25. $path = $_POST['subdir'];
  26. $fullpath = "$dir$path/";
  27. $fullpath = str_replace("..", "", str_replace("\.", "", str_replace("//", "/", $fullpath)));
  28. $clean_name = ereg_replace("[^a-z0-9._]", "", str_replace(" ", "_", str_replace("%20", "_", strtolower($new_name) ) ) );
  29.  
  30. // lets see if we are uploading a file or doing a dir listing
  31. if(isset($_POST['Dir'])){
  32. echo "Directory listing for $fullpath\n";
  33. scandir("$fullpath");
  34. }else{
  35.  
  36.  
  37. //Check MIME Type
  38. if ((in_array($_FILES['upload']['type'], $types)) and (!file_exists($fullpath.$clean_name))){
  39.  
  40. // create a sub-directory if required
  41. if (!is_dir($fullpath)){
  42. mkdir("$fullpath", 0755);
  43. }
  44. //Move file from tmp dir to new location
  45. move_uploaded_file($tmp_name,$fullpath . $clean_name);
  46.  
  47. echo "<br />Your proof is uploaded correctly!";
  48.  
  49. }else{
  50.  
  51. //Print Error Message
  52. echo "<small>File <strong><em>{$_FILES['upload']['name']}</em></strong> Was Not Uploaded - bad file type or file already exists</small><br />";
  53. //Debug
  54. $name = $_FILES['upload']['name'];
  55. $type = $_FILES['upload']['type'];
  56. $size = $_FILES['upload']['size'];
  57. $tmp = $_FILES['upload']['name'];
  58.  
  59. echo "Name: $name<br />Type: $type<br />Size: $size<br />Tmp: $tmp";
  60.  
  61. }
  62.  
  63. }
  64. } else {
  65. echo '';
  66. } ?>
  67. <br />
  68. <form action="" method="post" enctype="multipart/form-data">
  69.  
  70. Please upload your payment proof it will help us to grow faster and make our website even more reliable.<br /><br /><br />
  71.  
  72. <input type="file" name="upload" /> <br /><br />
  73. <input type="submit" name="submit" value="Upload" />
  74.  
  75. </form>
  76. </div>



Próbowałem cos wygooglowac na ten temat ale nie bardzo wiem nawet co wpisać żeby otrzymać to czego chce..
!*!
To wyświetl zwyczajnie img ze ścieżką do obrazka w html. Podział na miesiące możesz zrobić na katalogach przy wgrywaniu lub zapisywać to do bazy.
boro11
A jak do tego dodać żeby wrzucało do bazy jakieś dane?

Chodzi mi o coś al'a to:
http://www.infinitybux.com/pages/proof
Ociu
mysql
boro11
Dziękuje za podesłany link, ale może ujmę pytanie inaczej bo samo wrzucanie do bazy danych wiem jak zrobić, problem jest w tym, że nie wiem jak to połączyć z tym skryptem tzn. gdzie takie coś mogę wstawić żeby przy naciśnięciu jednego guzika wykonały się te dwie rzeczy?
!*!
Do swojego kodu który masz wyżej... Wgrywasz obrazek + wysyłasz dane do bazy (data, nazwa itp).
boro11
A gdzie wstawić to wysyłanie?
Tzn. w którym konkretnie miejscu?
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.