Система за новини

chaser

Registered
Този код къде да го добавя че да извежда точно определен брой силволи и като се натисне линк да се показва цялото съдържание
PHP:
$string1 = stripslashes(nl2br($text));
if(strlen($string1) > 550) {
$i = 549;
while($string1[$i] != "") {
$i += 1; }
$ftext = substr($string1, 0, $i)."...";
} else {
$text = $string1;
}
Тук се извеждат новините
PHP:
<?php
session_start();
include "config.php";
$username = $_SESSION['username'];
?>
<meta http-equiv rel="Content-Type" content="text/html" charset="windows-1251">
<style>

</style>
<?php
$string1 = stripslashes(nl2br($text));
if(strlen($string1) > 50) {
$i = 54;
while($string1[$i] != "") {
$i += 1; }
$ftext = substr($string1, 0, $i)."...";
} else {
$text = $string1;
}
$result = mysql_query("SELECT * FROM novina ORDER BY id DESC") or die (mysql_error());
if (mysql_num_rows($result) > 0)
{                
echo "<table class='border'align='center' cellpadding='1' cellspacing='1' >";
while($data = mysql_fetch_assoc($result)) {
echo "
 <tr>
  <td class='a' align='left'>
    <table>
     <tr>
      <td align='center' width='71%' class='b'>
       <b> <font size='5px'>$data[title]</font>
       </b>
      </td>
     </tr>
	 <tr>
	 <td><b>Написана от: $data[avtor]</b>
	 </td>
	 </tr>
    </table>
  </td>
 </tr>
 <tr>
  <td>
   <table>
    <tr>
	 <td>
	  <img src='$data[kartinka]' alt='img'>
	 </td>
	 <td class='b'>
	  <b></b> 
	   <br />
	   <br />
	   <i></i>
	 </td>
	</tr>
   </table>
     $data[text]
  </td>
 </tr>
 <tr>
  <td align='right'>
  <a href='adminpanels/news/cqlataNews.php'>Прочети още</a>
  </td>
 </tr>
 <tr>
  <td class='a' height='6' width='100%'>
  </td>
 </tr>";
}
echo "</table>";
?>
<?php
}
else
{
	echo "<table class='border'align='center' cellpadding='1' cellspacing='1' >
 <tr>
  <td class='a' align='left'>
    <table>
     <tr>
      <td align='center' width='71%' class='b'>
       <b> <font size='5px'></font>
       </b>
      </td>
     </tr>
	 <tr>
	 <td><b></b>
	 </td>
	 </tr>
    </table>
  </td>
 </tr>
 <tr>
  <td>
   <table align='center'>
    <tr>
	 <td >
	  <b><font color='#000000'>Все още няма новини!</font></b>
	 </td>
	 <td class='b'>
	  <b></b> 
	   <br />
	   <br />
	   <i></i>
	 </td>
	</tr>
   </table>
    
  </td>
 </tr>

 <tr>
  <td class='a' height='6' width='100%'>
  </td>
 </tr>
</table>";
}
?>
А тук се добавят
PHP:
<?php
session_start();
include "config.php";
include "../blocks/menuadmin.php";
$my_ime = $_SESSION['username'];
?>
<meta http-equiv rel="Content-Type" content="text/html" charset="windows-1251">
<div align="center" style="margin-top:50px;" >
<table class="mess" cellspacing="2" cellpadding="5">
<form method="post">
<tr>
<td class="mess1" align="center" colspan="2">Добави Новина</td>
</tr>
<tr>
<td class="mess1" align="left"><p class="margin">Заглавие:</p></td>
<td class="mess2" align="left"><input id="news" type="text" name="title"/></td>
</tr>
<tr>
<td class="mess1" align="left">Картинка:</td>
<td class="mess2"><input id="news" type="text" name="kartinka"></td>
</tr>
<tr>
<td class="mess2 align="left">Поястение:</td>
<td class="mess2"><textarea rows="5" cols="45" name="poqsnenie"></textarea></td>
</tr>
<tr>
<td class="mess2 align="left">Текст:</td>
<td class="mess2"><textarea rows="10" cols="45" name="text"></textarea></td>
</tr>
<tr>
<td  align="left"></td>
<td><input id="news"  style="border:none; background:none; color:#000;" type="submit" name="submit" value="Изпрати"/></td>
</tr>
</form>
</table>
</div>
<?php
if ($_POST['submit']) {
$title = htmlspecialchars($_POST['title']);
$kartinka = htmlspecialchars($_POST['kartinka']);
$poqsnenie = htmlspecialchars($_POST['poqsnenie']);
$text = htmlspecialchars($_POST['text']);
$avtor = $_SESSION['username'];
if(empty($title) || empty($kartinka) || empty($poqsnenie) || (empty($text))) {
    echo "<div style=' position: absolute; top:550px; right:265px;'>Моля попълнете всички полета!</div>";
}
else
{
$send = mysql_query("INSERT INTO novina (title,kartinka,poqsnenie,text,avtor) VALUES ('$title','$kartinka','$poqsnenie','$text','$avtor')");
echo "<div style=' position: absolute; top:550px; right:275px;'>Новината беше добавена... ";

}}
?>

<style type="text/css">
.mess
{
  
  width:25%;
}
.mess1
{
  border-bottom:1px solid #ccc;
  width:25%;
}
.mess2
{
  

  border-bottom:1px solid #ccc;
  width:25%;
}
</style>

