Hoi, ik ben nieuw met php, wel kan ik html en css.
Ik ben sinds kort bezig met een website waarin ik een php/mysql search engine wil hebben. Ik wil dat elke resultaat, die de gebruiKker gevonden heeft, een eigen pagina heeft. (die zelf gegenereerd word, waarin informatie erover staat die uit de database gehaald word)

Ik heb al een index.php en een search.php
Kunt iemand mij misschien helpen.
Hier is wat meer informatie voor nodig.
Wat is je huidige code?
Waarin wil je zoeken?
Index.php
<form action='search.php' method='GET'>


<div class="zoek">
<p><font size="5" face="sans-serif"><div class="zoek">
<input type='text' size='20' name='search'> <input type='submit' name='submit' value='Search'></font></p>

</div>


</form>



Search.php
<?php


//get data
$button = $_GET['submit'];
$search = $_GET['search'];


$s = $_GET['s'];
if (!$s)
$s = 0;


$e = 8; // Just change to how many results you want per page


$next = $s + $e;
$prev = $s - $e;




if (strlen($search)<=2)
echo "Must be greater then 3 chars";
else
{
echo "";

//connect to database
mysql_connect("localhost","laatiknietzien","laatiknietzien");
mysql_select_db("laatiknietzien");

//explode out search term
$search_exploded = explode(" ",$search);

foreach($search_exploded as $search_each)
{

//construct query
$x++;
if ($x==1)
$construct .= "keywords LIKE '%$search_each%'";
else
$construct .= " OR keywords LIKE '%$search_each%'";

}

//echo outconstruct
$constructx = "SELECT * FROM searchengine WHERE $construct";

$construct = "SELECT * FROM searchengine WHERE $construct LIMIT $s,$e";
$run = mysql_query($constructx);

$foundnum = mysql_num_rows($run);


$run_two = mysql_query("$construct");

if ($foundnum==0)
echo "No results found for <b>$search</b>";
else
{
echo "";

while ($runrows = mysql_fetch_assoc($run_two))
{
//get data
$title = $runrows['title'];
$url = $runrows['url'];

echo "<table width='300px'>
<h4><a href='$url'><b>$title</b></a><br />

<font color='757575'>$url</font></table></h4>
";
}
?>

<table width='100%'>
<tr>
<td>
<div align="center">

<?php
if (!$s<=0)
echo "<a href='search.php?search=$search&s=$prev'>Prev</a>";

$i =1;
for ($x=0;$x<$foundnum;$x=$x+$e)
{


echo " <a href='search.php?search=$search&s=$x'>$i</a> ";


$i++;


}

if ($s<$foundnum-$e)
echo "<a href='search.php?search=$search&s=$next'>Next</a>";

}
}


?>


Ik hoop dat je hier iets aan hebt
En wat werkt er nu niet?
Nou, ik wil nog een pagina. En daarop staat een code waarmee de informatie van een bepaalde film word weergegeven. (die vanuit mijn DB gelaad word)
wat staat er allemaal in je database dat is wel handig
waarschijnlijk dingen zoals:
-titel
-jaar
-afbeelding

het is denk ik het makkelijkst dat als je erop klikt dat je naar een pagina gaat en dan dmv een url variabelen waarin het id van de video uit je database en dan alle data eruit halen.

EDIT:
even voorbeeld code

<?php
###################
## Film.php #######
## door Rick6213 ##
###################

$id = ($_GET['id']);

?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Film</title>
		
</head>

<body>

    <?php
// Config.php

$host = "localhost"; // Je host
$user = "root"; // Je MySQL gebruikersnaam
$pass = "wachtwoord"; // Je MySQL wachtwoord
$datb = "films"; // Je MySQL database

// Verbinding maken
mysql_connect($host, $user, $pass) or die ("Er is een fout bij het connectie maken met de DataBase");
mysql_select_db($datb) or die ("Er is een fout bij het selecteren van de DataBase");



// Alles uit db halen laatste bericht als eerste.
$sql = mysql_query("SELECT
                        *,
                       
                    FROM
                       films
					WHERE id IN (".$id.")
                    
                    DESC
                    ");

// Als de query is gelukt
if($sql)
{
    // Als er items zijn
    if(mysql_num_rows($sql) > 0)
    {
        // Items neerzetten
        while($rec = mysql_fetch_assoc($sql))
        {
         // Alles echoën
            echo 'Titel: '.$rec['Titel']; //Titel
            echo '<br>Jaar: '.$rec['jaar']; //Jaartal
         	echo '<br>beschrijving:'.$rec['beschrijving']; //beschrijving
		
          	
        }
    }
    // Anders
    else
    {
        // film niet bestaat
        echo 'Error 404, de door jouw gevraagde pagina bestaat niet';
    }    
}
// Anders
else
{
    // MySql error
    echo 'Er is een fout opgetreden in de query: <br />';
    echo mysql_error();
}
?>
 

</body>
</html>

ik ga hierbij uit dat je tabel in de database zo uit ziet:

id, Titel, Jaar, Beschrijving
-----------------------------
1, New Kids turbo, 2010, Een film over jongeren uit maaskantje
2, nog een film, het jaartal, beschrijving ervan
-----------------------------


De pagina roep je simpel aan als:
film.php?id=1

hierbij is 1 dan het video id dus is het id van je video 8 dan is het:
film.php?id=8

ik zou er nog wel even een functie in maken dat als er geen id is dat je dan een error pagina krijgt ipv een heleboel mysql errors

Succes
De tabellen in mijn DB zijn zo: ID, Titel, Beschrijving, Tags en link
De link moet volgens mij naar de film.php

Bedankt voor verdere hulp, Ik kijk even verder en als er iets niet goed is laat ik het horen.
wijzig ze dan!
Ik heb nog de probleem hoe ik eigenlijk naar film.php moet linken.
(dat er staat: film.php?id=1)

Alvast bedankt
Bij $url moet je hem aanpassen
ik heb nu geen zin om je hele script door te spitten testen en aanpassen
ik heb die code ook uit verveling geschreven vraag anders iemand het te doen voor geld
dat is een stuk makkelijker

EDIT:
volgens mij moet je:

<?
 //get data
   $title = $runrows['title'];
   $url = $runrows['url'];
   
   echo "<table width='300px'>
   <h4><a href='$url'><b>$title</b></a><br />
   
   <font color='757575'>$url</font></table></h4>
   ";
?>


aanpassen naar

<?
 //get data
   $title = $runrows['title'];
 //$url = $runrows['url'];
   $filmid = $runrows['id']; //om het id ervan te verkrijgen
   
   echo "<table width='300px'>
   <h4><a href='film.php?id=".$filmid."'><b>$title</b></a><br /> //$url is vervangen door film.php?id=$filmid
   
   <font color='757575'>$url</font></table></h4>
   ";
?>


Probeer dit eens en als je error krijgt post dan de aangepaste code

Reageren