Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Błąd w kodzie .. niestety nie wiem gdzie.
Forum PHP.pl > Forum > Przedszkole
ernest_potokmen
Dostalem niestety taki błąd : MySQL server has gone away

Plik dod1.php:
  1. <meta http-equiv="Content-type" content="text/html; charset=iso-8859-2">
  2. <link rel="stylesheet" type="text/css" href="style.css" />
  3. <title>Baza plików binarnych </title>
  4. </head>
  5.  
  6. <h1>Baza plików binarnych</h1>
  7.  
  8. <form action="do.php?action=ulfile" method="post" enctype="multipart/form-data">
  9. Numer przedmiotu:<INPUT NAME="nr_p">Numer lekcji:<INPUT NAME="nr_l"><br />
  10. Zaladuj plik pytania:<br />
  11. <input type="file" name="upyt" /><br />
  12. Zaladuj plik odpowiedzi 1:<br />
  13. <input type="file" name="uo1" /><br />
  14. Zaladuj plik odpowiedzi 2:<br />
  15. <input type="file" name="uo2" /><br />
  16. Zaladuj plik odpowiedzi 3:<br />
  17. <input type="file" name="uo3" /><br />
  18. Zaladuj plik odpowiedzi 4:<br />
  19. <input type="file" name="uo4" /><br />
  20. odpowiedzi dobre:<br />
  21. <INPUT TYPE="checkbox" NAME="d1" value="1"> 1
  22. <INPUT TYPE="checkbox" NAME="d2" value="1"> 2
  23. <INPUT TYPE="checkbox" NAME="d3" value="1"> 3
  24. <INPUT TYPE="checkbox" NAME="d4" value="1"> 4<br />
  25. Waga pytania (1-3):<INPUT NAME="waga"><br />
  26. Zaladuj plik podpowiedzi:<br />
  27. <input type="file" name="upod" /><br />
  28. <p><input type="submit" name="go" value="Wyslij do bazy" /></p>
  29. </form>
  30. </body>
  31. </html>


