Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Problem z uploadem
Forum PHP.pl > Forum > PHP
ultras91
Witam! Jestem w trakcie pisania modułu do CMS jportal2, mam problem z uploadem, chodzi na windowsie (webserv) ale na hostingu (linuxpl.com) juz nie (generuje wszystko ale plik nie uploaduje sie), chmod 777 jest ustawiony na katalog torrent.
Prosze o pomoc... nie wiem juz co mam robic, siedze druga noc nad tym.

funkcje odpowiadające z upload:
  1. <?php
  2. function add_form() {
  3. echo '<form enctype="multipart/form-data" action="torrent.php?co=confirm_add" method="POST">
  4. <table class="uni_02"><tr>';
  5. echo '<td>Kategoria:</td>';
  6. echo '<td class="next">';
  7. echo '<select name="topic">
  8. <option value="no" selected>(wybierz dział)</option>';
  9. $query = "SELECT * FROM jp_topic ORDER BY title";
  10. $result = mysql_query($query);
  11. while($r = mysql_fetch_array($result)) {
  12. $id = $r['id'];
  13. $topic = $r['title'];
  14. echo '<option value="'.$id.'">'.$topic.'</option>';
  15. }
  16. echo '</select>';
  17. echo '</td>';
  18. echo '</tr>';
  19. echo '<tr>';
  20. echo '<td>Nazwa:</td>';
  21. echo '<td><input type="text" name="name"></td>';
  22. echo '</tr>';
  23. echo '<tr>';
  24. echo '<td valign="top">Opis:</td>';
  25. echo '<td><textarea name="desc" cols="50" rows="12"></textarea></td>';
  26. echo '</tr>';
  27. echo '<tr>';
  28. echo '<td>Plik:</td>';
  29. echo '<td><input type="hidden" name="MAX_FILE_SIZE" value="5000000" />
  30. <input name="plik" type="file" size="55"/>  (*.torrent)</td>';
  31. echo '</tr><tr><td colspan="2"><input type="radio" name="obrazek" value="brak" /> Bez obrazka <input type="radio" name="obrazek" value="2" /> Z obrazkiem';
  32.  
  33. echo '</td></tr><tr>';
  34. echo '<td>Obraz:</td>';
  35. echo '<td><input type="text" size="65" name="image"><br> maksymalny rozmiar 140x140 (zmiana wielkosci: <a href=\"http://resizeimg.com/?l=pl)<br>Aby\" target=\"_blank\">http://resizeimg.com/?l=pl)<br>Aby</a> nie przeciazac serwera prosimy wysylac obrazki na imageshack.us lub inny</td>';
  36. echo '</tr><tr><td><input type="submit" name="ok" value="Dodaj!"></td></tr>';
  37. echo '</table></form>';
  38. }
  39.  
  40. function confirm_add() {
  41. global $name, $obrazek, $topic, $desc, $image, $plik_tmp, $plik_nazwa, $plik_rozmiar, $plik2, $plik, $plik_;
  42. $name = $_POST['name'];
  43. $obrazek = $_POST['obrazek'];
  44. $topic = $_POST['topic'];
  45. $desc = $_POST['desc'];
  46. $name = htmlspecialchars($name);
  47. $desc = htmlspecialchars($desc);
  48. $image = $_POST['image'];
  49. $plik_tmp = $_FILES['plik']['tmp_name'];
  50. $plik_nazwa = $_FILES['plik']['tmp_name'];
  51. $plik_rozmiar = $_FILES['plik']['size'];
  52. $plik2 = substr(md5(date("d.m.Y.H.i.s").rand(1,1000000)) , 0 , 10);
  53. if(is_uploaded_file($plik_tmp)) {
  54.     move_uploaded_file($plik_tmp, "torrent/$plik2.torrent");
  55.    echo "Plik: <strong>$plik2.torrent</strong> o rozmiarze
  56.    <strong>$plik_rozmiar bajtów</strong> został przesłany na serwer!";
  57. }
  58.  
  59. $info = get_user_info();
  60.   $query = "INSERT INTO jp_torrent VALUES(NULL, '$topic', '$name', '$image', '$plik2.torrent', '$desc', '$info[1]', '2')";
  61.   $sql = "UPDATE jp_users SET torrent=torrent+1 WHERE nick='$info[1]'";
  62.  
  63. if($obrazek==2) {
  64. $size=getimagesize($image);
  65. $size[0];
  66. $size[1];
  67. $xx=$size[0]*$size[1];
  68. $xx;
  69. if($size[0] < 141 && $size[1] < 141){
  70. $result = mysql_query($query);
  71. $result7 = mysql_query($sql);
  72. } else echo 'Obrazek za duzy!';
  73.  
  74. }
  75. if($obrazek=='brak') {
  76. $query2 = "INSERT INTO jp_torrent VALUES(NULL, '$topic', '$name', 'brak.gif', '$plik2.torrent', '$desc', '$info[1]', '2')";
  77. $result = mysql_query($query2);
  78. $sql2 = "UPDATE jp_users SET torrent=torrent+1 WHERE nick='$info[1]'";
  79. $result6 = mysql_query($sql2);
  80. }
  81. if($name and $topic and $desc and $obrazek and $plik) {
  82.    if($result) echo 'Dodalem torrenta!'; else echo 'Nie udalo sie';
  83. }
  84.  
  85.  
  86. }
  87. ?>


caly plik modulu: torrent.php

co moze byc nie tak?
Darti
Jak na windowsie chodzi a na Linuxie nie to czesto podejrzewam zbuggowane prawa do plików. Sprawdź dostęp do katalogu tymczasowego i czy masz prawa kopiować/przenosic uploadowane pliki. daj warunek if(move_uploaded_file([...])){echo "jest OK";} else {echo "nie jest OK";}
ultras91
Cytat(Darti @ 6.11.2008, 02:18:17 ) *
Jak na windowsie chodzi a na Linuxie nie to czesto podejrzewam zbuggowane prawa do plików. Sprawdź dostęp do katalogu tymczasowego i czy masz prawa kopiować/przenosic uploadowane pliki. daj warunek if(move_uploaded_file([...])){echo "jest OK";} else {echo "nie jest OK";}


probowalem, niestety nieprzenosi pliku (wyglada jakby go w ogole niepobieral z dysku), w .htaccess ustawialem swoj katalog tmp ale niestety nie idzie, o dziwo jesli dodam to jako jeden skrypt (oddzielnie upload.php - czysty php bez modulowania i includowania jportala) bez wywolan funkcji wszystko idzie ladnie, plik sie uploaduje... tylko nie wiem dlaczego, na widnowsie dzialaja obie na linuksie tylko to drugie rozwiazanie, co jest troche dla mnie zle...
bim2
Pewnie coś jportal zmienne nadpisuje. masz poustawiane globale to się nie dziwie. Spytaj na zsyp.pl oni tam znają jp na wylot, ale na podczatek spórbuj dodać prefixy do zmiennych.
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.