Резултати

m3

Registered
Използвам следния код за търсене който търси в db.inc
Код:
<?php 

$search=$HTTP_POST_VARS['search']; 


$search=str_replace(" ","",$search); 
if ($search=='') 
{exit;} 
$file= file("db.inc"); 
$n=count($file); 
echo '<a>


'; 

for ($i=0; $i<$n;$i++) 
{ 

$file1=$file[$i]; 
$file1=str_replace(" ","",$file1); 
$file1=str_replace("&","",$file1); 
$file1=str_replace("\n","",$file1); 

if (eregi($search,$file1)) 
{ 
$line = explode ("&",$file[$i] ); 
echo '
<tr> 
<td>'.$line[0].'</td><td>'.$line[1].'</td><td>'.$line[2].'</td><td>'.$line[3].'</td> 
<td>'.$line[4].'</td><td>'.$line[5].'</td> 
</tr>'; 

} 
} 

?>

Как да направя така че да ми показва колко резултата са намерени.
Пробвах най различни начини с тази част от кода след еcho но не успях да направя каквото искам.

Код:
if (eregi($search,$file1)) 
{ 
$line = explode ("&",$file[$i] ); 
echo '
 
Опа моя грешка
<?php

$search=$HTTP_POST_VARS['search'];


$search=str_replace(" ","",$search);
if ($search=='')
{exit;}
$file= file("db.inc");
$n=count($file);
echo '<a>


';

for ($i=0; $i<$n;$i++)
{
$broi = count($file[$i]);
echo "$broi";
$file1=$file[$i];
$file1=str_replace(" ","",$file1);
$file1=str_replace("&","",$file1);
$file1=str_replace("\n","",$file1);

if (eregi($search,$file1))
{
$line = explode ("&",$file[$i] );
echo '
<tr>
<td>'.$line[0].'</td><td>'.$line[1].'</td><td>'.$line[2].'</td><td>'.$line[3].'</td>
<td>'.$line[4].'</td><td>'.$line[5].'</td>
</tr>';

}
}

?>

виж дали така ще бачка
поздрави мизарк
 
Така над таблицата с резултатите една под друга излизат единици.
Eто така

Код:
Търсене
1
1
1
1
Резултати
 
Здравей!

Пак набързо (според кода, който си дал):

<?php

$search=$HTTP_POST_VARS['search'];


$search=str_replace(" ","",$search);
if ($search=='')
{exit;}
$file= file("db.inc");
$n=count($file);
echo '<a> ';

$flag=0; \\Нова променлива, първоначалната й стойност е 0

for ($i=0; $i<$n;$i++)
{

$file1=$file[$i];
$file1=str_replace(" ","",$file1);
$file1=str_replace("&","",$file1);
$file1=str_replace("\n","",$file1);

if (eregi($search,$file1))
{
$line = explode ("&",$file[$i] );
echo '
<tr>
<td>'.$line[0].'</td><td>'.$line[1].'</td><td>'.$line[2].'</td><td>'.$line[3].'</td>
<td>'.$line[4].'</td><td>'.$line[5].'</td>
</tr>';

$flag++; \\ако е вярно условието в иф-цикъла (намерени са резултати), увеличаваме стойността с 1
}
}
echo "Намерени резултати: $flag"; \\в края листваме. Ако не е намерено нищо, иф-цикъла не се е изпълнил, стойността на $флаг ще е 0
?>


$а++ е съкратен запис на $а+1

Изписването на броя ще е след резултатите. Ако го искаш "отгоре", ще трябва да се дублира иф-цикъла (или резултата от същинското търсене да попада в нов масив, който да се листва наново, което пък е глупост). Толкова от мен.

Дано съм ти помогнал!

Успех!
 

Back
Горе