Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Warning fread()...
waqmaz
post
Post #1





Grupa: Zarejestrowani
Postów: 69
Pomógł: 0
Dołączył: 22.01.2011
Skąd: Murowana Goślina

Ostrzeżenie: (0%)
-----


Słuchajcie, skrypt powinien działać jak należy, a wywala mi:
  1. Warning: fopen() [function.fopen]: Filename cannot be empty in C:\xampp\htdocs\funkcje_uwierzytel.php on line 32
  2.  
  3. Warning: fread() expects parameter 1 to be resource, boolean given in C:\xampp\htdocs\funkcje_uwierzytel.php on line 32


Co jest nie tak? Używam Xampp:Apache.
  1. $tmp = $_FILES['zdjecie']['tmp_name'];
  2. $nazwa = $_FILES['zdjecie']['name'];
  3. $rozmiar = $_FILES['zdjecie']['size'];
  4. $typ = $_FILES['zdjecie']['type'];


32 linijka:
  1. $obraz = addslashes(fread(fopen($tmp, "r"), $rozmiar));


Ładuję plik przez formularz przeglądaj do tabeli obraz.

Ten post edytował waqmaz 18.09.2011, 12:28:50
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
waqmaz
post
Post #2





Grupa: Zarejestrowani
Postów: 69
Pomógł: 0
Dołączył: 22.01.2011
Skąd: Murowana Goślina

Ostrzeżenie: (0%)
-----


  1. array(1) { ["zdjecie"]=> array(5) { ["name"]=> string(12) "pytajnik.PNG" ["type"]=> string(9) "image/png" ["tmp_name"]=> string(23) "C:\xampp\tmp\php4F8.tmp" ["error"]=> int(0) ["size"]=> int(309) } }
  2. Warning: fopen(tmp/) [function.fopen]: failed to open stream: No such file or directory in C:\xampp\htdocs\funkcje_uwierzytel.php on line 33
  3.  
  4. Warning: fread() expects parameter 1 to be resource, boolean given in C:\xampp\htdocs\funkcje_uwierzytel.php on line 33
  5. Nie udało się załadować avatara, lecz twoje konto zostało utworzone bez niego. Gratulacje! Konto zostalo utworzone!


Chyba nigdy nie będą działać te avatary =/ Dlaczego tak się dzieje, wie ktoś z góry? Wskazałem katalog, jak kazaliście i jak jeden z was podał w przykładzie, no i błąd.

Dam wam cały kod. Bez zabezpieczeń i pisany na szybko, więc nie wytykajcie mnie na razie.

<B>FUNKCJE_UWIERZYTEL.PHP</B>
  1. function wyswietl_formularz_rej() {
  2. ?>
  3. <div class="ramka_rejestracji">
  4. <form enctype="multipart/form-data" action="index.php?action=nowa_rejestracja" method="post">
  5. <center>
  6. <p>Adres e-mail:</p>
  7. <input type="text" name="email" size="30" maxlength="100" />
  8. <p>Hasło:</p>
  9. <input type="password" name="haslo" size="16" maxlength="16" />
  10. <p>Wprowadź hasło ponownie:</p>
  11. <input type="password" name="haslo2" size="16" maxlength="16" />
  12. <p>Nazwa użytkownika:</p>
  13. <input type="text" name="nazwa_uz" size="16" maxlength="16" />
  14. <p>Awatar:</p>
  15. <input type="hidden" name="max_file_size" value="5000" />
  16. <input name="zdjecie" type="file" /><br /><br />
  17.  
  18. <input type="submit" value="Rejestruj">
  19. </center>
  20. </form>
  21. </div>
  22. <?php
  23. }
  24.  
  25. function rejestrowanie_uzytkownika($nazwa_uz, $email, $haslo, $obraz) {
  26.  
  27. $lacz = lacz_bd();
  28. $wynik = $lacz->query("select * from uzytkownik where nazwa_uz='".$nazwa_uz."'");
  29.  
  30. //$obraz = addslashes(fread(fopen($tmp, "r"), $rozmiar));
  31. $obraz = addslashes(fread(fopen("tmp/".$tmp, "r"), $rozmiar));
  32.  
  33. if (!$wynik) {
  34. throw new Exception('Wykonanie zapytania nie powiodlo sie.');
  35. }
  36.  
  37. if ($wynik->num_rows>0) {
  38. throw new Exception('Niestety wybrana przez Ciebie nazwa uzytkownika juz istnieje w bazie danych. Prosimy wybrac inna nazwe.');
  39. }
  40. if($obraz)
  41. //$rsz = explode(".",$nazwa_obrazu);
  42.  
  43. //if(($rsz[1] == "jpg" or $rsz[1] == "gif" or $rsz[1] == "bmp" or $rsz[1] == "png") and (is_uploaded_file($tmp))){
  44.  
  45. $wynik = $lacz->query("insert into uzytkownik values('".$nazwa_uz."', sha1('".$haslo."'), '".$email."','".$obraz."')");
  46. //$wynik = $lacz->query("INSERT INTO zdjecie SET zdjecie='".$obraz."'");
  47.  
  48. if($obraz){
  49. echo 'Plik:', $nazwa_obrazu, 'został przesłany na serwer! ';
  50. }
  51. else{
  52. echo 'Nie wybrales avatara, lecz twoje konto zostalo utworzone bez niego. ';
  53. }
  54.  
  55. if (!$wynik) {
  56. throw new Exception('Rejestracja uzytkownika w bazie danych jest nie mozliwa');
  57. }
  58.  
  59. return true;
  60. }

