Ik wil een databasezoekscript:
voorbeeld:
<?php
blabla
<form id="Zoeken" name="Zoeken" method="post" action="zoekendatabase?zoek">
<label for="Zoeken">Zoeken</label>
<input type="text" name="Zoeken" id="Zoeken" />
</form>
blabla
<hr />
show=&result
?>

Weet dit is een gamel voorbeeld maar hoop dat jullie misschien weten waar ik een databasezoekscript.
- Full Text Search?
- Like search?

Kortom geeef eens wat meer informatie als je wilt?
Het zoeken in een database is eigenlijk niet meer dan het opstellen van de juiste query die je door de database wilt laten uitvoeren. Daar zul je dus moeten beginnen en dan komt het formulier dat je wilt gebruiken later wel...
Zo goed?


  <?php
  $sql = '  SELECT * FROM `members` LIKE `$trefwoord");
';
  ?>


<!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>Untitled Document</title>
</head>

<body>
<form id="form1" name="form1" method="post" action="">
  <label for="Zoeken">Zoeken</label>:
  <input name="Zoeken" type="text" id="Zoeken" value="<?php echo $trefwoord; ?>" size="28" />
  <input type="submit" name="Verzend" id="Verzend" value="Verzend" />
  <?php
  $sql = '  SELECT * FROM `members` LIKE `$trefwoord");
';
  ?>
</form>
</body>
</html>


@thee boris

Backticks horen niet in een select
en variabelen buiten de quotes halen
Ik raad aan om een while() loop te gebruiken, en een mysql_fetch_assoc().

denk al iets gevonden te hebben :) straks na school neem ik de tijd!
Ben benieuwd, houd ons op de hoogte ;-)

Lijkt me dat je gewoon bovengenoemde nog nodig hebt.
De zoek functie en gebruikersnaam ipadres werkt niet :(
resultaat.php:
[code]
<?
//-- natuurlijk moet er eerst een connectie met de database worden gemaakt:
if (!@mysql_select_db("databasenaam", @mysql_connect("localhost", "database-user", "database-pass")))
{
echo "Er kan geen database connectie gemaakt worden.";
exit();
{
echo "Er kan geen database connectie gemaakt worden.";
exit();
}

//-- $HTTP_POST_VARS[zoekterm] is de naam van het zoekveld in het formulier wat we
//-- hebben gemaakt in het vorige 'hoofdstuk'. Dit is dus de SQL code:
$sql = "SELECT gebruikersnaam FROM members WHERE gebruikersnaam LIKE '%$HTTP_POST_VARS[zoekterm]%'";

$sql2 = "SELECT ipadres FROM members WHERE ipadres LIKE '%$HTTP_POST_VARS[zoekterm]%'";
//-- voer de SQL code uit en zet dit in een variabele zodat we zometeen kunnen
//-- kijken of er een resultaat is
$res = mysql_query($sql);

//-- bekijk nu of er een resultaat is, of het zoekwoord dus gevonden is of niet
if (mysql_num_rows($res) >= 1)
{
//-- er is een resultaat gevonden, toon de resultaten via een while () loop
while ($row = mysql_fetch_array($res))
{
echo "<p>Resultaat gebruikersnaam: <b>$row[gebruikersnaam]</b><br>";
echo "Resultaat gebruikersnaam: <b>$row[$sql2]</b></p>";
}

echo "<a href=\"zoek.php\" title=\"zoek opnieuw\">zoek opnieuw</a>";
}
//-- als er geen resultaat is gevonden, dus als het zoekwoord niet gevonden is:
else
{
echo "<p>Er is niets gevonden op jou zoekterm:<b> $HTTP_POST_VARS[zoekterm]</b></p>";

echo "<p><a href=\"zoek.php\" title=\"zoek opnieuw\">zoek opnieuw</a></p>";
}
?>
[code/]
Zoek.php:
[code]
<?
echo "<HTML>\n
<HEAD><TITLE>Zoeken</TITLE></HEAD>
<BODY>

<p><b>Zoek in de database:</b></p>

<p>
<FORM METHOD=\"POST\" ACTION=\"resultaat.php\">
Zoekterm:<br>
<input type=\"text\" name=\"zoekterm\" size=\"30\"><br>
<input type=\"submit\" name=\"submit\" value=\"Zoeken\">
</p>

</BODY>
</HTML>";
?>

[code]

<?
echo "<HTML>\n
<HEAD><TITLE>Zoeken</TITLE></HEAD>
<BODY>

<p><b>Zoek in de database:</b></p>

<p>
<FORM METHOD=\"POST\" ACTION=\"resultaat.php\">
Zoekterm:<br>
<input type=\"text\" name=\"zoekterm\" size=\"30\"><br>
<input type=\"submit\" name=\"submit\" value=\"Zoeken\">
</p>

</BODY>
</HTML>";
?>
Thee boris op 25/01/2011 16:09:21

De zoek functie en gebruikersnaam ipadres werkt niet :(

Wat gebeurt er dan? Gaat de server roken, zie je een typisch Blauw Scherm in WIndows, wordt je internetverbinding spontaan verbroken?
Wat werkt er niet? Wees eens wat duidelijker a.u.b.?

Over je script....
Gooi maar weg:

- Foutafhandeling ontbreekt.
- $HTTP_POST_VARS[zoekterm] is verouderd. Zeer verouderd.
- Variabelen staan buiten quotes, dat hoort niet
- exit() wordt te onpas gebruikt
- SQL-injection is ook hier een feest. Ik heb je hier pas nog voor gewaarschuwd en het bewijs nog geleverd.
- Waarom gemixde upper en lowercase in je HTML?

Waarom ga je niet zelf wat in elkaar proberen te maken i.p.v. oude rotzooi op te vissen?

En wat is een databas?

Reageren