Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [php]BB Code i Mysql
Max1992
post
Post #1





Grupa: Zarejestrowani
Postów: 66
Pomógł: 0
Dołączył: 4.05.2007

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


Mam pliki z

  1. <link rel="stylesheet" href="style2.css" type="text/css" media="all" />
  2. <?php
  3.  //jak jest parametr $_POST['haslo'] i jest w nim słowo 'tajne' to logujemy
  4. if (isset($_COOKIE['logowanief1bpadministracja'])=='zalogowanyf1bpadmin') 
  5. { 
  6. echo '';
  7. }
  8. else
  9.  {
  10.  include('logowanieadmin.php');
  11.  return;
  12.  }
  13.  //jak jest pole autor, tzn. że przesyłamy formularz
  14.  if (isset($_POST['autor']))
  15.  {
  16. if ($_POST['general']===Nie)
  17. {
  18. $waidgeneral=0;
  19. }
  20. else if ($_POST['general']===Tak)
  21. {
  22. $waidgeneral=1;
  23. }
  24. if ($_POST['ciekawy']===Nie)
  25. {
  26. $waidciek=0;
  27. }
  28. else if ($_POST['ciekawy']===Tak)
  29. {
  30. $waidciek=1;
  31. }
  32. //dostosowujemy wszystkie pola 
  33. $_POST['autor']=konwertuj($_POST['autor']);
  34. $_POST['tytul']=konwertuj($_POST['tytul']);
  35. bbcode($_POST['tresc']);
  36. $_POST['zrodlo']=konwertuj($_POST['zrodlo']);
  37. //kontrolujemy poprawność
  38. $blad='';
  39. if (strlen($_POST['tytul'])<10 || strlen($_POST['tytul'])>200) $blad='Tytuł niusa ma nieprawidłową długość!';
  40. if (strlen($_POST['zrodlo'])<|| strlen($_POST['zrodlo'])>50) $blad='Źródło ma nieprawidłową długość!';
  41. if (strlen($_POST['autor'])<3) $blad='Źle wprowadzono informacje o autorze!'; 
  42. if ($blad!='') info($blad,'blad');
  43. else 
  44. {
  45. //dodajemy do tabeli
  46. mysql_query("INSERT INTO aktualnosci VALUES("$_POST[tytul]","$_POST[tresc]","$_POST[autor]","$_POST[zrodlo]",".time().",NULL,"$waidgeneral","$waidciek")") or die(mysql_error());
  47.  info("Twój news został zapisany.","ok");
  48.  
  49. include("indexadministracja1992.php?pokaz=aktualnosci_dodaj_index");
  50. return;
  51.  }
  52.  
  53.  } else
  54.  {
  55.  $_POST['autor']='';
  56.  $_POST['tresc']='';
  57.  $_POST['tytul']='';  
  58.  $_POST['zrodlo']='';  
  59.  }
  60.  
  61. ?>
  62. <h1>Dodaj nowy nius<hr /></h1>
  63. <form action="indexadministracja1992.php" name="pokaz" method="POST">
  64.  <input type="hidden" name="pokaz" value="aktualnosci_dodaj" />
  65.  <table border="0">
  66.  <tr><td >Tytu&#322:</td ><td><input size="30" type="text" name="tytul" value="<?php echo $_POST['tytul']; ?>" /></td></tr>
  67.  <tr><td>Tre&#347&#263:</td><td><textarea cols="40" rows="5" name="tresc"><?php echo $_POST['tresc']; ?></textarea></td></tr>
  68.  <tr><td>&#378ród&#322o:</td><td><input size="30" type="text" name="zrodlllllo" value="<?php echo $_POST['zrodlllo']; ?>" /></td></tr>
  69.  <tr><td>Autor:</td><td><input size="30" type="text" name="autor" value="<?php echo $_POST['autor']; ?>" /></td></tr>
  70. <tr><td>&#377ród&#322o:</td><td><input size="30" type="text" name="zrodlo" value="<?php echo $_POST['zrodlo']; ?>" /></td></tr>
  71. <tr><td>Wiadomo&#347&#263 Generalna</td><td><select name=general><option value="Nie">Nie</option><OPTION>Tak</OPTION></select> </td></tr>
  72. <tr><td>Wiadomo&#347&#263 Ciekawa</td><td><select name=ciekawy><option value="Nie">Nie</option><OPTION>Tak</OPTION></select> </td></tr>
  73. <tr><td></td><td><input type="submit" value="Dodaj nowy nius" /></td></tr>
  74.  </table>
  75. </form>
