Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [MySQL][PHP]Dodawanie dużej ilości znaków do rekordu bazy danych
bfeatr
post 8.05.2013, 13:24:56
Post #1





Grupa: Zarejestrowani
Postów: 24
Pomógł: 0
Dołączył: 8.05.2013

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


Witam mam pewien problem, otóż mam formularz a w nim pole textarea z formularza dane chce zapisać do bazy danych mysql, problem tkwi w tym że przy mniejszej ilości znaków w polu tekstowym skrypt działa poprawnie, jednak ja potrzebuje dodawać ich około 5000 i w tedy mój skrypt nie działa wie ktoś może co można z tym zrobić



  1. /sprawdzenie czy formularz został wysłany
  2. if (isset($_POST['submit']))
  3. {
  4.  
  5. /// kod dodawania do bazy
  6. $nazwa = strip_tags($_POST['element_1']);
  7. $rezyser = strip_tags($_POST['element_2']);
  8. $gatunek = strip_tags($_POST['element_7']);
  9. $rok_produkcji = strip_tags($_POST['element_3']);
  10. $recenzja = strip_tags($_POST['element_4']);
  11. $recenzja = delNewLines($recenzja);
  12. $recenzja = ciach($recenzja, 1500);
  13.  
  14. $data=date('Y-m-d H:i:s');
  15. // ładowanie i zmiana wielkości obrazka
  16.  
  17.  
  18. $nazwa_pliku=addPicture(68,90);
  19. $nazwa_pliku_2=addSlideshow(1004,300);
  20. // dodawanie wpisu do bazy danych
  21. $add = mysql_query("INSERT INTO recenzje (id_r, nazwa, rezyser, gatunek, rok_produkcji, recenzja, data, plakat, slideshow) VALUES ('','" . $nazwa . "', '" . $rezyser . "', '" . $gatunek . "', '" . $rok_produkcji . "', '" . $recenzja . "', '" . $data . "', '" . $nazwa_pliku . "','" . $nazwa_pliku_2 . "')") or die ("Błąd podczas dodawania do bazy danych filmów");
  22.  
  23.  
  24. form();
  25. }
  26. else
  27. {
  28. form();
  29. }




  1. function form(){
  2. echo '
  3. <img id="top" src="top.png" alt="">
  4. <div id="form_container">
  5.  
  6. <h1><a>Dodawanie Recednzji do bazy danych</a></h1>
  7. <form id="form_605544" class="appnitro" enctype="multipart/form-data" method="post" action="index.php">
  8. <div class="form_description">
  9. <h2>Dodawanie Recenzji do bazy danych</h2>
  10. <p>Pamiętaj o wypełnieniu wszystkich pól</p>
  11. </div>
  12. <ul >
  13.  
  14. <li id="li_1" >
  15. <label class="description" for="element_1">Film </label>
  16. <div>
  17. <input id="element_1" name="element_1" class="element text medium" type="text" maxlength="255" value=""/>
  18. </div>
  19. </li> <li id="li_2" >
  20. <label class="description" for="element_2">Reżyser </label>
  21. <div>
  22. <input id="element_2" name="element_2" class="element text medium" type="text" maxlength="255" value=""/>
  23. </div>
  24. </li> <li id="li_7" >
  25. <label class="description" for="element_7">Gatunek </label>
  26. <div>
  27. <select class="element select medium" id="element_7" name="element_7">
  28. <option value="" selected="selected"></option>
  29. <option value="Film akcji" >Film akcji</option>
  30. <option value="Komedia" >Komedia</option>
  31. <option value="Dramat" >Dramat</option>
  32. <option value="Film fantasy" >Film fantasy</option>
  33. <option value="Film sensacyjny" >Film sensacyjny</option>
  34. <option value="Triller" >Triller</option>
  35. <option value="Kryminał" >Kryminał</option>
  36. <option value="Film przygodowy" >Film przygodowy</option>
  37. <option value="Horror" >Horror</option>
  38. <option value="Film dokumentalny" >Film dokumentalny</option>
  39. <option value="Science fiction" >Science fiction</option>
  40. <option value="Film animowany" >Film animowany</option>
  41. <option value="Komedia romantyczna" >Komedia romantyczna</option>
  42. <option value="Western" >Western</option>
  43.  
  44. </select>
  45. </div>
  46. </li> <li id="li_3" >
  47. <label class="description" for="element_3">Rok produkcji </label>
  48. <div>
  49. <input id="element_3" name="element_3" class="element text medium" type="text" maxlength="255" value=""/>
  50. </div>
  51. </li> <li id="li_4" >
  52. <label class="description" for="element_4">Recenzja </label>
  53. <div>
  54. <textarea id="element_4" name="element_4" class="element textarea medium"></textarea>
  55. </div>
  56. </li> <li id="li_5" >
  57. <label class="description" for="element_5">Plakat </label>
  58. <div>
  59. <input id="element_5" name="upload" class="element file" type="file"/>
  60. </div> <p class="guidelines" id="guide_5"><small>fgthfg</small></p>
  61. </li> <li id="li_6" >
  62. <label class="description" for="element_6">Slideshow </label>
  63. <div>
  64. <input id="element_6" name="slide" class="element file" type="file"/>
  65. </div>
  66. </li>
  67.  
  68. <li class="buttons">
  69. <input type="hidden" name="form_id" value="605544" />
  70.  
  71. <input id="saveForm" class="button_text" type="submit" name="submit" value="Submit" />
  72. </li>
  73. </ul>
  74. </form>
  75. <div id="footer">
  76. Generated by <a href="http://www.phpform.org">pForm</a>
  77. </div>
  78. </div>
  79. <img id="bottom" src="bottom.png" alt="">';
  80.  
  81. }

  1. function ciach($tresc,$ile)
  2. {
  3. // obliczamy ilość znaków w tekscie
  4. $licz = strlen($tresc);
  5. // sprawdzamy, czy ilość znaków w tekscie jest większa
  6. // lub równa liczbie znaków po jakiej tekst ma być obcięty
  7. if ($licz>=$ile)
  8. {
  9. // obcinamy tekst o określoną ilośc znaków
  10. $tnij = substr($tresc,0,$ile);
  11. // dodajemy kropeczki (...)
  12. $txt = $tnij."...więcej";
  13. }
  14. else
  15. {
  16. // jeżeli warunek nie jest spełniony pozostawiamy tekst bez zmian
  17. $txt = $tresc;
  18. }
  19. // zwracamy wynik działania funkcji
  20. return $txt;
  21. }
  22. function delNewLines($str) {
  23. $del = array("\r" => '', "\n" => '');
  24. return strtr($str, $del);
  25. }
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 4)
r4xz
post 8.05.2013, 13:54:58
Post #2





