Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: problem z przekierowaniem
Forum PHP.pl > Forum > PHP
tehaha
Witam, mam problem, którego nie potrafię rozwiązać/zrozumieć , mianowicie mam prosty skrypt przekierowujący użytkownika z powrotem do panelu po tym jak zostało wykonane dodanie danych do bazy MySQL. Dane zostają poprawnie wpisane do bazy i powinno po tym nastąpić przekierowanie, działa to dla wszystkich podstron z wyjątkiem tej jednej i nie rozumiem czemu.

Ten skrypt odbiera dane z formularza i umieszcza w bazie:

  1. <?php
  2. require_once('redirect.php');
  3. // Check if a file has been uploaded
  4. if(isset($_FILES['uploaded_file']))
  5. {
  6. // Make sure the file was sent without errors
  7. if($_FILES['uploaded_file']['error'] == 0)
  8. {
  9. // Connect to the database
  10. require_once('connect.php');
  11.  
  12. // Gather all required data
  13. $name = mysql_real_escape_string( $_FILES['uploaded_file']['name']);
  14. $mime = mysql_real_escape_string( $_FILES['uploaded_file']['type']);
  15. $size = $_FILES['uploaded_file']['size'];
  16. $data = mysql_real_escape_string( file_get_contents($_FILES ['uploaded_file']['tmp_name']));
  17.  
  18. // Create the SQL query
  19. $query = "
  20. INSERT INTO file (
  21. file_name, file_type, file_content, file_size, file_created
  22. )
  23. VALUES (
  24. '{$name}', '{$mime}', '{$data}', '{$size}', NOW()
  25. )";
  26.  
  27. // Execute the query
  28. $result = mysql_query($query);
  29.  
  30. // Check if it was successfull
  31. if($result)
  32. {
  33. $mes = urlencode('Plik został dodany.');
  34. redirect('panel.php?site=files&m='.$mes.'&mtype=confirm');
  35.  
  36. }
  37. else
  38. {
  39. $mes = urlencode('Plik nie został dodany.');
  40. redirect('panel.php?site=files&m='.$mes.'&mtype=failed');
  41. }
  42. }
  43. else
  44. {
  45.  
  46. $mes = urlencode('Plik nie został dodany, ponieważ nie wskazałeś pliku.');
  47. redirect('panel.php?site=files&m='.$mes.'&mtype=failed');
  48. }
  49.  
  50. // Close the mysql connection
  51.  
  52. }
  53. else
  54. {
  55.  
  56. $mes = urlencode('Plik nie został dodany.');
  57. redirect('panel.php?site=files&m='.$mes.'&mtype=failed');
  58. }
  59.  
  60. $mes = urlencode('Plik został dodany.');
  61. redirect('panel.php?site=files&m='.$mes.'&mtype=confirm');
  62. ?>


A oto skrypt redirect.php do przekierowania:

  1. <?php
  2.  
  3. function redirect($url) {
  4. if(!headers_sent()) {
  5. header('Location:http://' . $_SERVER['HTTP_HOST'] .
  6. dirname($_SERVER['PHP_SELF']) . '/' . $url);
  7. } else {
  8. die('Sorry could not redirect.');
  9. }
  10. }
  11. ?>


dane zostaja dodane do bazy i pojawia sie komunikat Sorry could not redirect
Dziekuje za ewentualna pomoc i pozdrawiam
Daniel
l0ud
Zwróciłeś uwagę na te spacje przed <?php w pierwszym pliku? Jeżeli ich nie ma, sprawdź też kodowanie tego pliku - jeżeli jest w utf-8, upewnij się, że bez BOM.
tehaha
jesteś wielki , rzeczywiście wszytko przez tą spację , tak wnikliwie analizowałem skrypt, że zabrakło tego świeżego spojrzenia i nie dostrzegłem tak oczywistego głupiego błędu sciana.gif dzięki jeszcz raz
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.