<style>
       Table.border {
  width: 620px;
  margin-top: 180px;
  color: #00395B;
  background: #F5F9FD;
  border-style: solid;
  border: solid 1px;
  border-color:  #6699CC;
}
Table.fon {
  width: 100%;
  background: #E0EBF3;
  border: 1px solid #99BCD7;
}
Table.b {
  width: 100%;
  background: #C6D9EC;
  border: 1px solid #99BCD7;
  
}
Table.c {
  width: 100%;
  border: 1px solid #D1E1ED;
  
}
Table.d {
  border: 1px solid #6699CC;
  color: #00395B;
  background: #F5F9FD;
  
}
Table.e {
  color: #00395B;
  
}
Td.a {
  background: #C6D9EC;
}

Td.b {
  font-family: verdana, tahoma, helvetica;
  font-size: 11px;
  color: #005080;
}

Td.c {
  background: #000000;
  font: normal 11px Verdana, Arial, Helvetica, sans-serif;
}

A:link {
  background: none;
  color: #6699CC;
  text-decoration: none;
}
A:active {
  background: none;
  color: #6699CC;
  text-decoration: none;
}
A:visited {
  background: none;
  color: #6699CC;
  text-decoration: none;
}
A:hover	{
  background: none;
  color: #005080;
  text-decoration: underline;
}
Textarea {
  border-color: #B3CDE1;
  color: #2B4157;
  font: normal 11px Verdana, Arial, Helvetica, sans-serif;
  border-width: 1px 1px 1px 1px;
  border: 1px solid #94BAD6;
  background-color: #EDF3F8;
  }
Input.title {
  border-color: #D1E1ED;
  color: #2B4157;
  font: normal 11px Verdana, Arial, Helvetica, sans-serif;
  border-width: 1px 1px 1px 1px;
  border: 1px solid #94BAD6;
  background-color: #EDF3F8;
  }
Input.button {
  border-color: #94BAD6;
  background: #D1E1ED;
  font: 10px Verdana, Arial, Helvetica, sans-serif;
  border-width: 1px 1px 1px 1px;
}
   </style>
   <style>
.mess1
{
  
  width:50%;
}
</style>
 
Предполагайки че имаш уникално id на новините в поле id, аз бих направил нещо такова:

PHP:
<?php
session_start();
include "config.php";
$username = $_SESSION['username'];
?>
<meta http-equiv rel="Content-Type" content="text/html" charset="windows-1251">
<style>

</style>
<?php
$result = mysql_query("SELECT * FROM novina ORDER BY id DESC") or die (mysql_error());
if (mysql_num_rows($result) > 0)
{                
echo "<table class='border'align='center' cellpadding='1' cellspacing='1' >";
while($data = mysql_fetch_assoc($result)) {
$limit = 50;
$ftext= '';
$string1 = stripslashes(nl2br($data['text'));
if(strlen($string1) > $limit) {
  $text = substr($string1, 0,$limit )."...";
  $ftext = substr($string1,$limit);
} else {
  $text = $string1;
}
echo $text;
if ($ftext!=='') {
echo '<a href="javascript:document.getElementById(\'continue_'.$data['id'].'\').style.display=\'\';">покажи цялата новина</a>';
echo '<div id="continue_' . $data['id'].'">'.$ftext.'</div>';
}
echo "
 <tr>
  <td class='a' align='left'>
    <table>
     <tr>
      <td align='center' width='71%' class='b'>
       <b> <font size='5px'>$data[title]</font>
       </b>
      </td>
     </tr>
         <tr>
         <td><b>Написана от: $data[avtor]</b>
         </td>
         </tr>
    </table>
  </td>
 </tr>
 <tr>
  <td>
   <table>
    <tr>
         <td>
          <img src='$data[kartinka]' alt='img'>
         </td>
         <td class='b'>
          <b></b> 
           <br />
           <br />
           <i></i>
         </td>
        </tr>
   </table>
";
echo
     $data[text]
  </td>
 </tr>
 <tr>
  <td align='right'>
  <a href='adminpanels/news/cqlataNews.php'>Прочети още</a>
  </td>
 </tr>
 <tr>
  <td class='a' height='6' width='100%'>
  </td>
 </tr>";
}
echo "</table>";
?>
<?php
}
else
{
        echo "<table class='border'align='center' cellpadding='1' cellspacing='1' >
 <tr>
  <td class='a' align='left'>
    <table>
     <tr>
      <td align='center' width='71%' class='b'>
       <b> <font size='5px'></font>
       </b>
      </td>
     </tr>
         <tr>
         <td><b></b>
         </td>
         </tr>
    </table>
  </td>
 </tr>
 <tr>
  <td>
   <table align='center'>
    <tr>
         <td >
          <b><font color='#000000'>Все още няма новини!</font></b>
         </td>
         <td class='b'>
          <b></b> 
           <br />
           <br />
           <i></i>
         </td>
        </tr>
   </table>
    
  </td>
 </tr>

 <tr>
  <td class='a' height='6' width='100%'>
  </td>
 </tr>
</table>";
}
?>
 
Код:
if (mysql_num_rows($result) > 0)
например

if($result) дори ще го обработи правилно, if($neshto) го търси като boolean, така че 0 ще върне false, нема нужда от излишни неща. :)

Код:
$sql = "SELECT * FROM news";
$result = $db->sql_query($sql);
$row = $db->sql_fetchrow($result);

if($row)
{
    // това е
}

$a = array();

if(!sizeof($a))
{
    // празен масив през !! (bool) връща false
}

В случая и 2те са масиви.

Също за
Код:
$ftext!==''

ползвай
Код:
if(strlen($ftext))

Ако нема дължина - !! връща 0. => false

И не пишете $data[title], винаги си ги ескейпвайте {$data['title']}

Нали тва ви го казвам като съвети на всички, да схванете логиката на работата и да пишете по-правилен код. :)
 

Back
Горе