Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP][MYSQL]BBCode "zgrane" z MySQL
Forum PHP.pl > Forum > Przedszkole
Gabrielx
Korzystam z tej oto klasy.

Mam oto taki plik który wyświetla rekordy z bazy danych.

Kod
<?php

if (!isset($_REQUEST['strona'])&&!isset($_REQUEST['artykul']))
{
  header('Location: indeks.php');
  exit;
}

$strona = $_REQUEST['strona'];
$artykul = intval($_REQUEST['artykul']);

include_once('funkcje_bazy.php');
include_once('naglowek.php');



$lacz = lacz_bd();

if ($artykul)
{
  $sql = "select * from artykuly
          where id = '$artykul' and
                opublikowany is not null";
}
else
{
  $sql = "select * from artykuly
          where strona = '$strona'
          and opublikowany is not null
          order by opublikowany desc";
}
$wynik = $lacz->query($sql);

while ($artykul = $wynik->fetch_assoc())
{
  // nagłówek
  
    echo "<h2>{$artykul['naglowek']}</h2>";
  // obrazek
  if ($artykul['obrazek'])
  {
    echo '<div style="float:right; margin:0px 0px 6px 6px;">';
    echo '<img src="zmien_wielkosc_obrazka.php?obrazek=';
    echo urlencode($artykul['obrazek']);
    echo '&max_szerokosc=200&max_wysokosc=120" align=right/></div>';
  }
  // podpis
  echo '<p style="font-family: Verdana;">'; echo $artykul['tekst_artykulu']; echo '</p>';
  $a = pobierz_rekord_autora($artykul['autor']); //wyświetlanie rekordu
  echo '<br /><p>';
  echo 'Autor: '.$a['pelne_nazwisko'].', ';
  
  echo 'Rekord dodano w: ';
   echo date('M d, H:i', $artykul['zmodyfikowany']);    
  $data = date_();    
  echo '</p>';
  // tre¶ć
  
}

include('stopka.php');
?>


Plik który wyświetla BBCode.
Kod
    <h2>Wprowadź wiadomość i kliknij "testuj"</h2>
    <form action="" method="post">
        <textarea style="display: block" rows="10" cols="80" name="bbcode"></textarea>
        <input type="submit" value="testuj">
    </form>
    
    <?php
    require_once 'BBCodeException.php';
    require_once 'BBCodeStruct.php';
    require_once 'BBCode.php';
    
    header('Content-Type: text/html; charset=UTF-8');
    
    try {
        
        echo "<h2>Podgląd wiadomości:</h2>";
        echo BBCode::Setup('./bbcode.xml')
            ->    copy(isset($_POST['bbcode']) ? $_POST['bbcode'] : file_get_contents('./bbcode.txt'))
            ->    parse()
            ->  getHtml()
           ;
            
    } catch (BBCodeException $e) {
        echo "Wprowadzony tekst jest niepoprawny: <p style=\"color: red\">{$e -> getMessage()}</p>";
    }
    ?>


Chciałbym aby wyświetlany rekord z bazy danych był przetworzony na wynik BBCode. Jak to zrobić?
wookieb
Jako argument tej metody podać tekst z bazy.
  1. <?php
  2. copy(isset($_POST['bbcode']) ? $_POST['bbcode'] : file_get_contents('./bbcode.txt'))
  3. ?>
Gabrielx
Tak?
Kod
<?php
echo $artykul['tekst_artykulu']
?>
wookieb
nie. Tak jak sie podaje argument funkcji.
Gabrielx
Jeśli możesz to oświeć mnie.

Wiem że argumenty są używane przez funkcję na wejściu, aby zwrócić określone wyniki... Argument funkcji znajduję się między nawiasami.(?)
wookieb
Widzisz. Wiesz. Wiec jaki problem wstawic to co dales (oprocz echo) w miejsce argumentu funkcji?
Gabrielx
<?php
copy($artykul['tekst_artykulu'])
?>

Dzięki wielkie biggrin.gif

Jak ustawić aby rekord wyświetlany był odpowiednią czcionką?
Tak było przedtem:
echo '<p style="font-family: Verdana;">'; echo $artykul['tekst_artykulu']; echo '</p>';
Edit:Poradziłem sobie z tym.

Mam problem z wklejaną treścią oraz z nową linią.
Kiedy wkleję np. taką treść praser nie wyświetli niczego. Jeśli wyświetlam starą metodą to jest wszystko ok.
Poza tym przy wyświetlaniu tekst nie wyświetla nowej linii-wszystko jest złączone.

Edit2:
Doszedłem mniej więcej dlaczego nie wyświetla(rekordu poprzez praser). Jest to wina polskich liter. Kiedy ich nie używam jest wszystko ok.(opróćz nowej linii :/) Jak to zmienić?
¶æ¶æ¶æ¶æ¶æ¶ - praser nie rozumie tych znaków dlatego nie może wyswietlić(śćśćśćśćśćś)

Ma ktoś jakąś poradę? Może ustawić jakoś kodowanie SQL?
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.