Grupa: Zarejestrowani
Postów: 673
Pomógł: 106
Dołączył: 31.12.2008

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


Cytat(bfeatr @ 8.05.2013, 14:24:56 ) *
i w tedy mój skrypt nie działa

logi? błędy?


--------------------
Go to the top of the page
+Quote Post
bfeatr
post 8.05.2013, 14:12:59
Post #3





Grupa: Zarejestrowani
Postów: 24
Pomógł: 0
Dołączył: 8.05.2013

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


błąd jaki się pokazuje to ten przy or die przy zapytaniu "Błąd podczas dodawania do bazy danych filmów", ale on pokazuje się jak np wkleję jakiś tekst z sieci, przy małej ilości znaków działa poprawnie

Ten post edytował bfeatr 8.05.2013, 14:14:41
Go to the top of the page
+Quote Post
nospor
post 8.05.2013, 14:37:26
Post #4





Grupa: Moderatorzy
Postów: 36 557
Pomógł: 6315
Dołączył: 27.12.2004




zamiast nic nie mowiacego komunikatu, wyswietl blad....

nie: or die ("Błąd podczas dodawania do bazy danych filmów");
a: or die (mysql_error());

poza tym poczytaj o mysql_escape_string() bo jak tekst bedzie zawierał ciapki to rozwali ci zapytanie, co prawdopodobnie wlasnie się teraz dzieje


--------------------

"Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista
"Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer

Go to the top of the page
+Quote Post
bfeatr
post 8.05.2013, 16:10:03
Post #5





Grupa: Zarejestrowani
Postów: 24
Pomógł: 0
Dołączył: 8.05.2013

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


pomogło wielkie dzięki;)
Go to the top of the page
+Quote Post

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

 



RSS Wersja Lo-Fi Aktualny czas: 24.07.2025 - 17:45