plik do.php:
  1. <?php
  2. $dbcnx = mysql_connect('localhost', 'root', 'krasnal');
  3. mysql_select_db('testy');
  4.  
  5. $action = '';
  6. if (isset($_GET['action'])) $action = $_GET['action'];
  7.  
  8. if ($action == 'ulfile'){
  9.  
  10.  
  11. if (!is_uploaded_file($_FILES['upyt']['tmp_name']))
  12. die('Nie ma pliku pytania!');
  13. if (!is_uploaded_file($_FILES['uo1']['tmp_name']))
  14. die('Nie ma pliku odpowiedzi1!');
  15. if (!is_uploaded_file($_FILES['uo2']['tmp_name']))
  16. die('Nie ma pliku odpowiedzi2!');
  17. if (!is_uploaded_file($_FILES['uo3']['tmp_name']))
  18. die('Nie ma pliku odpowiedzi3!');
  19. if (!is_uploaded_file($_FILES['uo4']['tmp_name']))
  20. die('Nie ma pliku odpowiedzi4');
  21. if (!is_uploaded_file($_FILES['upod']['tmp_name']))
  22. die('Nie ma pliku podpowiedzi');
  23.  
  24. $znr_p = $_POST['nr_p']; 
  25. $znr_l = $_POST['nr_l'];
  26.  
  27. $uploadfile = $_FILES['upyt']['tmp_name'];
  28. // Otwarcie pliku binarnego ('rb')
  29. $tempfile = fopen($uploadfile,'rb');
  30. // Pobierz wielkosc plku
  31. $zpyt = fread($tempfile,filesize($uploadfile));
  32. $zpyt = addslashes($zpyt);
  33.  
  34. $uploadfile = $_FILES['uo1']['tmp_name'];
  35. // Otwarcie pliku binarnego ('rb')
  36. $tempfile = fopen($uploadfile,'rb');
  37. // Pobierz wielkosc plku
  38. $zod1 = fread($tempfile,filesize($uploadfile));
  39. $zod1 = addslashes($zod1);
  40.  
  41. $uploadfile = $_FILES['uo2']['tmp_name'];
  42. // Otwarcie pliku binarnego ('rb')
  43. $tempfile = fopen($uploadfile,'rb');
  44. // Pobierz wielkosc plku
  45. $zod2 = fread($tempfile,filesize($uploadfile));
  46. $zod2 = addslashes($zod2);
  47.  
  48. $uploadfile = $_FILES['uo3']['tmp_name'];
  49. // Otwarcie pliku binarnego ('rb')
  50. $tempfile = fopen($uploadfile,'rb');
  51. // Pobierz wielkosc plku
  52. $zod3 = fread($tempfile,filesize($uploadfile));
  53. $zod3 = addslashes($zod3);
  54.  
  55. $uploadfile = $_FILES['uo4']['tmp_name'];
  56. // Otwarcie pliku binarnego ('rb')
  57. $tempfile = fopen($uploadfile,'rb');
  58. // Pobierz wielkosc plku
  59. $zod4 = fread($tempfile,filesize($uploadfile));
  60. $zod4 = addslashes($zod4);
  61.  
  62. $zpop1 = $_POST['d1'];
  63. $zpop2 = $_POST['d2'];
  64. $zpop3 = $_POST['d3'];
  65. $zpop4 = $_POST['d4'];
  66. $zwag = $_POST['waga'];
  67.  
  68. $uploadfile = $_FILES['upod']['tmp_name'];
  69. // Otwarcie pliku binarnego ('rb')
  70. $tempfile = fopen($uploadfile,'rb');
  71. // Pobierz wielkosc plku
  72. $zpod = fread($tempfile,filesize($uploadfile));
  73. $zpod = addslashes($zpod);
  74.  
  75.  
  76. $sql = "INSERT INTO testy SET
  77. NR_P = '$znr_p',
  78. NR_L = '$znr_l',
  79. PYT = '$zpyt',
  80. OD1 = '$zod1',
  81. OD2 = '$zod2',
  82. OD3 = '$zod3',
  83. OD4 = '$zod4',
  84. POP1 = '$zpop1',
  85. POP2 = '$zpop2',
  86. POP3 = '$zpop3',
  87. POP4 = '$zpop4',
  88. WAG = '$zwag',
  89. POD = '$zpod'";
  90.  
  91.  
  92. $ok = mysql_query($sql);
  93. if (!$ok)
  94. die('Blad przechowywania pliku w bazie: ' .mysql_error());
  95.  
  96. exit();
  97. }
  98. ?>


poprawiam
---
nospor




PS: Przepraszam za długi post jednak nie jestem dokońca pewien gdzie leży mój błąd. Najprawdopodobniej w połączeniu z bazą. Serwer jest pod windowsem, Krasnal. Z góry dziekuję za pomoc.
dr_bonzo
A w ktorym miejscu? Wskaz linie.
yavaho
Masz niepoprawie zbudowane zapytanie do bazy. Sprawdz jaka jest roznica pomiedzy INSERT a UPDATE, bo w Twoim zapytaniu jest mix z obydwu tych polecen.
nospor
@yavaho sam sprawdz, a przekonasz sie ze ta skladnia dla insert jest dozwolona
http://dev.mysql.com/doc/refman/5.0/en/insert.html
ernest_potokmen
Jeśli chodzi o linie kodu w którym jest błąd to nie podał debuger mysql .. :/. Poprostu taki błąd pobrało do zmiennej. Dokładnie to (MySQL server has gone away) i nic więcej. Nie wiem sam juz co robić.

Edit:
Sprubowałem z plikami mniejszych rozmiarów.. i teraz chodzi. Zmieniłem typy kolumn plików na LongBlob ale nic to nie dało. Wygląda to na ograniczenie plików przesyłanych na serwer. Dziwne. Prosze o pomoc sam tego napewno dorze nie napisze.
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.