oraz
  1. <?php
  2. function konwertuj($s)
  3.  {
  4. $s=strip_tags($s,'<b><i><u>');
  5. $s=stripslashes($s);
  6. $s=str_replace('"','&quot;',$s);
  7. return ($s);
  8.  }
  9. // bbcode
  10. function bbcode($str){
  11.  
  12. // usun zbedne
  13. $str = htmlspecialchars(trim($str));
  14.  
  15. // Odnośnik, otwieranie w nowym oknie
  16. $str = preg_replace("#(.*?)?(.*?)#si", "<A HREF="12" TARGET="_blank">12</A>", $str);
  17.  
  18. // Odnośnik, otwieranie w nowym oknie, definiowanie treści odnośnika
  19. $str = preg_replace("#(.*?)#si", "<A HREF="2" TARGET="_blank">3</A>", $str);
  20.  
  21. // Pogrubiony tekst
  22. $str = preg_replace("#(.*?)#si", "<b>1</b>", $str);
  23.  
  24. // Pochylony tekst
  25. $str = preg_replace("#(.*?)#si", "<i>1</i>", $str);
  26.  
  27. // Podkreślony tekst
  28. $str = preg_replace("#(.*?)#si", "<u>1</u>", $str);
  29.  
  30. // Pomniejszanie tekstu
  31. $str = preg_replace("#[sm](.*?)[/sm]#si", "<small>1</small>", $str);
  32.  
  33. // Powiększanie tekstu
  34. $str = preg_replace("#[big](.*?)[/big]#si", "<big>1</big>", $str);
  35.  
  36. // Akapit
  37. $str = preg_replace("/[p](.*?)[/p]/si", "<p>1</p>", $str);
  38.  
  39. // Akapit z wyrównaniem
  40. $str = preg_replace("#[p=(http://)?(.*?)](.*?)[/p]#si", "<p align="2">3</p>", $str);
  41. }
  42. ?>


i nic mi nie dodaje jako treść czemu?(IMG:http://forum.php.pl/style_emoticons/default/questionmark.gif)
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 9)
Daimos
post
Post #2





Grupa: Zarejestrowani
Postów: 1 319
Pomógł: 118
Dołączył: 26.11.2003
Skąd: Lublin

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


moze wydam sie wredny
ale...
BEZ PRZESADY
czytam polowe kodu, wklejonego nie potrzebnie do poruszonego problemu
drugiej polowy nie mam zamiaru czytac
Go to the top of the page
+Quote Post
MiFlo
post
Post #3





Grupa: Zarejestrowani
Postów: 92
Pomógł: 4
Dołączył: 12.09.2006
Skąd: 127.0.0.1

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


Max1992: Proponuje abyś opowiedział o co chodzi w skrypcie i dokładnie jaki występuje problem ba naprawdę czy chciało by ci się czytać to i domyślać o co tu chodzi ?
Go to the top of the page
+Quote Post
Max1992
post
Post #4





Grupa: Zarejestrowani
Postów: 66
Pomógł: 0
Dołączył: 4.05.2007

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


