Система за търсачка търсеща в database

winers

Registered
Здравейте видях този урок http://web-tourist.net/login/login/view.php?st=1024 но системата незнам къде търси..
Имам сайт за музика и файловете се качват от url адрес и се качват в ./songs.php и искам да направя търсачката да търси в този файл, някой може ли да помогне?
 
По-голяма тръгедия от това обяснение не бях срещал. :shock:
Не може файловете да се качват на .php файл :shock:
Може би ги качваш в папка или ги записваш в базата данни. Доколкото разбрах трябва да изкарваш песните от базата данни? И искаш ако е въведено нещо да се изведе песента.
PHP:
$duma = 'Андреа';
$query = mysql_query("SELECT * FROM `tablicata` WHERE `poleto_kudeto_shte_tursi` LIKE '%" . $duma . "%'");
while ($row = mysql_fetch_assoc($query))
{
echo $row['url'] . '<br />';
}
:idea:
 
Тоест исках да кажа, че песните се качват от URL адрес и се записват в songs.php и искам когато някой търси да излизат резултати от songs.php
 
winers каза:
Тоест исках да кажа, че песните се качват от URL адрес и се записват в songs.php и искам когато някой търси да излизат резултати от songs.php
Те не се качват в songs.php, а в базата данни! :)

Кажи как се казва тя и какви са полетата и по какви критерии искаш да се търси.
 
tedo96 каза:
winers каза:
Тоест исках да кажа, че песните се качват от URL адрес и се записват в songs.php и искам когато някой търси да излизат резултати от songs.php
Те не се качват в songs.php, а в базата данни! :)

Кажи как се казва тя и какви са полетата и по какви критерии искаш да се търси.

id int(12) No auto_increment
add_by varchar(255) utf8_unicode_ci No
song varchar(30) utf8_unicode_ci No
url text utf8_unicode_ci No
janr varchar(255) utf8_unicode_ci No
message text utf8_unicode_ci No
visited varchar(255) utf8_unicode_ci No 1
accept varchar(11) utf8_unicode_ci No no
date

Това са полетата, а искам да се търси по име.
 
tedo96 каза:
winers каза:
Тоест исках да кажа, че песните се качват от URL адрес и се записват в songs.php и искам когато някой търси да излизат резултати от songs.php
Те не се качват в songs.php, а в базата данни! :)

Кажи как се казва тя и какви са полетата и по какви критерии искаш да се търси.

Песните не се качват в базата данни, а в някоя папка. Само информацията за тях се записва в базата данни. :D
 
Ехх Банков, Банков.....

Колегата горе ти го е направил както трябва.

PHP:
$duma = $_POST['duma'];
$query = mysql_query("SELECT * FROM `tablicata` WHERE `song` LIKE '%" . $duma . "%'");
while ($row = mysql_fetch_assoc($query))
{
echo $row['url'] . '<br />';
}
 
Търсачката:
Код:
<form action="" method="get">
<input type="text" name="duma" class="searchform" size='30'/>
<input type="submit" name="submit" value="Търси" id="submit" /></form>
<?php
include "includes/conf.php"; 
if(isset($_GET['submit']))
{
$duma = htmlspecialchars($_GET['duma']);
if($duma == NULL)
{
echo "Не сте въвели нищо.";
}else{
if(strlen($duma) < 4)
{
echo "Търсачката възприема думи с над 4 символа.";
}else{
$sql = mysql_query("SELECT song FROM tablicata WHERE song LIKE '%$duma%' ORDER by id DESC") or die (mysql_error());
while($row = mysql_fetch_assoc($sql))
{

echo "$row[song]"; 

}
}
}
}
echo "</table>";
?>
Там където пише „tablicata” напиши името на таблицата в която се записват песните.
Конфиг файла:
Код:
<?php
$dbhost="localhost";
$dbusername="Потребителско име";
$dbpassword="ПАРОЛА";
$dbname="БАЗА ДАННИ";
$connect = mysql_connect($dbhost, $dbusername, $dbpassword);
$db = mysql_select_db($dbname,$connect) or die ("Не мога да избера БД");

?>
 
Да това стана, а може ли да се направи като излезе резултат да може да се цъка на него и да ги препраща към songs.php?id=2 примерно?
 
PHP:
<form action="" method="get">
<input type="text" name="duma" class="searchform" size='30'/>
<input type="submit" name="submit" value="Търси" id="submit" /></form>
<?php
include "includes/conf.php";
if(isset($_GET['submit']))
{
$duma = htmlspecialchars($_GET['duma']);
if($duma == NULL)
{
echo "Не сте въвели нищо.";
}else{
if(strlen($duma) < 4)
{
echo "Търсачката възприема думи с над 4 символа.";
}else{
$sql = mysql_query("SELECT song FROM tablicata WHERE song LIKE '%$duma%' ORDER by id DESC") or die (mysql_error());
while($row = mysql_fetch_assoc($sql))
{

echo '<a href="songs.php?id='.$row['id'].'">'.$row[song].'</a>';

}
}
}
}
echo "</table>";
?>
 
Да и аз така пробвах, но нестава когато посоча песента става така http://site.com/song.php?id=
 
