Проблем със n12br..(новите редове).

Anrth

Registered
Здравейте,

Имам проблем със изкарването на информацията от базата данни, което да минава през нови редове.

Това е кода, как да вмъкна n12br функцията обаче ми е интересно..;

$r [nowina]
 
Anrth каза:
DeathGuard_ каза:
echo nl2br($r[novina]);

Да, но сега ми вмъква на всеки ред <br>, а не го зачита..т.е си го пише в текста <br>, а в началото nl2br.. :x
стига с тези юмруци :D искаш да кажеш, просто ти излиза <br /> без да се изпълнява?
 
Добре..ето го целия код:

<?PHP
include ('conn_novini.php'); //�������� config �����
$our = mysql_query("SELECT ime , awtor, nowina, id FROM news ORDER BY id DESC LIMIT 5"); //�������� ��� ���� �� ������ �� ��
while($r=mysql_fetch_array($our)){
echo "<div id='news'>".$r['ime']."</div><div align='center' id='pus'>echo htmlspecialchars_decode( nl2br($r[nowina]));</div>

Отново дава грешка..
 
$our = mysql_query("SELECT id FROM news ORDER BY id DESC LIMIT 1");
while($r=mysql_fetch_array($our)){
$id=$r[id]+1;
echo$id;
}?>">
Автор: <input name="awtor" value="" /><br />
Име на новината: <br /><input type="text" name="ime"><br />
Новина: <br /><textarea rows="7" name="nowina" cols="40" type="text"></textarea><br />
<input name="news" type="submit" value="Добави!">
</form>
<?php
if ($_POST['news']) {
$ime = $_POST['ime'];
$nowina = $_POST['nowina'];
$awtor = $_POST['awtor'];
if((empty($awtor)) && (empty($ime)) && (empty($nowina))) {
//проверява дали всички полета са попълнени
echo "Не си попълнил някое от полетата.";
}else{

$checkime = mysql_query("SELECT ime FROM news WHERE ime='$ime'");
$checkname= mysql_num_rows($checkime);
if ($checkname>0) {
// опа..някой е добавил тази новина вече!
echo "Тази новина вече е била добавяна";
}else{
// никой не е добавят тази новина, продължаваме...
$awtor = htmlspecialchars($awtor);
$ime = htmlspecialchars($ime);
$nowina = htmlspecialchars($nowina);
$id = htmlspecialchars($id);
// превръщаме полетата да не са в html
//всичко е перфректно да добавяме
$query = mysql_query("INSERT INTO `news` (awtor, ime, nowina, id) VALUES('$awtor','$ime','$nowina','$id')");
// успешно добавихме новината
echo "Успешно добави новина!";


Да не би, това в червеното да е проблема?
 
$nowina = htmlspecialchars($nowina);
Пробвай тук да махнеш htmlspecialchars и погледни дали nl2br ще ти работи както трябва.
 
DeathGuard_ каза:
$nowina = htmlspecialchars($nowina);
Пробвай тук да махнеш htmlspecialchars и погледни дали nl2br ще ти работи както трябва.

То ще работи, обаче онзи код..Някъде имам грешка в синтаксиса, виж сам:

Parse error: syntax error, unexpected T_STRING, expecting ',' or ';' in index.php on line 141

Ето я и прослувутата линия:

echo "<div id='news'>".$r['ime']."</div><div align='center' id='news'>nl2br($r[nowina])</div>
 
Anrth каза:
DeathGuard_ каза:
$nowina = htmlspecialchars($nowina);
Пробвай тук да махнеш htmlspecialchars и погледни дали nl2br ще ти работи както трябва.

То ще работи, обаче онзи код..Някъде имам грешка в синтаксиса, виж сам:

Parse error: syntax error, unexpected T_STRING, expecting ',' or ';' in index.php on line 141

Ето я и прослувутата линия:

echo "<div id='news'>".$r['ime']."</div><div align='center' id='news'>nl2br($r[nowina])</div>


так:
Код:
echo "<div id='news'>".$r['ime']."</div><div align='center' id='news'>nl2br($r[nowina])</div>";
 
Аз ти препоръчвам да сложиш nl2br() на полето, което се записва в базата данни, също така и на променливата, която изкарва новината в сайтът ти и няма да имаш никакви проблеми ;). Разбира се трябва да махнеш и htmlspecialcars(), за да не приеме <br /> като част от текста и да го изпълни :). Успех ;).
 
Нищо не пипай по вкарването в бд.
Просто изкарай по този начин.
Код:
echo "<div id='news'>".$r['ime']."</div><div align='center' id='news'>" . nl2br($r['nowina']) . "</div>";
 

Back
Горе