<B>NOWA_REJESTRACJA.PHP</B>
  1. <?php
  2.  
  3. $email=$_POST['email'];
  4. $nazwa_uz=$_POST['nazwa_uz'];
  5. $haslo=$_POST['haslo'];
  6. $haslo2=$_POST['haslo2'];
  7.  
  8. $tmp = $_FILES['zdjecie']['tmp_name']; //MOZLIWE ZE TU COS SKNOCILEM!!!
  9. $nazwa_obrazu = $_FILES['zdjecie']['name']; //MOZLIWE ZE TU COS SKNOCILEM!!!
  10. $rozmiar = $_FILES['zdjecie']['size']; //MOZLIWE ZE TU COS SKNOCILEM!!!
  11. $typ = $_FILES['zdjecie']['type']; //MOZLIWE ZE TU COS SKNOCILEM!!!
  12. var_dump($_FILES);
  13.  
  14. try {
  15. if (!wypelniony($_POST)) {
  16. echo '<div class="ramka_error"><p>';
  17. throw new Exception('Pola oznaczone gwiazdka * musza zostac wypelnione.');
  18. echo '</p></div>';
  19. }
  20.  
  21. if (!prawidlowy_email($email)) {
  22. echo '<div class="ramka_error"><p>';
  23. throw new Exception('Podano nieprawidlowy adres email!');
  24. echo '</p></div>';
  25. }
  26.  
  27. if ($haslo != $haslo2) {
  28. echo '<div class="ramka_error"><p>';
  29. throw new Exception('Podano dwa rozniace sie od siebie hasla. Pole haslo i powtorz haslo musza byc takie same.');
  30. echo '</p></div>';
  31. }
  32.  
  33. if (strlen($nazwa_uz) > 16) {
  34. echo '<div class="ramka_error"><p>';
  35. throw new Exception('Nazwa uzytkownika, nie moze miec wiecej niz 16 znakow!');
  36. echo '</p></div>';
  37. }
  38.  
  39. if ((strlen($haslo) < 6) || (strlen($haslo) > 16)) {
  40. echo '<div class="ramka_error"><p>';
  41. throw new Exception('Haslo musi skladac sie od 6 do 16 znakow!.');
  42. echo '</p></div>';
  43. }
  44.  
  45. rejestrowanie_uzytkownika($nazwa_uz, $email, $haslo, $obraz);
  46.  
  47. echo 'Gratulacje! Konto zostalo utworzone!';
  48. }
  49.  
  50. catch (Exception $e) {
  51. echo $e->getMessage();
  52. }
  53. ?>
  54.  


Ten post edytował waqmaz 20.09.2011, 02:47:52
Go to the top of the page
+Quote Post

Posty w temacie


Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 9.10.2025 - 15:06