chodzi o to że bez function bbcode tresc jest dodawana do mysql bez żadnych problemów natomiast gdzy ją wstawie nic nie jest dodawane, tresc jest pusta czemu?(IMG:http://forum.php.pl/style_emoticons/default/questionmark.gif) ? 2 część to jest opis funkcji a pierwsza to kod
Go to the top of the page
+Quote Post
Daimos
post
Post #5





Grupa: Zarejestrowani
Postów: 1 319
Pomógł: 118
Dołączył: 26.11.2003
Skąd: Lublin

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


nie zwracasz zmiennej na koncu (IMG:http://forum.php.pl/style_emoticons/default/winksmiley.jpg) zrob tak (dodalem tylko ostatnia linijke)
  1. <?php
  2. function bbcode($str){
  3.  
  4. // usun zbedne
  5. $str = htmlspecialchars(trim($str));
  6.  
  7. // Odnośnik, otwieranie w nowym oknie
  8. $str = preg_replace("#(.*?)?(.*?)#si", "<A HREF="12" TARGET="_blank">12</A>", $str);
  9.  
  10. // Odnośnik, otwieranie w nowym oknie, definiowanie treści odnośnika
  11. $str = preg_replace("#(.*?)#si", "<A HREF="2" TARGET="_blank">3</A>", $str);
  12.  
  13. // Pogrubiony tekst
  14. $str = preg_replace("#(.*?)#si", "<b>1</b>", $str);
  15.  
  16. // Pochylony tekst
  17. $str = preg_replace("#(.*?)#si", "<i>1</i>", $str);
  18.  
  19. // Podkreślony tekst
  20. $str = preg_replace("#(.*?)#si", "<u>1</u>", $str);
  21.  
  22. // Pomniejszanie tekstu
  23. $str = preg_replace("#[sm](.*?)[/sm]#si", "<small>1</small>", $str);
  24.  
  25. // Powiększanie tekstu
  26. $str = preg_replace("#[big](.*?)[/big]#si", "<big>1</big>", $str);
  27.  
  28. // Akapit
  29. $str = preg_replace("/[p](.*?)[/p]/si", "<p>1</p>", $str);
  30.  
  31. // Akapit z wyrównaniem
  32. $str = preg_replace("#[p=(http://)?(.*?)](.*?)[/p]#si", "<p align="2">3</p>", $str);
  33. return $str;
  34. }
  35. ?>

a funkcje wywolaj tak:
  1. <?php
  2. $mysalsa = bbcode($_POST['tresc']);
  3. ?>


i pozniej jak wsadzasz tresc do bazy, to juz zamiast $_POST['tresc'] wsadz zmienna $mysalsa

ps. troche Ci sie forum pomylilo, bo to nie jest problem bazy (IMG:http://forum.php.pl/style_emoticons/default/winksmiley.jpg) / od tego jest opcja Raportuj ~Cienki1980

Ten post edytował Cienki1980 16.05.2007, 10:19:18
Go to the top of the page
+Quote Post
Max1992
post
Post #6





Grupa: Zarejestrowani
Postów: 66
Pomógł: 0
Dołączył: 4.05.2007

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


pojawai mi sięteraz błąd:

You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '2">3

big>]","jjjjjjjj","",1179326189,"1","0")' at line 1

Ten post edytował Max1992 16.05.2007, 15:37:43
Go to the top of the page
+Quote Post
MiFlo
post
Post #7





Grupa: Zarejestrowani
Postów: 92
Pomógł: 4
Dołączył: 12.09.2006
Skąd: 127.0.0.1

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


wyświetl sobie text ten co dodajesz do mysql i poszukaj znaczków ' (IMG:http://forum.php.pl/style_emoticons/default/smile.gif)
chyba się nie mylę i mozesz zaraz przed dodaniem textu do sqla użyj funkcji addslashes()" title="Zobacz w manualu PHP" target="_manual

Ten post edytował MiFlo 16.05.2007, 15:50:13
Go to the top of the page
+Quote Post
Max1992
post
Post #8





Grupa: Zarejestrowani
Postów: 66
Pomógł: 0
Dołączył: 4.05.2007

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


tyle że rekord nie jest dodawany
Edit:

Już wiem o co chodzi i muszę się pozbyć znaków "\" z tego kodu
  1. <?php
  2. mysql_query("INSERT INTO aktualnosci VALUES("$_POST[tytul]","$_POST[tresc]","$_POST[autor]","$_POST[zrodlo]",".time().","$waidgeneral","$waidciek")") or die(mysql_error());
  3. ?>


ale ciągle pojawia się błąd gdy pozmieniam "cos" na 'cos'

Błąd to

Kod
Column count doesn't match value count at row 1


Ten post edytował Max1992 16.05.2007, 16:17:51
Go to the top of the page
+Quote Post
MiFlo
post
Post #9





Grupa: Zarejestrowani
Postów: 92
Pomógł: 4
Dołączył: 12.09.2006
Skąd: 127.0.0.1

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


w poprzednim poście miałeś za dużo znaków ' teraz / narazie nie dodawaj rekordów do db tylko wyświetlaj zapytanie an ekranie i szukaj błędów (IMG:http://forum.php.pl/style_emoticons/default/tongue.gif)
Go to the top of the page
+Quote Post
Max1992
post
Post #10





Grupa: Zarejestrowani
Postów: 66
Pomógł: 0
Dołączył: 4.05.2007

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


już sobie poradziłem usunęłem bbcode i dodałem przy wyświetlaniu ostatnie pytanie bo już naprawdę nie kumam jaki tu jest błąd składni?(IMG:http://forum.php.pl/style_emoticons/default/questionmark.gif) ?

Kod
if (!ereg ("\[+.url.+\=+.^.+\]+.\$.", $_POST['tresc']))


nie dałem w php bo znaku \ nie wyświetla

aha pojawiający się błąd to

Kod
Parse error: syntax error, unexpected '=', expecting ',' or ';' in /.../functions.php on line 20


jak zrobić podkładanie np.
Kod
[url=http://cos.pl]jjjjj[url]
na link?(IMG:http://forum.php.pl/style_emoticons/default/questionmark.gif) ? gdzie cos.pl to adres a to w środku się wyświetla?(IMG:http://forum.php.pl/style_emoticons/default/questionmark.gif) ?

dobra temat można kończyć wszystko już poprawiłem
Go to the top of the page
+Quote Post

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: 24.08.2025 - 22:45