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.
ik heb al iets:
[code]
<?php
// De variabelen die je naar eigen belangen moet invullen
$db_user = '1'; // Gebruiker voor MySQL
$db_pass = '2'; // Wachtwoord voor MySQL
$db_host = '3'; // Host voor MySQL; standaard localhost
$db_db = '4'; // Database
$tabel = '5'; // De tabel waarin gezocht moet worden
$eerste = 'gebruikersnaam'; // De 1e rij in je tabel waain hij moet zoeken
$tweede = 'ipadres'; // De 2e rij in je tabel waain hij moet zoeken

// Met onze database connecten
mysql_connect($db_host,$db_user,$db_pass) or die(mysql_error());
mysql_select_db($db_db) or trigger_error(mysql_error());

// Onze functie voor het afkorten. Later meer.
function afkorten($var, $lengte) {
if (strlen($var) > $lengte) {
$var = substr($var, 0, $lengte-3)."...";
}
return $var;
}

// Als er een id is in de url de volledige tekst laten zien
if(isset($_GET['id']) and !empty($_GET['id']) and is_numeric($_GET['id'])){

// Resultaten ophalen
$result = mysql_query("SELECT * FROM ".$tabel." WHERE id=" . mysql_real_escape_string( $_GET['id'] ) . "");

// Checken of het tekst id wel bestaat
if (mysql_num_rows($result) >= 1) {

// De resultaten even in een $_ROW['']; stoppen
$row = mysql_fetch_assoc($result);

// Resultaten tonen
echo $row[''.$eerste.''];
echo '<br /><br />';
echo $row[''.$tweede.''];
echo $row[''.$derde.''];
echo $row[''.$vierde.''];

}
else { // Als het tekst id niet bestaat:
echo 'Dit id bestaat niet!';
}
}
// Als er een zoekterm in de url staat en niet leeg is...
else if(isset($_GET['zoekterm']) and !empty($_GET['zoekterm'])){
if($_GET['waar'] == $eerste) // En de waar is 'titel'..
{
$sqlquery = "SELECT * FROM ".$tabel." WHERE ".$eerste." LIKE '%" . mysql_real_escape_string( $_GET['zoekterm'] ) . "%'"; // De goede query uitvoeren

$results = mysql_query($sqlquery) or die(mysql_error());; // De goede resultaten ophalen
// Als er resultaten zijn:
if (mysql_num_rows($results) >= 1) {
while($row = mysql_fetch_assoc($results)) {

echo '<a href="?id='.$row['id'].'">'.$row[''.$eerste.''].'</a><br />'; // De titel als linkje met daarna de afgekorte tekst
$tekst = $row[''.$tweede.''];
echo afkorten($tekst,25); // Onze functie aan roepen. De 25 staat voor 25 tekens
echo "<br /><br />"; // En dan ook maar een paar entertjes
}
}
else { // Als er geen resultaten zijn:
echo "Er zijn geen resultaten";
}
}
else if($_GET['waar'] == $tweede) // Of de waar is 'tekst'...
{
$sqlquery = "SELECT * FROM ".$tabel." WHERE ".$tweede." LIKE '%" . mysql_real_escape_string( $_GET['zoekterm'] ) . "%'"; // Een andere query uitvoeren


$results = mysql_query($sqlquery) or die(mysql_error());; // De goede resultaten ophalen
// Als er resultaten zijn:
if (mysql_num_rows($results) >= 1) {
while($row = mysql_fetch_assoc($results)) {

echo '<a href="?id='.$row['id'].'">'.$row[''.$eerste.''].'</a><br />'; // De titel als linkje met daarna de afgekorte tekst
$tekst = $row[''.$tweede.''];
echo afkorten($tekst,25); // Onze functie aan roepen. De 25 staat voor 25 tekens
echo "<br /><br />"; // En dan ook maar een paar entertjes
}
}
else { // Als er geen resultaten zijn:
echo "Er zijn geen resultaten";
}
}
else if($_GET['waar'] == 'overal') // En als de waar 'overal' is
{
$sqlquery = "SELECT * FROM ".$tabel." WHERE ".$eerste." LIKE '%" . mysql_real_escape_string( $_GET['zoekterm'] ) . "%' OR ".$tweede."
LIKE '%" . mysql_real_escape_string( $_GET['zoekterm'] ) . "%'"; // Weer een andere query uitvoeren


$results = mysql_query($sqlquery) or die(mysql_error());; // De goede resultaten ophalen
// Als er resultaten zijn:
if (mysql_num_rows($results) >= 1) {
while($row = mysql_fetch_assoc($results)) {

echo '<a href="?id='.$row['id'].'">'.$row[''.$eerste.''].'</a><br />'; // De titel als linkje met daarna de afgekorte tekst
echo afkorten($row[''.$tweede.''],25); // Onze functie aan roepen. De 25 staat voor 25 tekens
echo "<br /><br />"; // En dan ook maar een paar entertjes
}
}
else { // Als er geen resultaten zijn:
echo "Er zijn geen resultaten";
}
} else {
echo 'Hier kan ik niet in zoeken!';
}

}
else { // Als er niks bruikbaars in de url staat:

// Ons zoekformuliertje laten zien
echo '<form action="'.$_SERVER['PHP_SELF'].'" method="GET">
<input type="text" name="zoekterm"><br />
<select name="waar">
<option>overal
<option>'.$eerste.'
<option>'.$tweede.'
</select><br />
<input type="submit" value="Zoek">
</form>';
}
?>
[code/]
En heb je er nu nog een vraag over, of werkt het zoals je wilt?
ja :)
is het trouwens niet toffer om zelf eens PHP te leren i.p.v. overal en nergens wat script vandaan te halen en riskeren dat je script niet goed werkt.

Je weet drommels goed dat ik je vanwege zo'n feit al eens eerder gewaarschuwd heb voor SQL injection... ;-)

PHP is leuk, maar weet waar je mee bezig bent.
hoi ben met de laatste search code bezig die hier op de site wordt gegeven ben pas 2 dagen bezig met php en heb er weinig verstand van ( vindt het wel intressant) mijn script blijft aangeven "kan hier niet zoeken" ( de echo bij het else statment op 108 )zie niet aan welke voorwaarde ik niet voldoe of welke waarde niet goed is kan iemand mij helpen
alvast bedankt gr jordy
Hoe roep je het script aan?
de code recht streek in me script geplaats of hoe bedoel je
Hoe roep je het aan? Je moet wel een ?waar= argument meegeven in de URL, welke gebruikersnaam, ipadres of overal bevat.

[size=xsmall]Toevoeging op 14/08/2013 14:07:56:[/size]

Gezien je al verder bent gegaan in dit topic sluit ik deze dan maar.

Reageren