Код:
<form action="" method="get">
<input type="text" name="duma" class="searchform" size='30'/>
<input type="submit" name="submit" value="Търси" id="submit" /></form>
<?php
include "includes/conf.php";
if(isset($_GET['submit']))
{
$duma = htmlspecialchars($_GET['duma']);
if($duma == NULL)
{
echo "Не сте въвели нищо.";
}else{
if(strlen($duma) < 4)
{
echo "Търсачката възприема думи с над 4 символа.";
}else{
$sql = mysql_query("SELECT id, song FROM tablicata WHERE song LIKE '%$duma%' ORDER by id DESC") or die (mysql_error());
while($row = mysql_fetch_assoc($sql))
{

echo '<a href="songs.php?id='.$row['id'].'">'.$row[song].'</a>';

}
}
}
}
echo "</table>";
?>
 
PHP:
<form action="" method="get">
<input type="text" name="duma" class="searchform" size='30'/>
<input type="submit" name="submit" value="Търси" id="submit" /></form>
<?php
include "includes/conf.php";
if(isset($_GET['submit']))
{
$duma = htmlspecialchars($_GET['duma']);
if($duma == NULL)
{
echo "Не сте въвели нищо.";
}else{
if(strlen($duma) < 4)
{
echo "Търсачката възприема думи с над 4 символа.";
}else{
$sql = mysql_query("SELECT * FROM tablicata WHERE song LIKE '%$duma%' ORDER by id DESC") or die (mysql_error());
while($row = mysql_fetch_assoc($sql))
{

echo '<a href="songs.php?id='.$row['id'].'">'.$row[song].'</a>';

}
}
}
}
echo "</table>";
?>
 
winers каза:
Пак така..
Пробвах и по този начин
echo '<a href="song.php?id=' . $row['id'] . '">' . $row['song'] . '</a>';
Ама пак същото не изкарва id-то
Код:
<form action="" method="get">
<input type="text" name="duma" class="searchform" size='30'/>
<input type="submit" name="submit" value="Търси" id="submit" /></form>
<?php
include "includes/conf.php";
if(isset($_GET['submit']))
{
$duma = htmlspecialchars($_GET['duma']);
if($duma == NULL)
{
echo "Не сте въвели нищо.";
}else{
if(strlen($duma) < 4)
{
echo "Търсачката възприема думи с над 4 символа.";
}else{
$sql = mysql_query("SELECT * FROM tablicata WHERE song LIKE '%$duma%' ORDER by id DESC") or die (mysql_error());
while($row = mysql_fetch_assoc($sql))
{
еcho "<a href='songs.php?id=$row[id]'>$row[song]</a>";
}
}
}
}
echo "</table>";
?>
 
tedo96 каза:
С моя код няма как да не ти работи! :)

Нестава... изписва само song.php?id= без номера на id-то.. Ти си ми го дал songs.php.... ама линка е song.php прейменувам го и пак нестава

topchokt - Нестава дава грешка в кода...
 
winers каза:
tedo96 каза:
С моя код няма как да не ти работи! :)

Нестава... изписва само song.php?id= без номера на id-то.. Ти си ми го дал songs.php.... ама линка е song.php прейменувам го и пак нестава

topchokt - Нестава дава грешка в кода...
Каква грешка ти дава?
Аз използвам този код и проблем нямам.

Код:
<?php
include "includes/conf.php"; 
if(isset($_GET['submit']))
{
$duma = htmlspecialchars($_GET['duma']);
if($duma == NULL)
{
echo "Не сте въвели нищо.";
}else{
if(strlen($duma) < 4)
{
echo "Търсачката възприема думи с над 4 символа.";
}else{
$sql = mysql_query("SELECT id,song FROM tablica WHERE song LIKE '%$duma%'  ORDER by id DESC") or die (mysql_error());
while($row = mysql_fetch_assoc($sql))
{
echo "<table width='450' border='1' class='reklama'>";
echo " <tr style='background-color: rgb(255, 206, 183); border : 1px solid #383838;  color : #ffffff; padding-left : 1px;'> </tr>";
echo " <hr>";
echo "<a href='song.php?id=$row[id]' target='_blank'>$row[song]</a>"; 
echo " <hr>";
}
}
}
}
echo "</table>";
?>
 
winers каза:
Ми когато цъкна ме препраща в http://#.com/song.php?id=
Код:
<?php
include "includes/conf.php";
if(isset($_GET['submit']))
{
$duma = htmlspecialchars($_GET['duma']);
if($duma == NULL)
{
echo "Не сте въвели нищо.";
}else{
if(strlen($duma) < 4)
{
echo "Търсачката възприема думи с над 4 символа.";
}else{
$sql = mysql_query("SELECT id,song FROM tablica WHERE song LIKE '%$duma%'  ORDER by id DESC") or die (mysql_error());
while($row = mysql_fetch_array($sql))
{
echo "<table width='450' border='1' class='reklama'>";
echo " <tr style='background-color: rgb(255, 206, 183); border : 1px solid #383838;  color : #ffffff; padding-left : 1px;'> </tr>";
echo " <hr>";
echo "<a href='song.php?id=$row[id]' target='_blank'>$row[song]</a>";
echo " <hr>";
}
}
}
}
echo "</table>";
?>
 

Back
Горе